fix 1in54_V2 partial refresh abnormal

This commit is contained in:
SSYYL 2021-08-11 15:21:10 +08:00
parent dc44d5c38d
commit c28eca7481
17 changed files with 128 additions and 223 deletions

View File

@ -79,30 +79,6 @@ unsigned char WF_PARTIAL_1IN54_0[159] =
0x02,0x17,0x41,0xB0,0x32,0x28,
};
// waveform partial refresh(quality)
// unsigned char WF_PARTIAL_1IN54_1[159] =
// {
// 0x0,0x00,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
// 0x80,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
// 0x40,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
// 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
// 0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
// 0xA,0x0,0x0,0x0,0x0,0x0,0x1,
// 0x1,0x0,0x0,0x0,0x0,0x0,0x0,
// 0x0,0x0,0x0,0x0,0x0,0x0,0x0,
// 0x0,0x0,0x0,0x0,0x0,0x0,0x0,
// 0x0,0x0,0x0,0x0,0x0,0x0,0x0,
// 0x0,0x0,0x0,0x0,0x0,0x0,0x0,
// 0x0,0x0,0x0,0x0,0x0,0x0,0x0,
// 0x0,0x0,0x0,0x0,0x0,0x0,0x0,
// 0x0,0x0,0x0,0x0,0x0,0x0,0x0,
// 0x0,0x0,0x0,0x0,0x0,0x0,0x0,
// 0x0,0x0,0x0,0x0,0x0,0x0,0x0,
// 0x0,0x0,0x0,0x0,0x0,0x0,0x0,
// 0x22,0x22,0x22,0x22,0x22,0x22,0x0,0x0,0x0,
// 0x22,0x17,0x41,0x0,0x32,0x20,
// };
Epd::~Epd()
{
};

View File

@ -78,30 +78,6 @@ unsigned char WF_PARTIAL_1IN54_0[159] =
0x02,0x17,0x41,0xB0,0x32,0x28,
};
// waveform partial refresh(quality)
unsigned char WF_PARTIAL_1IN54_1[159] =
{
0x0,0x00,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
0x80,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
0x40,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
0xA,0x0,0x0,0x0,0x0,0x0,0x1,
0x1,0x0,0x0,0x0,0x0,0x0,0x0,
0x0,0x0,0x0,0x0,0x0,0x0,0x0,
0x0,0x0,0x0,0x0,0x0,0x0,0x0,
0x0,0x0,0x0,0x0,0x0,0x0,0x0,
0x0,0x0,0x0,0x0,0x0,0x0,0x0,
0x0,0x0,0x0,0x0,0x0,0x0,0x0,
0x0,0x0,0x0,0x0,0x0,0x0,0x0,
0x0,0x0,0x0,0x0,0x0,0x0,0x0,
0x0,0x0,0x0,0x0,0x0,0x0,0x0,
0x0,0x0,0x0,0x0,0x0,0x0,0x0,
0x0,0x0,0x0,0x0,0x0,0x0,0x0,
0x22,0x22,0x22,0x22,0x22,0x22,0x0,0x0,0x0,
0x22,0x17,0x41,0x0,0x32,0x20,
};
/******************************************************************************
function : Software reset
parameter:
@ -109,11 +85,11 @@ parameter:
static void EPD_1IN54_V2_Reset(void)
{
DEV_Digital_Write(EPD_RST_PIN, 1);
DEV_Delay_ms(200);
DEV_Delay_ms(20);
DEV_Digital_Write(EPD_RST_PIN, 0);
DEV_Delay_ms(2);
DEV_Digital_Write(EPD_RST_PIN, 1);
DEV_Delay_ms(200);
DEV_Delay_ms(20);
}
/******************************************************************************
@ -276,7 +252,7 @@ void EPD_1IN54_V2_Init_Partial(void)
EPD_1IN54_V2_Reset();
EPD_1IN54_V2_ReadBusy();
EPD_1IN54_V2_SetLut(WF_PARTIAL_1IN54_1);
EPD_1IN54_V2_SetLut(WF_PARTIAL_1IN54_0);
EPD_1IN54_V2_SendCommand(0x37);
EPD_1IN54_V2_SendData(0x00);
EPD_1IN54_V2_SendData(0x00);
@ -382,7 +358,7 @@ void EPD_1IN54_V2_DisplayPart(UBYTE *Image)
UWORD Width, Height;
Width = (EPD_1IN54_V2_WIDTH % 8 == 0)? (EPD_1IN54_V2_WIDTH / 8 ): (EPD_1IN54_V2_WIDTH / 8 + 1);
Height = EPD_1IN54_V2_HEIGHT;
UDOUBLE Addr = 0;
EPD_1IN54_V2_SendCommand(0x24);
for (UWORD j = 0; j < Height; j++) {

View File

@ -32,7 +32,7 @@ try:
draw = ImageDraw.Draw(Himage)
draw.text((10, 0), 'hello world', font = font24, fill = 0)
draw.text((10, 20), '7.5inch e-Paper', font = font24, fill = 0)
draw.text((150, 0), u'微雪电子', font = font24, fill = 0)
draw.text((150, 0), u'微雪电子', font = font24, fill = 0)
draw.line((20, 50, 70, 100), fill = 0)
draw.line((70, 50, 20, 100), fill = 0)
draw.rectangle((20, 50, 70, 100), outline = 0)

View File

@ -90,29 +90,6 @@ class EPD:
0x22,0x22,0x22,0x22,0x22,0x22,0x0,0x0,0x0,
0x02,0x17,0x41,0xB0,0x32,0x28,
]
# waveform partial refresh(quality)
WF_PARTIAL_1IN54_1 = [
0x0,0x00,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
0x80,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
0x40,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
0xA,0x0,0x0,0x0,0x0,0x0,0x1,
0x1,0x0,0x0,0x0,0x0,0x0,0x0,
0x0,0x0,0x0,0x0,0x0,0x0,0x0,
0x0,0x0,0x0,0x0,0x0,0x0,0x0,
0x0,0x0,0x0,0x0,0x0,0x0,0x0,
0x0,0x0,0x0,0x0,0x0,0x0,0x0,
0x0,0x0,0x0,0x0,0x0,0x0,0x0,
0x0,0x0,0x0,0x0,0x0,0x0,0x0,
0x0,0x0,0x0,0x0,0x0,0x0,0x0,
0x0,0x0,0x0,0x0,0x0,0x0,0x0,
0x0,0x0,0x0,0x0,0x0,0x0,0x0,
0x0,0x0,0x0,0x0,0x0,0x0,0x0,
0x22,0x22,0x22,0x22,0x22,0x22,0x0,0x0,0x0,
0x22,0x17,0x41,0x0,0x32,0x20,
]
# Hardware reset
def reset(self):
@ -176,24 +153,24 @@ class EPD:
self.send_data(lut[158])
def SetWindows(self, Xstart, Ystart, Xend, Yend):
self.send_command(0x44) # SET_RAM_X_ADDRESS_START_END_POSITION
self.send_data((Xstart>>3) & 0xFF)
self.send_data((Xend>>3) & 0xFF)
self.send_command(0x44); # SET_RAM_X_ADDRESS_START_END_POSITION
self.send_data((Xstart>>3) & 0xFF);
self.send_data((Xend>>3) & 0xFF);
self.send_command(0x45) # SET_RAM_Y_ADDRESS_START_END_POSITION
self.send_data(Ystart & 0xFF)
self.send_data((Ystart >> 8) & 0xFF)
self.send_data(Yend & 0xFF)
self.send_data((Yend >> 8) & 0xFF)
self.send_command(0x45); # SET_RAM_Y_ADDRESS_START_END_POSITION
self.send_data(Ystart & 0xFF);
self.send_data((Ystart >> 8) & 0xFF);
self.send_data(Yend & 0xFF);
self.send_data((Yend >> 8) & 0xFF);
def SetCursor(self, Xstart, Ystart):
self.send_command(0x4E) # SET_RAM_X_ADDRESS_COUNTER
self.send_data(Xstart & 0xFF)
self.send_command(0x4E); # SET_RAM_X_ADDRESS_COUNTER
self.send_data(Xstart & 0xFF);
self.send_command(0x4F) # SET_RAM_Y_ADDRESS_COUNTER
self.send_data(Ystart & 0xFF)
self.send_data((Ystart >> 8) & 0xFF)
self.send_command(0x4F); # SET_RAM_Y_ADDRESS_COUNTER
self.send_data(Ystart & 0xFF);
self.send_data((Ystart >> 8) & 0xFF);
def init(self, isPartial):
if (epdconfig.module_init() != 0):
@ -315,7 +292,7 @@ class EPD:
for i in range(0, int(self.width / 8)):
self.send_data(image[i + j * int(self.width / 8)])
self.TurnOnDisplayPart()
self.TurnOnDisplay()
def displayPart(self, image):
if (image == None):

View File

@ -51,7 +51,7 @@ class EPD:
0x40,0x40,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
0x0,0x80,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
0x0A,0x0,0x0,0x0,0x0,0x0,0x2,
0x0A,0x0,0x0,0x0,0x0,0x0,0x1,
0x1,0x0,0x0,0x0,0x0,0x0,0x0,
0x1,0x0,0x0,0x0,0x0,0x0,0x0,
0x0,0x0,0x0,0x0,0x0,0x0,0x0,

View File

@ -176,24 +176,24 @@ class EPD:
# self.send_data(0x3f) #VDH=15V
# self.send_data(0x3f) #VDL=-15V
self.send_command(0x01) # power setting
self.send_data(0x17) # 1-0=11: internal power
self.send_data(self.Voltage_Frame_7IN5_V2[6]) # VGH&VGL
self.send_data(self.Voltage_Frame_7IN5_V2[1]) # VSH
self.send_data(self.Voltage_Frame_7IN5_V2[2]) # VSL
self.send_data(self.Voltage_Frame_7IN5_V2[3]) # VSHR
self.send_command(0x01); # power setting
self.send_data(0x17); # 1-0=11: internal power
self.send_data(self.Voltage_Frame_7IN5_V2[6]); # VGH&VGL
self.send_data(self.Voltage_Frame_7IN5_V2[1]); # VSH
self.send_data(self.Voltage_Frame_7IN5_V2[2]); # VSL
self.send_data(self.Voltage_Frame_7IN5_V2[3]); # VSHR
self.send_command(0x82) # VCOM DC Setting
self.send_data(self.Voltage_Frame_7IN5_V2[4]) # VCOM
self.send_command(0x82); # VCOM DC Setting
self.send_data(self.Voltage_Frame_7IN5_V2[4]); # VCOM
self.send_command(0x06) # Booster Setting
self.send_data(0x27)
self.send_data(0x27)
self.send_data(0x2F)
self.send_data(0x17)
self.send_command(0x06); # Booster Setting
self.send_data(0x27);
self.send_data(0x27);
self.send_data(0x2F);
self.send_data(0x17);
self.send_command(0x30) # OSC Setting
self.send_data(self.Voltage_Frame_7IN5_V2[0]) # 2-0=100: N=4 5-3=111: M=7 3C=50Hz 3A=100HZ
self.send_command(0x30); # OSC Setting
self.send_data(self.Voltage_Frame_7IN5_V2[0]); # 2-0=100: N=4 ; 5-3=111: M=7 ; 3C=50Hz 3A=100HZ
self.send_command(0x04) #POWER ON
epdconfig.delay_ms(100)
@ -218,11 +218,11 @@ class EPD:
self.send_command(0X60) #TCON SETTING
self.send_data(0x22)
self.send_command(0x65) # Resolution setting
self.send_data(0x00)
self.send_data(0x00) # 800*480
self.send_data(0x00)
self.send_data(0x00)
self.send_command(0x65); # Resolution setting
self.send_data(0x00);
self.send_data(0x00); # 800*480
self.send_data(0x00);
self.send_data(0x00);
self.SetLut(self.LUT_VCOM_7IN5_V2, self.LUT_WW_7IN5_V2, self.LUT_BW_7IN5_V2, self.LUT_WB_7IN5_V2, self.LUT_BB_7IN5_V2)
# EPD hardware init end

Binary file not shown.

After

Width:  |  Height:  |  Size: 59 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 59 KiB

File diff suppressed because one or more lines are too long

View File

@ -263,7 +263,7 @@
<Group>
<GroupName>Application/User</GroupName>
<tvExp>0</tvExp>
<tvExp>1</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<cbSel>0</cbSel>
<RteFlg>0</RteFlg>
@ -343,7 +343,7 @@
<Group>
<GroupName>Examples</GroupName>
<tvExp>1</tvExp>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<cbSel>0</cbSel>
<RteFlg>0</RteFlg>

View File

@ -21,13 +21,14 @@ Target DLL: STLink\ST-LINKIII-KEIL_SWO.dll V3.0.1.0
Dialog DLL: TCM.DLL V1.35.1.0
<h2>Project:</h2>
E:\github\E-Paper_code\STM32\STM32-F103ZET6\MDK-ARM\epd-demo.uvprojx
E:\project\E-Paper_code\STM32\STM32-F103ZET6\MDK-ARM\epd-demo.uvprojx
Project File Date: 07/19/2021
<h2>Output:</h2>
*** Using Compiler 'V5.06 update 6 (build 750)', folder: 'D:\Program Files\keil5\ARM\ARMCC\Bin'
Build target 'epd-demo'
compiling main.c...
compiling EPD_1in54_V2.c...
linking...
Program Size: Code=18544 RO-data=360 RW-data=20 ZI-data=4252
FromELF: creating hex file...

View File

@ -3,7 +3,7 @@
<title>Static Call Graph - [epd-demo\epd-demo.axf]</title></head>
<body><HR>
<H1>Static Call Graph for image epd-demo\epd-demo.axf</H1><HR>
<BR><P>#&#060CALLGRAPH&#062# ARM Linker, 5060750: Last Updated: Mon Jul 19 11:44:54 2021
<BR><P>#&#060CALLGRAPH&#062# ARM Linker, 5060750: Last Updated: Wed Aug 11 14:53:17 2021
<BR><P>
<H3>Maximum Stack Usage = 124 bytes + Unknown(Cycles, Untraceable Function Pointers)</H3><H3>
Call chain for Maximum Stack Depth:</H3>

View File

@ -1220,7 +1220,6 @@ Removing Unused input sections from the image.
Removing epd_1in54_v2.o(.rrx_text), (6 bytes).
Removing epd_1in54_v2.o(.text), (1024 bytes).
Removing epd_1in54_v2.o(.data), (318 bytes).
Removing epd_1in54_v2.o(.data), (159 bytes).
Removing epd_1in54b.o(.rev16_text), (4 bytes).
Removing epd_1in54b.o(.revsh_text), (4 bytes).
Removing epd_1in54b.o(.rrx_text), (6 bytes).
@ -1456,7 +1455,7 @@ Removing Unused input sections from the image.
Removing cdrcmple.o(.text), (48 bytes).
Removing depilogue.o(.text), (186 bytes).
461 unused section(s) (total 958922 bytes) removed from the image.
460 unused section(s) (total 958763 bytes) removed from the image.
==============================================================================
@ -2138,15 +2137,15 @@ Memory Map of the image
Exec Addr Load Addr Size Type Attr Idx E Section Name Object
0x08000000 0x08000000 0x00000130 Data RO 3 RESET startup_stm32f103xe.o
0x08000130 0x08000130 0x00000000 Code RO 2861 * .ARM.Collect$$$$00000000 mc_w.l(entry.o)
0x08000130 0x08000130 0x00000004 Code RO 3161 .ARM.Collect$$$$00000001 mc_w.l(entry2.o)
0x08000134 0x08000134 0x00000004 Code RO 3164 .ARM.Collect$$$$00000004 mc_w.l(entry5.o)
0x08000138 0x08000138 0x00000000 Code RO 3166 .ARM.Collect$$$$00000008 mc_w.l(entry7b.o)
0x08000138 0x08000138 0x00000000 Code RO 3168 .ARM.Collect$$$$0000000A mc_w.l(entry8b.o)
0x08000138 0x08000138 0x00000008 Code RO 3169 .ARM.Collect$$$$0000000B mc_w.l(entry9a.o)
0x08000140 0x08000140 0x00000000 Code RO 3171 .ARM.Collect$$$$0000000D mc_w.l(entry10a.o)
0x08000140 0x08000140 0x00000000 Code RO 3173 .ARM.Collect$$$$0000000F mc_w.l(entry11a.o)
0x08000140 0x08000140 0x00000004 Code RO 3162 .ARM.Collect$$$$00002712 mc_w.l(entry2.o)
0x08000130 0x08000130 0x00000000 Code RO 2860 * .ARM.Collect$$$$00000000 mc_w.l(entry.o)
0x08000130 0x08000130 0x00000004 Code RO 3160 .ARM.Collect$$$$00000001 mc_w.l(entry2.o)
0x08000134 0x08000134 0x00000004 Code RO 3163 .ARM.Collect$$$$00000004 mc_w.l(entry5.o)
0x08000138 0x08000138 0x00000000 Code RO 3165 .ARM.Collect$$$$00000008 mc_w.l(entry7b.o)
0x08000138 0x08000138 0x00000000 Code RO 3167 .ARM.Collect$$$$0000000A mc_w.l(entry8b.o)
0x08000138 0x08000138 0x00000008 Code RO 3168 .ARM.Collect$$$$0000000B mc_w.l(entry9a.o)
0x08000140 0x08000140 0x00000000 Code RO 3170 .ARM.Collect$$$$0000000D mc_w.l(entry10a.o)
0x08000140 0x08000140 0x00000000 Code RO 3172 .ARM.Collect$$$$0000000F mc_w.l(entry11a.o)
0x08000140 0x08000140 0x00000004 Code RO 3161 .ARM.Collect$$$$00002712 mc_w.l(entry2.o)
0x08000144 0x08000144 0x00000024 Code RO 4 .text startup_stm32f103xe.o
0x08000168 0x08000168 0x00000094 Code RO 13 .text main.o
0x080001fc 0x080001fc 0x00000060 Code RO 162 .text gpio.o
@ -2154,35 +2153,35 @@ Memory Map of the image
0x08000318 0x08000318 0x000000d8 Code RO 216 .text usart.o
0x080003f0 0x080003f0 0x00000030 Code RO 246 .text stm32f1xx_it.o
0x08000420 0x08000420 0x0000003c Code RO 273 .text stm32f1xx_hal_msp.o
0x0800045c 0x0800045c 0x000000c4 Code RO 2470 .text system_stm32f1xx.o
0x08000520 0x08000520 0x000015e8 Code RO 2526 .text stm32f1xx_hal_spi.o
0x08001b08 0x08001b08 0x00000188 Code RO 2550 .text stm32f1xx_hal.o
0x08001c90 0x08001c90 0x000008c8 Code RO 2580 .text stm32f1xx_hal_rcc.o
0x08002558 0x08002558 0x000003d4 Code RO 2628 .text stm32f1xx_hal_gpio.o
0x0800292c 0x0800292c 0x00000c48 Code RO 2652 .text stm32f1xx_hal_dma.o
0x08003574 0x08003574 0x00000224 Code RO 2676 .text stm32f1xx_hal_cortex.o
0x08003798 0x08003798 0x00000f9c Code RO 2840 .text stm32f1xx_hal_uart.o
0x08004734 0x08004734 0x00000024 Code RO 2868 .text mc_w.l(memseta.o)
0x08004758 0x08004758 0x0000002c Code RO 3176 .text mc_w.l(uidiv.o)
0x08004784 0x08004784 0x00000024 Code RO 3193 .text mc_w.l(init.o)
0x080047a8 0x080047a8 0x00000020 Code RO 2961 i.__0printf$3 mc_w.l(printf3.o)
0x080047c8 0x080047c8 0x0000000e Code RO 3203 i.__scatterload_copy mc_w.l(handlers.o)
0x080047d6 0x080047d6 0x00000002 Code RO 3204 i.__scatterload_null mc_w.l(handlers.o)
0x080047d8 0x080047d8 0x0000000e Code RO 3205 i.__scatterload_zeroinit mc_w.l(handlers.o)
0x0800045c 0x0800045c 0x000000c4 Code RO 2469 .text system_stm32f1xx.o
0x08000520 0x08000520 0x000015e8 Code RO 2525 .text stm32f1xx_hal_spi.o
0x08001b08 0x08001b08 0x00000188 Code RO 2549 .text stm32f1xx_hal.o
0x08001c90 0x08001c90 0x000008c8 Code RO 2579 .text stm32f1xx_hal_rcc.o
0x08002558 0x08002558 0x000003d4 Code RO 2627 .text stm32f1xx_hal_gpio.o
0x0800292c 0x0800292c 0x00000c48 Code RO 2651 .text stm32f1xx_hal_dma.o
0x08003574 0x08003574 0x00000224 Code RO 2675 .text stm32f1xx_hal_cortex.o
0x08003798 0x08003798 0x00000f9c Code RO 2839 .text stm32f1xx_hal_uart.o
0x08004734 0x08004734 0x00000024 Code RO 2867 .text mc_w.l(memseta.o)
0x08004758 0x08004758 0x0000002c Code RO 3175 .text mc_w.l(uidiv.o)
0x08004784 0x08004784 0x00000024 Code RO 3192 .text mc_w.l(init.o)
0x080047a8 0x080047a8 0x00000020 Code RO 2960 i.__0printf$3 mc_w.l(printf3.o)
0x080047c8 0x080047c8 0x0000000e Code RO 3202 i.__scatterload_copy mc_w.l(handlers.o)
0x080047d6 0x080047d6 0x00000002 Code RO 3203 i.__scatterload_null mc_w.l(handlers.o)
0x080047d8 0x080047d8 0x0000000e Code RO 3204 i.__scatterload_zeroinit mc_w.l(handlers.o)
0x080047e6 0x080047e6 0x00000002 PAD
0x080047e8 0x080047e8 0x000001b8 Code RO 2968 i._printf_core mc_w.l(printf3.o)
0x080049a0 0x080049a0 0x00000010 Data RO 2471 .constdata system_stm32f1xx.o
0x080049b0 0x080049b0 0x00000008 Data RO 2472 .constdata system_stm32f1xx.o
0x080049b8 0x080049b8 0x00000020 Data RO 3201 Region$$Table anon$$obj.o
0x080047e8 0x080047e8 0x000001b8 Code RO 2967 i._printf_core mc_w.l(printf3.o)
0x080049a0 0x080049a0 0x00000010 Data RO 2470 .constdata system_stm32f1xx.o
0x080049b0 0x080049b0 0x00000008 Data RO 2471 .constdata system_stm32f1xx.o
0x080049b8 0x080049b8 0x00000020 Data RO 3200 Region$$Table anon$$obj.o
Execution Region RW_IRAM1 (Exec base: 0x20000000, Load base: 0x080049d8, Size: 0x000010b0, Max: 0x00010000, ABSOLUTE)
Exec Addr Load Addr Size Type Attr Idx E Section Name Object
0x20000000 0x080049d8 0x00000004 Data RW 2473 .data system_stm32f1xx.o
0x20000004 0x080049dc 0x0000000c Data RW 2551 .data stm32f1xx_hal.o
0x20000010 0x080049e8 0x00000004 Data RW 3175 .data mc_w.l(stdout.o)
0x20000000 0x080049d8 0x00000004 Data RW 2472 .data system_stm32f1xx.o
0x20000004 0x080049dc 0x0000000c Data RW 2550 .data stm32f1xx_hal.o
0x20000010 0x080049e8 0x00000004 Data RW 3174 .data mc_w.l(stdout.o)
0x20000014 - 0x00000058 Zero RW 187 .bss spi.o
0x2000006c - 0x00000040 Zero RW 217 .bss usart.o
0x200000ac 0x080049ec 0x00000004 PAD
@ -2197,23 +2196,23 @@ Image component sizes
Code (inc. data) RO Data RW Data ZI Data Debug Object Name
96 10 0 0 0 803 gpio.o
148 20 0 0 0 461070 main.o
188 18 0 0 88 1429 spi.o
148 20 0 0 0 461082 main.o
188 18 0 0 88 1437 spi.o
36 8 304 0 4096 796 startup_stm32f103xe.o
392 38 0 12 0 7649 stm32f1xx_hal.o
548 12 0 0 0 30674 stm32f1xx_hal_cortex.o
548 12 0 0 0 30678 stm32f1xx_hal_cortex.o
3144 164 0 0 0 7109 stm32f1xx_hal_dma.o
980 30 0 0 0 4391 stm32f1xx_hal_gpio.o
60 8 0 0 0 826 stm32f1xx_hal_msp.o
60 8 0 0 0 830 stm32f1xx_hal_msp.o
2248 88 0 0 0 6559 stm32f1xx_hal_rcc.o
5608 106 0 0 0 19625 stm32f1xx_hal_spi.o
3996 46 0 0 0 17432 stm32f1xx_hal_uart.o
3996 46 0 0 0 17436 stm32f1xx_hal_uart.o
48 22 0 0 0 1246 stm32f1xx_it.o
196 28 24 4 0 1509 system_stm32f1xx.o
196 28 24 4 0 1517 system_stm32f1xx.o
216 18 0 0 64 1753 usart.o
----------------------------------------------------------------------
17904 616 360 16 4252 562871 Object Totals
17904 616 360 16 4252 562911 Object Totals
0 0 32 0 0 0 (incl. Generated)
0 0 0 0 4 0 (incl. Padding)
@ -2256,8 +2255,8 @@ Image component sizes
Code (inc. data) RO Data RW Data ZI Data Debug
18544 646 360 20 4252 561955 Grand Totals
18544 646 360 20 4252 561955 ELF Image Totals
18544 646 360 20 4252 561995 Grand Totals
18544 646 360 20 4252 561995 ELF Image Totals
18544 646 360 20 0 0 ROM Totals
==============================================================================

View File

@ -78,30 +78,6 @@ unsigned char WF_PARTIAL_1IN54_0[159] =
0x02,0x17,0x41,0xB0,0x32,0x28,
};
// waveform partial refresh(quality)
unsigned char WF_PARTIAL_1IN54_1[159] =
{
0x0,0x00,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
0x80,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
0x40,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
0xA,0x0,0x0,0x0,0x0,0x0,0x1,
0x1,0x0,0x0,0x0,0x0,0x0,0x0,
0x0,0x0,0x0,0x0,0x0,0x0,0x0,
0x0,0x0,0x0,0x0,0x0,0x0,0x0,
0x0,0x0,0x0,0x0,0x0,0x0,0x0,
0x0,0x0,0x0,0x0,0x0,0x0,0x0,
0x0,0x0,0x0,0x0,0x0,0x0,0x0,
0x0,0x0,0x0,0x0,0x0,0x0,0x0,
0x0,0x0,0x0,0x0,0x0,0x0,0x0,
0x0,0x0,0x0,0x0,0x0,0x0,0x0,
0x0,0x0,0x0,0x0,0x0,0x0,0x0,
0x0,0x0,0x0,0x0,0x0,0x0,0x0,
0x22,0x22,0x22,0x22,0x22,0x22,0x0,0x0,0x0,
0x22,0x17,0x41,0x0,0x32,0x20,
};
/******************************************************************************
function : Software reset
parameter:
@ -276,21 +252,21 @@ void EPD_1IN54_V2_Init_Partial(void)
EPD_1IN54_V2_Reset();
EPD_1IN54_V2_ReadBusy();
EPD_1IN54_V2_SetLut(WF_PARTIAL_1IN54_1);
EPD_1IN54_V2_SendCommand(0x37);
EPD_1IN54_V2_SendData(0x00);
EPD_1IN54_V2_SendData(0x00);
EPD_1IN54_V2_SendData(0x00);
EPD_1IN54_V2_SendData(0x00);
EPD_1IN54_V2_SendData(0x00);
EPD_1IN54_V2_SendData(0x40);
EPD_1IN54_V2_SendData(0x00);
EPD_1IN54_V2_SendData(0x00);
EPD_1IN54_V2_SendData(0x00);
EPD_1IN54_V2_SendData(0x00);
EPD_1IN54_V2_SendCommand(0x3C); //BorderWavefrom
EPD_1IN54_V2_SendData(0x80);
EPD_1IN54_V2_SetLut(WF_PARTIAL_1IN54_0);
EPD_1IN54_V2_SendCommand(0x37);
EPD_1IN54_V2_SendData(0x00);
EPD_1IN54_V2_SendData(0x00);
EPD_1IN54_V2_SendData(0x00);
EPD_1IN54_V2_SendData(0x00);
EPD_1IN54_V2_SendData(0x00);
EPD_1IN54_V2_SendData(0x40);
EPD_1IN54_V2_SendData(0x00);
EPD_1IN54_V2_SendData(0x00);
EPD_1IN54_V2_SendData(0x00);
EPD_1IN54_V2_SendData(0x00);
EPD_1IN54_V2_SendCommand(0x3C); //BorderWavefrom
EPD_1IN54_V2_SendData(0x80);
EPD_1IN54_V2_SendCommand(0x22);
EPD_1IN54_V2_SendData(0xc0);

View File

@ -24,4 +24,4 @@
2020-12-09添加新程序5.83inch V2 e-Paper例程。
2020-12-25添加新程序4.01inch (F) e-Paper例程。
2021-02-22添加新程序2.7inch B V2 e-Paper例程。
2021-07-19: 1.54V2、2.13V3、2.9V2、7.5V2程序均采用外部波形,并提升了刷新速度
2021-07-191.54V2、2.13V3、2.9V2、7.5V2程序均采用外部波形,并提升了刷新速度