Initial pico w port
This commit is contained in:
1 parent
50e59ce2a2
commit
ead5d48ce0
17 files changed
+184
-7818
No files matched your search
+20
-22
@@ -29,10 +29,7 @@
|
||||
#
|
||||
******************************************************************************/
|
||||
#include "EPD_4in2_V2.h"
|
||||
#include "DEV_Config.h"
|
||||
#include "Debug.h"
|
||||
#include "config.h"
|
||||
#include <string.h>
|
||||
|
||||
const unsigned char LUT_ALL[233]={
|
||||
0x01, 0x0A, 0x1B, 0x0F, 0x03, 0x01, 0x01,
|
||||
@@ -111,26 +108,17 @@ static void EPD_4IN2_V2_SendData(UBYTE Data)
|
||||
DEV_Digital_Write(EPD_CS_PIN, 1);
|
||||
}
|
||||
|
||||
static void EPD_4IN2_V2_SendDataBuffer(UBYTE *Data, UWORD Length)
|
||||
{
|
||||
DEV_Digital_Write(EPD_DC_PIN, 1);
|
||||
DEV_Digital_Write(EPD_CS_PIN, 0);
|
||||
DEV_SPI_Write_nByte(Data, Length);
|
||||
DEV_Digital_Write(EPD_CS_PIN, 1);
|
||||
}
|
||||
|
||||
/******************************************************************************
|
||||
function : Wait until the busy_pin goes LOW
|
||||
parameter:
|
||||
******************************************************************************/
|
||||
void EPD_4IN2_V2_ReadBusy(void)
|
||||
{
|
||||
printf("Waiting for e-Paper BUSY (GPIO%d=%d)...\r\n",
|
||||
EPD_BUSY_PIN, DEV_Digital_Read(EPD_BUSY_PIN));
|
||||
Debug("e-Paper busy\r\n");
|
||||
while(DEV_Digital_Read(EPD_BUSY_PIN) == 1) { //LOW: idle, HIGH: busy
|
||||
DEV_Delay_ms(10);
|
||||
}
|
||||
printf("e-Paper BUSY released.\r\n");
|
||||
Debug("e-Paper busy release\r\n");
|
||||
}
|
||||
|
||||
/******************************************************************************
|
||||
@@ -342,19 +330,21 @@ parameter:
|
||||
void EPD_4IN2_V2_Clear(void)
|
||||
{
|
||||
UWORD Width, Height;
|
||||
UBYTE white_row[EPD_4IN2_V2_WIDTH / 8];
|
||||
Width = (EPD_4IN2_V2_WIDTH % 8 == 0)? (EPD_4IN2_V2_WIDTH / 8 ): (EPD_4IN2_V2_WIDTH / 8 + 1);
|
||||
Height = EPD_4IN2_V2_HEIGHT;
|
||||
memset(white_row, 0xFF, sizeof(white_row));
|
||||
|
||||
EPD_4IN2_V2_SendCommand(0x24);
|
||||
for (UWORD j = 0; j < Height; j++) {
|
||||
EPD_4IN2_V2_SendDataBuffer(white_row, Width);
|
||||
for (UWORD i = 0; i < Width; i++) {
|
||||
EPD_4IN2_V2_SendData(0xFF);
|
||||
}
|
||||
}
|
||||
|
||||
EPD_4IN2_V2_SendCommand(0x26);
|
||||
for (UWORD j = 0; j < Height; j++) {
|
||||
EPD_4IN2_V2_SendDataBuffer(white_row, Width);
|
||||
for (UWORD i = 0; i < Width; i++) {
|
||||
EPD_4IN2_V2_SendData(0xFF);
|
||||
}
|
||||
}
|
||||
EPD_4IN2_V2_TurnOnDisplay();
|
||||
}
|
||||
@@ -371,12 +361,16 @@ void EPD_4IN2_V2_Display(UBYTE *Image)
|
||||
|
||||
EPD_4IN2_V2_SendCommand(0x24);
|
||||
for (UWORD j = 0; j < Height; j++) {
|
||||
EPD_4IN2_V2_SendDataBuffer(&Image[j * Width], Width);
|
||||
for (UWORD i = 0; i < Width; i++) {
|
||||
EPD_4IN2_V2_SendData(Image[i + j * Width]);
|
||||
}
|
||||
}
|
||||
|
||||
EPD_4IN2_V2_SendCommand(0x26);
|
||||
for (UWORD j = 0; j < Height; j++) {
|
||||
EPD_4IN2_V2_SendDataBuffer(&Image[j * Width], Width);
|
||||
for (UWORD i = 0; i < Width; i++) {
|
||||
EPD_4IN2_V2_SendData(Image[i + j * Width]);
|
||||
}
|
||||
}
|
||||
EPD_4IN2_V2_TurnOnDisplay();
|
||||
}
|
||||
@@ -393,12 +387,16 @@ void EPD_4IN2_V2_Display_Fast(UBYTE *Image)
|
||||
|
||||
EPD_4IN2_V2_SendCommand(0x24);
|
||||
for (UWORD j = 0; j < Height; j++) {
|
||||
EPD_4IN2_V2_SendDataBuffer(&Image[j * Width], Width);
|
||||
for (UWORD i = 0; i < Width; i++) {
|
||||
EPD_4IN2_V2_SendData(Image[i + j * Width]);
|
||||
}
|
||||
}
|
||||
|
||||
EPD_4IN2_V2_SendCommand(0x26);
|
||||
for (UWORD j = 0; j < Height; j++) {
|
||||
EPD_4IN2_V2_SendDataBuffer(&Image[j * Width], Width);
|
||||
for (UWORD i = 0; i < Width; i++) {
|
||||
EPD_4IN2_V2_SendData(Image[i + j * Width]);
|
||||
}
|
||||
}
|
||||
EPD_4IN2_V2_TurnOnDisplay_Fast();
|
||||
}
|
||||
|
||||
Reference in new issue
Block a user