Jelajahi Sumber

fix 1in54_V2 partial refresh abnormal

SSYYL 4 tahun lalu
induk
melakukan
c28eca7481

+ 0 - 24
Arduino/epd1in54_V2/epd1in54_V2.cpp

@@ -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()
 {
 };

+ 4 - 28
RaspberryPi_JetsonNano/c/lib/e-Paper/EPD_1in54_V2.c

@@ -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++) {

+ 1 - 1
RaspberryPi_JetsonNano/python/examples/epd_7in5_V2_test.py

@@ -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)

+ 14 - 37
RaspberryPi_JetsonNano/python/lib/waveshare_epd/epd1in54_V2.py

@@ -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):

+ 1 - 1
RaspberryPi_JetsonNano/python/lib/waveshare_epd/epd2in9_V2.py

@@ -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,

+ 21 - 21
RaspberryPi_JetsonNano/python/lib/waveshare_epd/epd7in5_V2.py

@@ -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(0x06)  # Booster Setting
-        self.send_data(0x27)
-        self.send_data(0x27)
-        self.send_data(0x2F)
-        self.send_data(0x17)
+        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(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

TEMPAT SAMPAH
RaspberryPi_JetsonNano/python/pic/01.bmp


TEMPAT SAMPAH
RaspberryPi_JetsonNano/python/pic/4.2-B.bmp


TEMPAT SAMPAH
RaspberryPi_JetsonNano/python/pic/4.2-R.bmp


TEMPAT SAMPAH
RaspberryPi_JetsonNano/python/pic/42.bmp


File diff ditekan karena terlalu besar
+ 21 - 21
STM32/STM32-F103ZET6/MDK-ARM/epd-demo.uvguix.qiumingsong


+ 2 - 2
STM32/STM32-F103ZET6/MDK-ARM/epd-demo.uvoptx

@@ -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>

+ 2 - 1
STM32/STM32-F103ZET6/MDK-ARM/epd-demo/epd-demo.build_log.htm

@@ -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...

+ 1 - 1
STM32/STM32-F103ZET6/MDK-ARM/epd-demo/epd-demo.htm

@@ -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>

+ 41 - 42
STM32/STM32-F103ZET6/MDK-ARM/epd-demo/epd-demo.map

@@ -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
 
 ==============================================================================

+ 15 - 39
STM32/STM32-F103ZET6/User/e-Paper/EPD_1in54_V2.c

@@ -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); 

+ 1 - 1
Version_CN.txt

@@ -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程序均采用外部波形,并提升了刷新速度

Beberapa file tidak ditampilkan karena terlalu banyak file yang berubah dalam diff ini