mirror of
https://github.com/IcedRooibos/py32f0-template.git
synced 2025-10-29 08:52:04 -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);
|
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
|
function : Wait until the busy_pin goes LOW
|
||||||
parameter:
|
parameter:
|
||||||
@ -235,13 +257,9 @@ void EPD_1IN54_Init(UBYTE Mode)
|
|||||||
//set the look-up table register
|
//set the look-up table register
|
||||||
EPD_1IN54_SendCommand(0x32);
|
EPD_1IN54_SendCommand(0x32);
|
||||||
if(Mode == EPD_1IN54_FULL){
|
if(Mode == EPD_1IN54_FULL){
|
||||||
for (UWORD i = 0; i < 30; i++) {
|
EPD_1IN54_SendDataArray(EPD_1IN54_lut_full_update, 30);
|
||||||
EPD_1IN54_SendData(EPD_1IN54_lut_full_update[i]);
|
|
||||||
}
|
|
||||||
}else if(Mode == EPD_1IN54_PART){
|
}else if(Mode == EPD_1IN54_PART){
|
||||||
for (UWORD i = 0; i < 30; i++) {
|
EPD_1IN54_SendDataArray(EPD_1IN54_lut_partial_update, 30);
|
||||||
EPD_1IN54_SendData(EPD_1IN54_lut_partial_update[i]);
|
|
||||||
}
|
|
||||||
}else{
|
}else{
|
||||||
EPD_Printf("error, the Mode is EPD_1IN54_FULL or EPD_1IN54_PART");
|
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++) {
|
for (UWORD j = 0; j < Height; j++) {
|
||||||
EPD_1IN54_SetCursor(0, j);
|
EPD_1IN54_SetCursor(0, j);
|
||||||
EPD_1IN54_SendCommand(0x24);
|
EPD_1IN54_SendCommand(0x24);
|
||||||
for (UWORD i = 0; i < Width; i++) {
|
EPD_1IN54_SendDataBurst(0xFF, Width);
|
||||||
EPD_1IN54_SendData(0XFF);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
EPD_1IN54_TurnOnDisplay();
|
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);
|
Width = (EPD_1IN54_WIDTH % 8 == 0)? (EPD_1IN54_WIDTH / 8 ): (EPD_1IN54_WIDTH / 8 + 1);
|
||||||
Height = EPD_1IN54_HEIGHT;
|
Height = EPD_1IN54_HEIGHT;
|
||||||
|
|
||||||
UDOUBLE Addr = 0;
|
|
||||||
// UDOUBLE Offset = ImageName;
|
// UDOUBLE Offset = ImageName;
|
||||||
EPD_1IN54_SetWindow(0, 0, EPD_1IN54_WIDTH, EPD_1IN54_HEIGHT);
|
EPD_1IN54_SetWindow(0, 0, EPD_1IN54_WIDTH, EPD_1IN54_HEIGHT);
|
||||||
for (UWORD j = 0; j < Height; j++) {
|
for (UWORD j = 0; j < Height; j++) {
|
||||||
EPD_1IN54_SetCursor(0, j);
|
EPD_1IN54_SetCursor(0, j);
|
||||||
EPD_1IN54_SendCommand(0x24);
|
EPD_1IN54_SendCommand(0x24);
|
||||||
for (UWORD i = 0; i < Width; i++) {
|
EPD_1IN54_SendDataArray(Image + (j * Width), Width);
|
||||||
Addr = i + j * Width;
|
// for (UWORD i = 0; i < Width; i++) {
|
||||||
EPD_1IN54_SendData(Image[Addr]);
|
// Addr = i + j * Width;
|
||||||
}
|
// EPD_1IN54_SendData(Image[Addr]);
|
||||||
|
// }
|
||||||
}
|
}
|
||||||
EPD_1IN54_TurnOnDisplay();
|
EPD_1IN54_TurnOnDisplay();
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user