mirror of
https://github.com/IcedRooibos/py32f0-template.git
synced 2025-10-28 08:22:06 -07:00
refactor: epd lib enhancements
This commit is contained in:
parent
5070ff4633
commit
aa804d5ac6
@ -143,6 +143,28 @@ static void EPD_1IN54_SendData(UBYTE Data)
|
||||
EPD_Digital_Write(EPD_CS_PIN, 1);
|
||||
}
|
||||
|
||||
static void EPD_1IN54_SendDataArray(const UBYTE *Data, UWORD len)
|
||||
{
|
||||
EPD_Digital_Write(EPD_DC_PIN, 1);
|
||||
EPD_Digital_Write(EPD_CS_PIN, 0);
|
||||
while (len--)
|
||||
{
|
||||
EPD_SPI_WriteByte(*Data++);
|
||||
}
|
||||
EPD_Digital_Write(EPD_CS_PIN, 1);
|
||||
}
|
||||
|
||||
static void EPD_1IN54_SendDataBurst(const UBYTE Data, UWORD len)
|
||||
{
|
||||
EPD_Digital_Write(EPD_DC_PIN, 1);
|
||||
EPD_Digital_Write(EPD_CS_PIN, 0);
|
||||
while (len--)
|
||||
{
|
||||
EPD_SPI_WriteByte(Data);
|
||||
}
|
||||
EPD_Digital_Write(EPD_CS_PIN, 1);
|
||||
}
|
||||
|
||||
/******************************************************************************
|
||||
function : Wait until the busy_pin goes LOW
|
||||
parameter:
|
||||
@ -235,13 +257,9 @@ void EPD_1IN54_Init(UBYTE Mode)
|
||||
//set the look-up table register
|
||||
EPD_1IN54_SendCommand(0x32);
|
||||
if(Mode == EPD_1IN54_FULL){
|
||||
for (UWORD i = 0; i < 30; i++) {
|
||||
EPD_1IN54_SendData(EPD_1IN54_lut_full_update[i]);
|
||||
}
|
||||
EPD_1IN54_SendDataArray(EPD_1IN54_lut_full_update, 30);
|
||||
}else if(Mode == EPD_1IN54_PART){
|
||||
for (UWORD i = 0; i < 30; i++) {
|
||||
EPD_1IN54_SendData(EPD_1IN54_lut_partial_update[i]);
|
||||
}
|
||||
EPD_1IN54_SendDataArray(EPD_1IN54_lut_partial_update, 30);
|
||||
}else{
|
||||
EPD_Printf("error, the Mode is EPD_1IN54_FULL or EPD_1IN54_PART");
|
||||
}
|
||||
@ -261,9 +279,7 @@ void EPD_1IN54_Clear(void)
|
||||
for (UWORD j = 0; j < Height; j++) {
|
||||
EPD_1IN54_SetCursor(0, j);
|
||||
EPD_1IN54_SendCommand(0x24);
|
||||
for (UWORD i = 0; i < Width; i++) {
|
||||
EPD_1IN54_SendData(0XFF);
|
||||
}
|
||||
EPD_1IN54_SendDataBurst(0xFF, Width);
|
||||
}
|
||||
EPD_1IN54_TurnOnDisplay();
|
||||
}
|
||||
@ -278,16 +294,16 @@ void EPD_1IN54_Display(UBYTE *Image)
|
||||
Width = (EPD_1IN54_WIDTH % 8 == 0)? (EPD_1IN54_WIDTH / 8 ): (EPD_1IN54_WIDTH / 8 + 1);
|
||||
Height = EPD_1IN54_HEIGHT;
|
||||
|
||||
UDOUBLE Addr = 0;
|
||||
// UDOUBLE Offset = ImageName;
|
||||
EPD_1IN54_SetWindow(0, 0, EPD_1IN54_WIDTH, EPD_1IN54_HEIGHT);
|
||||
for (UWORD j = 0; j < Height; j++) {
|
||||
EPD_1IN54_SetCursor(0, j);
|
||||
EPD_1IN54_SendCommand(0x24);
|
||||
for (UWORD i = 0; i < Width; i++) {
|
||||
Addr = i + j * Width;
|
||||
EPD_1IN54_SendData(Image[Addr]);
|
||||
}
|
||||
EPD_1IN54_SendDataArray(Image + (j * Width), Width);
|
||||
// for (UWORD i = 0; i < Width; i++) {
|
||||
// Addr = i + j * Width;
|
||||
// EPD_1IN54_SendData(Image[Addr]);
|
||||
// }
|
||||
}
|
||||
EPD_1IN54_TurnOnDisplay();
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user