Add 4.37inch e-Paper (G) STM32 program and fix some bugs.
This commit is contained in:
parent
31c2e4176e
commit
77accf11dd
32 changed files with 4453 additions and 1186 deletions
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large
Load diff
|
|
@ -16,7 +16,7 @@
|
|||
<TargetCommonOption>
|
||||
<Device>STM32F103ZE</Device>
|
||||
<Vendor>STMicroelectronics</Vendor>
|
||||
<PackID>Keil.STM32F1xx_DFP.2.1.0</PackID>
|
||||
<PackID>Keil.STM32F1xx_DFP.2.3.0</PackID>
|
||||
<PackURL>http://www.keil.com/pack/</PackURL>
|
||||
<Cpu>IRAM(0x20000000-0x2000FFFF) IROM(0x8000000-0x807FFFF) CLOCK(8000000) CPUTYPE("Cortex-M3")</Cpu>
|
||||
<FlashUtilSpec></FlashUtilSpec>
|
||||
|
|
@ -184,7 +184,6 @@
|
|||
<hadXRAM>0</hadXRAM>
|
||||
<uocXRam>0</uocXRam>
|
||||
<RvdsVP>0</RvdsVP>
|
||||
<RvdsMve>0</RvdsMve>
|
||||
<hadIRAM2>0</hadIRAM2>
|
||||
<hadIROM2>0</hadIROM2>
|
||||
<StupSel>8</StupSel>
|
||||
|
|
@ -552,6 +551,11 @@
|
|||
<FileType>1</FileType>
|
||||
<FilePath>..\User\Examples\EPD_2in66b_test.c</FilePath>
|
||||
</File>
|
||||
<File>
|
||||
<FileName>EPD_3in52_test.c</FileName>
|
||||
<FileType>1</FileType>
|
||||
<FilePath>..\User\Examples\EPD_3in52_test.c</FilePath>
|
||||
</File>
|
||||
<File>
|
||||
<FileName>EPD_3in7_test.c</FileName>
|
||||
<FileType>1</FileType>
|
||||
|
|
@ -643,9 +647,9 @@
|
|||
<FilePath>..\User\Examples\EPD_3in0g_test.c</FilePath>
|
||||
</File>
|
||||
<File>
|
||||
<FileName>EPD_3in52_test.c</FileName>
|
||||
<FileName>EPD_4in37g_test.c</FileName>
|
||||
<FileType>1</FileType>
|
||||
<FilePath>..\User\Examples\EPD_3in52_test.c</FilePath>
|
||||
<FilePath>..\User\Examples\EPD_4in37g_test.c</FilePath>
|
||||
</File>
|
||||
<File>
|
||||
<FileName>EPD_7in3g_test.c</FileName>
|
||||
|
|
@ -772,6 +776,11 @@
|
|||
<FileType>1</FileType>
|
||||
<FilePath>..\User\e-Paper\EPD_2in66b.c</FilePath>
|
||||
</File>
|
||||
<File>
|
||||
<FileName>EPD_3in52.c</FileName>
|
||||
<FileType>1</FileType>
|
||||
<FilePath>..\User\e-Paper\EPD_3in52.c</FilePath>
|
||||
</File>
|
||||
<File>
|
||||
<FileName>EPD_3in7.c</FileName>
|
||||
<FileType>1</FileType>
|
||||
|
|
@ -863,9 +872,9 @@
|
|||
<FilePath>..\User\e-Paper\EPD_3in0g.c</FilePath>
|
||||
</File>
|
||||
<File>
|
||||
<FileName>EPD_3in52.c</FileName>
|
||||
<FileName>EPD_4in37g.c</FileName>
|
||||
<FileType>1</FileType>
|
||||
<FilePath>..\User\e-Paper\EPD_3in52.c</FilePath>
|
||||
<FilePath>..\User\e-Paper\EPD_4in37g.c</FilePath>
|
||||
</File>
|
||||
<File>
|
||||
<FileName>EPD_7in3g.c</FileName>
|
||||
|
|
|
|||
|
|
@ -3,189 +3,58 @@
|
|||
<pre>
|
||||
<h1>µVision Build Log</h1>
|
||||
<h2>Tool Versions:</h2>
|
||||
IDE-Version: ¦ÌVision V5.26.2.0
|
||||
IDE-Version: ¦ÌVision V5.25.2.0
|
||||
Copyright (C) 2018 ARM Ltd and ARM Germany GmbH. All rights reserved.
|
||||
License Information: , , LIC=RC93N-YLJYL-JJH6S-LI3Z1-D1AV2-99PL8
|
||||
License Information: ass ass, ass, LIC=JL2UH-W872P-CJR6Z-JYZTW-ESB48-R6YF4
|
||||
|
||||
Tool Versions:
|
||||
Toolchain: MDK-ARM Plus Version: 5.26.2.0
|
||||
Toolchain Path: D:\KEIL\azwz\ARM\ARMCC\Bin
|
||||
Toolchain: MDK-ARM Plus Version: 5.25.2.0
|
||||
Toolchain Path: D:\Program Files\keil5\ARM\ARMCC\Bin
|
||||
C Compiler: Armcc.exe V5.06 update 6 (build 750)
|
||||
Assembler: Armasm.exe V5.06 update 6 (build 750)
|
||||
Linker/Locator: ArmLink.exe V5.06 update 6 (build 750)
|
||||
Library Manager: ArmAr.exe V5.06 update 6 (build 750)
|
||||
Hex Converter: FromElf.exe V5.06 update 6 (build 750)
|
||||
CPU DLL: SARMCM3.DLL V5.26.2.0
|
||||
Dialog DLL: DCM.DLL V1.17.2.0
|
||||
Target DLL: STLink\ST-LINKIII-KEIL_SWO.dll V3.0.5.0
|
||||
Dialog DLL: TCM.DLL V1.36.1.0
|
||||
CPU DLL: SARMCM3.DLL V5.25.2.0
|
||||
Dialog DLL: DCM.DLL V1.17.1.0
|
||||
Target DLL: STLink\ST-LINKIII-KEIL_SWO.dll V3.0.1.0
|
||||
Dialog DLL: TCM.DLL V1.35.1.0
|
||||
|
||||
<h2>Project:</h2>
|
||||
E:\ÏîÄ¿\e-Paper\Code\E-Paper_code\STM32\STM32-F103ZET6\MDK-ARM\epd-demo.uvprojx
|
||||
Project File Date: 07/22/2022
|
||||
E:\github\E-Paper_code\STM32\STM32-F103ZET6\MDK-ARM\epd-demo.uvprojx
|
||||
Project File Date: 08/16/2022
|
||||
|
||||
<h2>Output:</h2>
|
||||
*** Using Compiler 'V5.06 update 6 (build 750)', folder: 'D:\KEIL\azwz\ARM\ARMCC\Bin'
|
||||
*** Using Compiler 'V5.06 update 6 (build 750)', folder: 'D:\Program Files\keil5\ARM\ARMCC\Bin'
|
||||
Build target 'epd-demo'
|
||||
assembling startup_stm32f103xe.s...
|
||||
compiling usart.c...
|
||||
compiling gpio.c...
|
||||
compiling spi.c...
|
||||
compiling stm32f1xx_it.c...
|
||||
compiling main.c...
|
||||
compiling ImageData2.c...
|
||||
compiling ImageData.c...
|
||||
compiling stm32f1xx_hal_msp.c...
|
||||
compiling EPD_1in54b_test.c...
|
||||
compiling EPD_1in54_test.c...
|
||||
compiling EPD_1in02_test.c...
|
||||
compiling EPD_1in54_V2_test.c...
|
||||
compiling EPD_2in7b_V2_test.c...
|
||||
compiling EPD_2in7b_test.c...
|
||||
compiling EPD_1in54b_V2_test.c...
|
||||
compiling EPD_1in54c_test.c...
|
||||
compiling EPD_2in7_test.c...
|
||||
compiling EPD_2in9bc_test.c...
|
||||
compiling EPD_2in9d_test.c...
|
||||
compiling EPD_2in9b_V3_test.c...
|
||||
compiling EPD_2in9_test.c...
|
||||
compiling EPD_2in9_V2_test.c...
|
||||
compiling EPD_2in13b_V4_test.c...
|
||||
compiling EPD_2in13_test.c...
|
||||
compiling EPD_2in13b_V3_test.c...
|
||||
compiling EPD_2in13_V3_test.c...
|
||||
compiling EPD_2in13_V2_test.c...
|
||||
compiling EPD_2in13bc_test.c...
|
||||
compiling EPD_3in7_test.c...
|
||||
compiling EPD_2in13d_test.c...
|
||||
compiling EPD_2in66b_test.c...
|
||||
compiling EPD_2in66_test.c...
|
||||
compiling EPD_4in2_test.c...
|
||||
compiling EPD_4in01f_test.c...
|
||||
compiling EPD_4in2b_V2_test.c...
|
||||
compiling EPD_4in2bc_test.c...
|
||||
compiling EPD_5in65f_test.c...
|
||||
compiling EPD_5in83_V2_test.c...
|
||||
compiling EPD_7in5_test.c...
|
||||
compiling EPD_5in83b_V2_test.c...
|
||||
compiling EPD_5in83bc_test.c...
|
||||
compiling EPD_5in83_test.c...
|
||||
compiling EPD_7in5b_V2_test.c...
|
||||
compiling EPD_7in5b_HD_test.c...
|
||||
compiling EPD_7in5bc_test.c...
|
||||
compiling EPD_7in5_V2_test.c...
|
||||
compiling EPD_7in5_HD_test.c...
|
||||
compiling EPD_3in52_test.c...
|
||||
compiling EPD_7in3g_test.c...
|
||||
compiling EPD_3in0g_test.c...
|
||||
compiling EPD_1in02d.c...
|
||||
compiling EPD_1in64g_test.c...
|
||||
compiling EPD_1in54c.c...
|
||||
compiling EPD_1in54_V2.c...
|
||||
compiling EPD_1in54b.c...
|
||||
compiling EPD_1in54b_V2.c...
|
||||
compiling EPD_1in54.c...
|
||||
compiling EPD_2in7b_V2.c...
|
||||
compiling EPD_2in9.c...
|
||||
compiling EPD_2in7.c...
|
||||
compiling EPD_2in7b.c...
|
||||
compiling EPD_2in9_V2.c...
|
||||
compiling EPD_2in9b_V3.c...
|
||||
compiling EPD_2in9bc.c...
|
||||
compiling EPD_2in9d.c...
|
||||
compiling EPD_2in13.c...
|
||||
compiling EPD_2in13_V2.c...
|
||||
compiling EPD_2in13b_V3.c...
|
||||
compiling EPD_2in13_V3.c...
|
||||
compiling EPD_2in13d.c...
|
||||
compiling EPD_2in13b_V4.c...
|
||||
compiling EPD_2in13bc.c...
|
||||
compiling EPD_3in7.c...
|
||||
compiling EPD_2in66b.c...
|
||||
compiling EPD_4in01f.c...
|
||||
compiling EPD_2in66.c...
|
||||
compiling EPD_4in2.c...
|
||||
..\User\e-Paper\EPD_4in2.c(612): warning: #550-D: variable "Height" was set but never used
|
||||
UWORD Width, Height;
|
||||
..\User\e-Paper\EPD_4in2.c: 1 warning, 0 errors
|
||||
compiling EPD_5in83_V2.c...
|
||||
compiling EPD_5in65f.c...
|
||||
compiling EPD_4in2b_V2.c...
|
||||
compiling EPD_4in2bc.c...
|
||||
compiling EPD_5in83.c...
|
||||
compiling EPD_7in5_V2.c...
|
||||
compiling EPD_7in5_HD.c...
|
||||
compiling EPD_7in5.c...
|
||||
compiling EPD_5in83bc.c...
|
||||
compiling EPD_5in83b_V2.c...
|
||||
compiling EPD_3in0g.c...
|
||||
..\User\e-Paper\EPD_3in0g.c(86): warning: #177-D: function "EPD_3IN0G_ReadBusyL" was declared but never referenced
|
||||
static void EPD_3IN0G_ReadBusyL(void)
|
||||
..\User\e-Paper\EPD_3in0g.c: 1 warning, 0 errors
|
||||
compiling EPD_7in5bc.c...
|
||||
compiling EPD_7in5b_HD.c...
|
||||
compiling EPD_1in64g.c...
|
||||
..\User\e-Paper\EPD_1in64g.c(90): warning: #177-D: function "EPD_1IN64G_ReadBusyL" was declared but never referenced
|
||||
static void EPD_1IN64G_ReadBusyL(void)
|
||||
..\User\e-Paper\EPD_1in64g.c: 1 warning, 0 errors
|
||||
compiling EPD_7in5b_V2.c...
|
||||
compiling font8.c...
|
||||
compiling font12.c...
|
||||
compiling font12CN.c...
|
||||
compiling font16.c...
|
||||
compiling font20.c...
|
||||
compiling font24.c...
|
||||
compiling font24CN.c...
|
||||
compiling DEV_Config.c...
|
||||
compiling EPD_3in52.c...
|
||||
compiling EPD_7in3g.c...
|
||||
..\User\e-Paper\EPD_7in3g.c(86): warning: #177-D: function "EPD_7IN3G_ReadBusyL" was declared but never referenced
|
||||
static void EPD_7IN3G_ReadBusyL(void)
|
||||
..\User\e-Paper\EPD_7in3g.c: 1 warning, 0 errors
|
||||
compiling GUI_Paint.c...
|
||||
compiling system_stm32f1xx.c...
|
||||
compiling stm32f1xx_hal_rcc_ex.c...
|
||||
compiling stm32f1xx_hal_spi.c...
|
||||
compiling stm32f1xx_hal.c...
|
||||
compiling stm32f1xx_hal_rcc.c...
|
||||
compiling stm32f1xx_hal_gpio_ex.c...
|
||||
compiling stm32f1xx_hal_pwr.c...
|
||||
compiling stm32f1xx_hal_flash.c...
|
||||
compiling stm32f1xx_hal_gpio.c...
|
||||
compiling stm32f1xx_hal_dma.c...
|
||||
compiling stm32f1xx_hal_cortex.c...
|
||||
compiling stm32f1xx_hal_tim_ex.c...
|
||||
compiling stm32f1xx_hal_exti.c...
|
||||
compiling stm32f1xx_hal_tim.c...
|
||||
compiling stm32f1xx_hal_uart.c...
|
||||
compiling stm32f1xx_hal_flash_ex.c...
|
||||
compiling EPD_4in37g_test.c...
|
||||
linking...
|
||||
Program Size: Code=24300 RO-data=9260 RW-data=56 ZI-data=41136
|
||||
Program Size: Code=24416 RO-data=57124 RW-data=56 ZI-data=53424
|
||||
FromELF: creating hex file...
|
||||
"epd-demo\epd-demo.axf" - 0 Error(s), 4 Warning(s).
|
||||
"epd-demo\epd-demo.axf" - 0 Error(s), 0 Warning(s).
|
||||
|
||||
<h2>Software Packages used:</h2>
|
||||
|
||||
Package Vendor: ARM
|
||||
http://www.keil.com/pack/ARM.CMSIS.5.9.0.pack
|
||||
ARM.CMSIS.5.9.0
|
||||
CMSIS (Common Microcontroller Software Interface Standard)
|
||||
* Component: CORE Version: 5.6.0
|
||||
http://www.keil.com/pack/ARM.CMSIS.5.7.0.pack
|
||||
ARM.CMSIS.5.7.0
|
||||
CMSIS (Cortex Microcontroller Software Interface Standard)
|
||||
* Component: CORE Version: 5.4.0
|
||||
|
||||
Package Vendor: Keil
|
||||
http://www.keil.com/pack/Keil.STM32F1xx_DFP.2.1.0.pack
|
||||
Keil.STM32F1xx_DFP.2.1.0
|
||||
http://www.keil.com/pack/Keil.STM32F1xx_DFP.2.3.0.pack
|
||||
Keil.STM32F1xx_DFP.2.3.0
|
||||
STMicroelectronics STM32F1 Series Device Support, Drivers and Examples
|
||||
|
||||
<h2>Collection of Component include folders:</h2>
|
||||
.\RTE\_epd-demo
|
||||
D:\KEIL\azwz\ARM\PACK\ARM\CMSIS\5.9.0\CMSIS\Core\Include
|
||||
D:\KEIL\azwz\ARM\PACK\Keil\STM32F1xx_DFP\2.1.0\Device\Include
|
||||
D:\Program Files\keil5\ARM\PACK\ARM\CMSIS\5.7.0\CMSIS\Core\Include
|
||||
D:\Program Files\keil5\ARM\PACK\Keil\STM32F1xx_DFP\2.3.0\Device\Include
|
||||
|
||||
<h2>Collection of Component Files used:</h2>
|
||||
|
||||
* Component: ARM::CMSIS:CORE:5.6.0
|
||||
Build Time Elapsed: 00:00:47
|
||||
* Component: ARM::CMSIS:CORE:5.4.0
|
||||
Build Time Elapsed: 00:00:02
|
||||
</pre>
|
||||
</body>
|
||||
</html>
|
||||
|
|
|
|||
|
|
@ -3,11 +3,11 @@
|
|||
<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>#<CALLGRAPH># ARM Linker, 5060750: Last Updated: Wed Jul 27 17:17:15 2022
|
||||
<BR><P>#<CALLGRAPH># ARM Linker, 5060750: Last Updated: Tue Aug 16 16:55:17 2022
|
||||
<BR><P>
|
||||
<H3>Maximum Stack Usage = 752 bytes + Unknown(Cycles, Untraceable Function Pointers)</H3><H3>
|
||||
<H3>Maximum Stack Usage = 760 bytes + Unknown(Cycles, Untraceable Function Pointers)</H3><H3>
|
||||
Call chain for Maximum Stack Depth:</H3>
|
||||
main ⇒ EPD_7in3g_test ⇒ Paint_DrawNum ⇒ Paint_DrawString_EN ⇒ Paint_DrawChar ⇒ Paint_SetPixel ⇒ __2printf
|
||||
main ⇒ EPD_4in37g_test ⇒ Paint_DrawNum ⇒ Paint_DrawString_EN ⇒ Paint_DrawChar ⇒ Paint_SetPixel ⇒ __2printf
|
||||
<P>
|
||||
<H3>
|
||||
Mutually Recursive functions
|
||||
|
|
@ -365,14 +365,14 @@ Global Symbols
|
|||
</UL>
|
||||
|
||||
<P><STRONG><a name="[46]"></a>main</STRONG> (Thumb, 36 bytes, Stack size 0 bytes, main.o(.text))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 752<LI>Call Chain = main ⇒ EPD_7in3g_test ⇒ Paint_DrawNum ⇒ Paint_DrawString_EN ⇒ Paint_DrawChar ⇒ Paint_SetPixel ⇒ __2printf
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 760<LI>Call Chain = main ⇒ EPD_4in37g_test ⇒ Paint_DrawNum ⇒ Paint_DrawString_EN ⇒ Paint_DrawChar ⇒ Paint_SetPixel ⇒ __2printf
|
||||
</UL>
|
||||
<BR>[Calls]<UL><LI><a href="#[72]">>></a> MX_USART1_UART_Init
|
||||
<LI><a href="#[73]">>></a> MX_SPI1_Init
|
||||
<LI><a href="#[71]">>></a> MX_GPIO_Init
|
||||
<LI><a href="#[70]">>></a> HAL_Init
|
||||
<LI><a href="#[75]">>></a> HAL_Delay
|
||||
<LI><a href="#[74]">>></a> EPD_7in3g_test
|
||||
<LI><a href="#[74]">>></a> EPD_4in37g_test
|
||||
<LI><a href="#[6c]">>></a> SystemClock_Config
|
||||
</UL>
|
||||
<BR>[Address Reference Count : 1]<UL><LI> entry9a.o(.ARM.Collect$$$$0000000B)
|
||||
|
|
@ -493,82 +493,75 @@ Global Symbols
|
|||
<BR>[Called By]<UL><LI><a href="#[70]">>></a> HAL_Init
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[74]"></a>EPD_7in3g_test</STRONG> (Thumb, 480 bytes, Stack size 48 bytes, epd_7in3g_test.o(.text))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 752<LI>Call Chain = EPD_7in3g_test ⇒ Paint_DrawNum ⇒ Paint_DrawString_EN ⇒ Paint_DrawChar ⇒ Paint_SetPixel ⇒ __2printf
|
||||
<P><STRONG><a name="[74]"></a>EPD_4in37g_test</STRONG> (Thumb, 688 bytes, Stack size 56 bytes, epd_4in37g_test.o(.text))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 760<LI>Call Chain = EPD_4in37g_test ⇒ Paint_DrawNum ⇒ Paint_DrawString_EN ⇒ Paint_DrawChar ⇒ Paint_SetPixel ⇒ __2printf
|
||||
</UL>
|
||||
<BR>[Calls]<UL><LI><a href="#[86]">>></a> Paint_SetScale
|
||||
<LI><a href="#[89]">>></a> Paint_DrawBitMap
|
||||
<LI><a href="#[87]">>></a> Paint_SelectImage
|
||||
<LI><a href="#[85]">>></a> Paint_NewImage
|
||||
<LI><a href="#[8d]">>></a> Paint_DrawString_EN
|
||||
<LI><a href="#[8e]">>></a> Paint_DrawString_CN
|
||||
<LI><a href="#[8b]">>></a> Paint_DrawRectangle
|
||||
<LI><a href="#[89]">>></a> Paint_DrawPoint
|
||||
<LI><a href="#[8f]">>></a> Paint_DrawNum
|
||||
<LI><a href="#[8a]">>></a> Paint_DrawLine
|
||||
<LI><a href="#[8c]">>></a> Paint_DrawCircle
|
||||
<LI><a href="#[8f]">>></a> Paint_DrawString_EN
|
||||
<LI><a href="#[90]">>></a> Paint_DrawString_CN
|
||||
<LI><a href="#[8d]">>></a> Paint_DrawRectangle
|
||||
<LI><a href="#[8b]">>></a> Paint_DrawPoint
|
||||
<LI><a href="#[91]">>></a> Paint_DrawNum
|
||||
<LI><a href="#[8c]">>></a> Paint_DrawLine
|
||||
<LI><a href="#[8e]">>></a> Paint_DrawCircle
|
||||
<LI><a href="#[88]">>></a> Paint_Clear
|
||||
<LI><a href="#[81]">>></a> DEV_Module_Init
|
||||
<LI><a href="#[93]">>></a> DEV_Module_Exit
|
||||
<LI><a href="#[94]">>></a> DEV_Module_Exit
|
||||
<LI><a href="#[75]">>></a> HAL_Delay
|
||||
<LI><a href="#[91]">>></a> EPD_7IN3G_Sleep
|
||||
<LI><a href="#[82]">>></a> EPD_7IN3G_Init
|
||||
<LI><a href="#[90]">>></a> EPD_7IN3G_Display_part
|
||||
<LI><a href="#[83]">>></a> EPD_7IN3G_Clear
|
||||
<LI><a href="#[92]">>></a> EPD_4IN37G_Sleep
|
||||
<LI><a href="#[82]">>></a> EPD_4IN37G_Init
|
||||
<LI><a href="#[8a]">>></a> EPD_4IN37G_Display
|
||||
<LI><a href="#[83]">>></a> EPD_4IN37G_Clear
|
||||
<LI><a href="#[84]">>></a> malloc
|
||||
<LI><a href="#[92]">>></a> free
|
||||
<LI><a href="#[93]">>></a> free
|
||||
<LI><a href="#[6b]">>></a> __2printf
|
||||
</UL>
|
||||
<BR>[Called By]<UL><LI><a href="#[46]">>></a> main
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[82]"></a>EPD_7IN3G_Init</STRONG> (Thumb, 354 bytes, Stack size 8 bytes, epd_7in3g.o(.text))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 120<LI>Call Chain = EPD_7IN3G_Init ⇒ EPD_7IN3G_SendData ⇒ DEV_SPI_WriteByte ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
|
||||
<P><STRONG><a name="[82]"></a>EPD_4IN37G_Init</STRONG> (Thumb, 344 bytes, Stack size 8 bytes, epd_4in37g.o(.text))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 120<LI>Call Chain = EPD_4IN37G_Init ⇒ EPD_4IN37G_SendData ⇒ DEV_SPI_WriteByte ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
|
||||
</UL>
|
||||
<BR>[Calls]<UL><LI><a href="#[76]">>></a> HAL_GPIO_WritePin
|
||||
<LI><a href="#[75]">>></a> HAL_Delay
|
||||
<LI><a href="#[97]">>></a> EPD_7IN3G_SendData
|
||||
<LI><a href="#[96]">>></a> EPD_7IN3G_SendCommand
|
||||
<LI><a href="#[94]">>></a> EPD_7IN3G_ReadBusyH
|
||||
<LI><a href="#[98]">>></a> EPD_4IN37G_SendData
|
||||
<LI><a href="#[97]">>></a> EPD_4IN37G_SendCommand
|
||||
</UL>
|
||||
<BR>[Called By]<UL><LI><a href="#[74]">>></a> EPD_7in3g_test
|
||||
<BR>[Called By]<UL><LI><a href="#[74]">>></a> EPD_4in37g_test
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[83]"></a>EPD_7IN3G_Clear</STRONG> (Thumb, 62 bytes, Stack size 24 bytes, epd_7in3g.o(.text))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 144<LI>Call Chain = EPD_7IN3G_Clear ⇒ EPD_7IN3G_TurnOnDisplay ⇒ EPD_7IN3G_SendData ⇒ DEV_SPI_WriteByte ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
|
||||
<P><STRONG><a name="[83]"></a>EPD_4IN37G_Clear</STRONG> (Thumb, 74 bytes, Stack size 24 bytes, epd_4in37g.o(.text))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 144<LI>Call Chain = EPD_4IN37G_Clear ⇒ EPD_4IN37G_TurnOnDisplay ⇒ EPD_4IN37G_SendData ⇒ DEV_SPI_WriteByte ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
|
||||
</UL>
|
||||
<BR>[Calls]<UL><LI><a href="#[98]">>></a> EPD_7IN3G_TurnOnDisplay
|
||||
<LI><a href="#[97]">>></a> EPD_7IN3G_SendData
|
||||
<LI><a href="#[96]">>></a> EPD_7IN3G_SendCommand
|
||||
<LI><a href="#[94]">>></a> EPD_7IN3G_ReadBusyH
|
||||
<BR>[Calls]<UL><LI><a href="#[99]">>></a> EPD_4IN37G_TurnOnDisplay
|
||||
<LI><a href="#[98]">>></a> EPD_4IN37G_SendData
|
||||
<LI><a href="#[97]">>></a> EPD_4IN37G_SendCommand
|
||||
<LI><a href="#[95]">>></a> EPD_4IN37G_ReadBusyH
|
||||
</UL>
|
||||
<BR>[Called By]<UL><LI><a href="#[74]">>></a> EPD_7in3g_test
|
||||
<BR>[Called By]<UL><LI><a href="#[74]">>></a> EPD_4in37g_test
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[99]"></a>EPD_7IN3G_Display</STRONG> (Thumb, 70 bytes, Stack size 32 bytes, epd_7in3g.o(.text), UNUSED)
|
||||
<BR><BR>[Calls]<UL><LI><a href="#[98]">>></a> EPD_7IN3G_TurnOnDisplay
|
||||
<LI><a href="#[97]">>></a> EPD_7IN3G_SendData
|
||||
<LI><a href="#[96]">>></a> EPD_7IN3G_SendCommand
|
||||
<LI><a href="#[94]">>></a> EPD_7IN3G_ReadBusyH
|
||||
<P><STRONG><a name="[8a]"></a>EPD_4IN37G_Display</STRONG> (Thumb, 72 bytes, Stack size 32 bytes, epd_4in37g.o(.text))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 152<LI>Call Chain = EPD_4IN37G_Display ⇒ EPD_4IN37G_TurnOnDisplay ⇒ EPD_4IN37G_SendData ⇒ DEV_SPI_WriteByte ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
|
||||
</UL>
|
||||
<BR>[Calls]<UL><LI><a href="#[99]">>></a> EPD_4IN37G_TurnOnDisplay
|
||||
<LI><a href="#[98]">>></a> EPD_4IN37G_SendData
|
||||
<LI><a href="#[97]">>></a> EPD_4IN37G_SendCommand
|
||||
<LI><a href="#[95]">>></a> EPD_4IN37G_ReadBusyH
|
||||
</UL>
|
||||
<BR>[Called By]<UL><LI><a href="#[74]">>></a> EPD_4in37g_test
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[90]"></a>EPD_7IN3G_Display_part</STRONG> (Thumb, 128 bytes, Stack size 56 bytes, epd_7in3g.o(.text))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 176<LI>Call Chain = EPD_7IN3G_Display_part ⇒ EPD_7IN3G_TurnOnDisplay ⇒ EPD_7IN3G_SendData ⇒ DEV_SPI_WriteByte ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
|
||||
<P><STRONG><a name="[92]"></a>EPD_4IN37G_Sleep</STRONG> (Thumb, 30 bytes, Stack size 8 bytes, epd_4in37g.o(.text))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 120<LI>Call Chain = EPD_4IN37G_Sleep ⇒ EPD_4IN37G_SendData ⇒ DEV_SPI_WriteByte ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
|
||||
</UL>
|
||||
<BR>[Calls]<UL><LI><a href="#[98]">>></a> EPD_7IN3G_TurnOnDisplay
|
||||
<LI><a href="#[97]">>></a> EPD_7IN3G_SendData
|
||||
<LI><a href="#[96]">>></a> EPD_7IN3G_SendCommand
|
||||
<LI><a href="#[94]">>></a> EPD_7IN3G_ReadBusyH
|
||||
<BR>[Calls]<UL><LI><a href="#[98]">>></a> EPD_4IN37G_SendData
|
||||
<LI><a href="#[97]">>></a> EPD_4IN37G_SendCommand
|
||||
</UL>
|
||||
<BR>[Called By]<UL><LI><a href="#[74]">>></a> EPD_7in3g_test
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[91]"></a>EPD_7IN3G_Sleep</STRONG> (Thumb, 30 bytes, Stack size 8 bytes, epd_7in3g.o(.text))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 120<LI>Call Chain = EPD_7IN3G_Sleep ⇒ EPD_7IN3G_SendData ⇒ DEV_SPI_WriteByte ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
|
||||
</UL>
|
||||
<BR>[Calls]<UL><LI><a href="#[97]">>></a> EPD_7IN3G_SendData
|
||||
<LI><a href="#[96]">>></a> EPD_7IN3G_SendCommand
|
||||
</UL>
|
||||
<BR>[Called By]<UL><LI><a href="#[74]">>></a> EPD_7in3g_test
|
||||
<BR>[Called By]<UL><LI><a href="#[74]">>></a> EPD_4in37g_test
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[9a]"></a>DEV_SPI_WriteByte</STRONG> (Thumb, 18 bytes, Stack size 8 bytes, dev_config.o(.text))
|
||||
|
|
@ -576,8 +569,8 @@ Global Symbols
|
|||
</UL>
|
||||
<BR>[Calls]<UL><LI><a href="#[9b]">>></a> HAL_SPI_Transmit
|
||||
</UL>
|
||||
<BR>[Called By]<UL><LI><a href="#[97]">>></a> EPD_7IN3G_SendData
|
||||
<LI><a href="#[96]">>></a> EPD_7IN3G_SendCommand
|
||||
<BR>[Called By]<UL><LI><a href="#[98]">>></a> EPD_4IN37G_SendData
|
||||
<LI><a href="#[97]">>></a> EPD_4IN37G_SendCommand
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[81]"></a>DEV_Module_Init</STRONG> (Thumb, 38 bytes, Stack size 8 bytes, dev_config.o(.text))
|
||||
|
|
@ -585,25 +578,25 @@ Global Symbols
|
|||
</UL>
|
||||
<BR>[Calls]<UL><LI><a href="#[76]">>></a> HAL_GPIO_WritePin
|
||||
</UL>
|
||||
<BR>[Called By]<UL><LI><a href="#[74]">>></a> EPD_7in3g_test
|
||||
<BR>[Called By]<UL><LI><a href="#[74]">>></a> EPD_4in37g_test
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[93]"></a>DEV_Module_Exit</STRONG> (Thumb, 38 bytes, Stack size 8 bytes, dev_config.o(.text))
|
||||
<P><STRONG><a name="[94]"></a>DEV_Module_Exit</STRONG> (Thumb, 38 bytes, Stack size 8 bytes, dev_config.o(.text))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = DEV_Module_Exit
|
||||
</UL>
|
||||
<BR>[Calls]<UL><LI><a href="#[76]">>></a> HAL_GPIO_WritePin
|
||||
</UL>
|
||||
<BR>[Called By]<UL><LI><a href="#[74]">>></a> EPD_7in3g_test
|
||||
<BR>[Called By]<UL><LI><a href="#[74]">>></a> EPD_4in37g_test
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[85]"></a>Paint_NewImage</STRONG> (Thumb, 56 bytes, Stack size 16 bytes, gui_paint.o(.text))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = Paint_NewImage
|
||||
</UL>
|
||||
<BR>[Called By]<UL><LI><a href="#[74]">>></a> EPD_7in3g_test
|
||||
<BR>[Called By]<UL><LI><a href="#[74]">>></a> EPD_4in37g_test
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[87]"></a>Paint_SelectImage</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, gui_paint.o(.text))
|
||||
<BR><BR>[Called By]<UL><LI><a href="#[74]">>></a> EPD_7in3g_test
|
||||
<BR><BR>[Called By]<UL><LI><a href="#[74]">>></a> EPD_4in37g_test
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[9c]"></a>Paint_SetRotate</STRONG> (Thumb, 44 bytes, Stack size 8 bytes, gui_paint.o(.text), UNUSED)
|
||||
|
|
@ -615,7 +608,7 @@ Global Symbols
|
|||
</UL>
|
||||
<BR>[Calls]<UL><LI><a href="#[6b]">>></a> __2printf
|
||||
</UL>
|
||||
<BR>[Called By]<UL><LI><a href="#[74]">>></a> EPD_7in3g_test
|
||||
<BR>[Called By]<UL><LI><a href="#[74]">>></a> EPD_4in37g_test
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[9d]"></a>Paint_SetMirroring</STRONG> (Thumb, 62 bytes, Stack size 8 bytes, gui_paint.o(.text), UNUSED)
|
||||
|
|
@ -627,60 +620,60 @@ Global Symbols
|
|||
</UL>
|
||||
<BR>[Calls]<UL><LI><a href="#[6b]">>></a> __2printf
|
||||
</UL>
|
||||
<BR>[Called By]<UL><LI><a href="#[8e]">>></a> Paint_DrawString_CN
|
||||
<LI><a href="#[89]">>></a> Paint_DrawPoint
|
||||
<BR>[Called By]<UL><LI><a href="#[90]">>></a> Paint_DrawString_CN
|
||||
<LI><a href="#[8b]">>></a> Paint_DrawPoint
|
||||
<LI><a href="#[9f]">>></a> Paint_ClearWindows
|
||||
<LI><a href="#[a2]">>></a> Paint_DrawBitMap_Paste
|
||||
<LI><a href="#[a0]">>></a> Paint_DrawChar
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[88]"></a>Paint_Clear</STRONG> (Thumb, 104 bytes, Stack size 12 bytes, gui_paint.o(.text))
|
||||
<P><STRONG><a name="[88]"></a>Paint_Clear</STRONG> (Thumb, 156 bytes, Stack size 12 bytes, gui_paint.o(.text))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 12<LI>Call Chain = Paint_Clear
|
||||
</UL>
|
||||
<BR>[Called By]<UL><LI><a href="#[74]">>></a> EPD_7in3g_test
|
||||
<BR>[Called By]<UL><LI><a href="#[74]">>></a> EPD_4in37g_test
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[9f]"></a>Paint_ClearWindows</STRONG> (Thumb, 52 bytes, Stack size 32 bytes, gui_paint.o(.text), UNUSED)
|
||||
<BR><BR>[Calls]<UL><LI><a href="#[9e]">>></a> Paint_SetPixel
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[89]"></a>Paint_DrawPoint</STRONG> (Thumb, 180 bytes, Stack size 40 bytes, gui_paint.o(.text))
|
||||
<P><STRONG><a name="[8b]"></a>Paint_DrawPoint</STRONG> (Thumb, 180 bytes, Stack size 40 bytes, gui_paint.o(.text))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 80<LI>Call Chain = Paint_DrawPoint ⇒ Paint_SetPixel ⇒ __2printf
|
||||
</UL>
|
||||
<BR>[Calls]<UL><LI><a href="#[9e]">>></a> Paint_SetPixel
|
||||
<LI><a href="#[6b]">>></a> __2printf
|
||||
</UL>
|
||||
<BR>[Called By]<UL><LI><a href="#[8a]">>></a> Paint_DrawLine
|
||||
<LI><a href="#[8c]">>></a> Paint_DrawCircle
|
||||
<LI><a href="#[74]">>></a> EPD_7in3g_test
|
||||
<BR>[Called By]<UL><LI><a href="#[8c]">>></a> Paint_DrawLine
|
||||
<LI><a href="#[8e]">>></a> Paint_DrawCircle
|
||||
<LI><a href="#[74]">>></a> EPD_4in37g_test
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[8a]"></a>Paint_DrawLine</STRONG> (Thumb, 654 bytes, Stack size 48 bytes, gui_paint.o(.text))
|
||||
<P><STRONG><a name="[8c]"></a>Paint_DrawLine</STRONG> (Thumb, 662 bytes, Stack size 48 bytes, gui_paint.o(.text))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 128<LI>Call Chain = Paint_DrawLine ⇒ Paint_DrawPoint ⇒ Paint_SetPixel ⇒ __2printf
|
||||
</UL>
|
||||
<BR>[Calls]<UL><LI><a href="#[89]">>></a> Paint_DrawPoint
|
||||
<BR>[Calls]<UL><LI><a href="#[8b]">>></a> Paint_DrawPoint
|
||||
<LI><a href="#[6b]">>></a> __2printf
|
||||
</UL>
|
||||
<BR>[Called By]<UL><LI><a href="#[8b]">>></a> Paint_DrawRectangle
|
||||
<LI><a href="#[74]">>></a> EPD_7in3g_test
|
||||
<BR>[Called By]<UL><LI><a href="#[8d]">>></a> Paint_DrawRectangle
|
||||
<LI><a href="#[74]">>></a> EPD_4in37g_test
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[8b]"></a>Paint_DrawRectangle</STRONG> (Thumb, 170 bytes, Stack size 48 bytes, gui_paint.o(.text))
|
||||
<P><STRONG><a name="[8d]"></a>Paint_DrawRectangle</STRONG> (Thumb, 170 bytes, Stack size 48 bytes, gui_paint.o(.text))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 176<LI>Call Chain = Paint_DrawRectangle ⇒ Paint_DrawLine ⇒ Paint_DrawPoint ⇒ Paint_SetPixel ⇒ __2printf
|
||||
</UL>
|
||||
<BR>[Calls]<UL><LI><a href="#[8a]">>></a> Paint_DrawLine
|
||||
<BR>[Calls]<UL><LI><a href="#[8c]">>></a> Paint_DrawLine
|
||||
<LI><a href="#[6b]">>></a> __2printf
|
||||
</UL>
|
||||
<BR>[Called By]<UL><LI><a href="#[74]">>></a> EPD_7in3g_test
|
||||
<BR>[Called By]<UL><LI><a href="#[74]">>></a> EPD_4in37g_test
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[8c]"></a>Paint_DrawCircle</STRONG> (Thumb, 528 bytes, Stack size 72 bytes, gui_paint.o(.text))
|
||||
<P><STRONG><a name="[8e]"></a>Paint_DrawCircle</STRONG> (Thumb, 528 bytes, Stack size 72 bytes, gui_paint.o(.text))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 152<LI>Call Chain = Paint_DrawCircle ⇒ Paint_DrawPoint ⇒ Paint_SetPixel ⇒ __2printf
|
||||
</UL>
|
||||
<BR>[Calls]<UL><LI><a href="#[89]">>></a> Paint_DrawPoint
|
||||
<BR>[Calls]<UL><LI><a href="#[8b]">>></a> Paint_DrawPoint
|
||||
<LI><a href="#[6b]">>></a> __2printf
|
||||
</UL>
|
||||
<BR>[Called By]<UL><LI><a href="#[74]">>></a> EPD_7in3g_test
|
||||
<BR>[Called By]<UL><LI><a href="#[74]">>></a> EPD_4in37g_test
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[a0]"></a>Paint_DrawChar</STRONG> (Thumb, 172 bytes, Stack size 40 bytes, gui_paint.o(.text))
|
||||
|
|
@ -690,53 +683,57 @@ Global Symbols
|
|||
<LI><a href="#[6b]">>></a> __2printf
|
||||
</UL>
|
||||
<BR>[Called By]<UL><LI><a href="#[a1]">>></a> Paint_DrawTime
|
||||
<LI><a href="#[8d]">>></a> Paint_DrawString_EN
|
||||
<LI><a href="#[8f]">>></a> Paint_DrawString_EN
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[8d]"></a>Paint_DrawString_EN</STRONG> (Thumb, 116 bytes, Stack size 48 bytes, gui_paint.o(.text))
|
||||
<P><STRONG><a name="[8f]"></a>Paint_DrawString_EN</STRONG> (Thumb, 116 bytes, Stack size 48 bytes, gui_paint.o(.text))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 128<LI>Call Chain = Paint_DrawString_EN ⇒ Paint_DrawChar ⇒ Paint_SetPixel ⇒ __2printf
|
||||
</UL>
|
||||
<BR>[Calls]<UL><LI><a href="#[a0]">>></a> Paint_DrawChar
|
||||
<LI><a href="#[6b]">>></a> __2printf
|
||||
</UL>
|
||||
<BR>[Called By]<UL><LI><a href="#[8f]">>></a> Paint_DrawNum
|
||||
<LI><a href="#[74]">>></a> EPD_7in3g_test
|
||||
<BR>[Called By]<UL><LI><a href="#[91]">>></a> Paint_DrawNum
|
||||
<LI><a href="#[74]">>></a> EPD_4in37g_test
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[8e]"></a>Paint_DrawString_CN</STRONG> (Thumb, 518 bytes, Stack size 40 bytes, gui_paint.o(.text))
|
||||
<P><STRONG><a name="[90]"></a>Paint_DrawString_CN</STRONG> (Thumb, 518 bytes, Stack size 40 bytes, gui_paint.o(.text))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 80<LI>Call Chain = Paint_DrawString_CN ⇒ Paint_SetPixel ⇒ __2printf
|
||||
</UL>
|
||||
<BR>[Calls]<UL><LI><a href="#[9e]">>></a> Paint_SetPixel
|
||||
</UL>
|
||||
<BR>[Called By]<UL><LI><a href="#[74]">>></a> EPD_7in3g_test
|
||||
<BR>[Called By]<UL><LI><a href="#[74]">>></a> EPD_4in37g_test
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[8f]"></a>Paint_DrawNum</STRONG> (Thumb, 140 bytes, Stack size 576 bytes, gui_paint.o(.text))
|
||||
<P><STRONG><a name="[91]"></a>Paint_DrawNum</STRONG> (Thumb, 140 bytes, Stack size 576 bytes, gui_paint.o(.text))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 704<LI>Call Chain = Paint_DrawNum ⇒ Paint_DrawString_EN ⇒ Paint_DrawChar ⇒ Paint_SetPixel ⇒ __2printf
|
||||
</UL>
|
||||
<BR>[Calls]<UL><LI><a href="#[8d]">>></a> Paint_DrawString_EN
|
||||
<BR>[Calls]<UL><LI><a href="#[8f]">>></a> Paint_DrawString_EN
|
||||
<LI><a href="#[6b]">>></a> __2printf
|
||||
<LI><a href="#[6d]">>></a> __aeabi_memclr4
|
||||
</UL>
|
||||
<BR>[Called By]<UL><LI><a href="#[74]">>></a> EPD_7in3g_test
|
||||
<BR>[Called By]<UL><LI><a href="#[74]">>></a> EPD_4in37g_test
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[a1]"></a>Paint_DrawTime</STRONG> (Thumb, 282 bytes, Stack size 72 bytes, gui_paint.o(.text), UNUSED)
|
||||
<BR><BR>[Calls]<UL><LI><a href="#[a0]">>></a> Paint_DrawChar
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[105]"></a>Paint_DrawBitMap</STRONG> (Thumb, 46 bytes, Stack size 16 bytes, gui_paint.o(.text), UNUSED)
|
||||
<P><STRONG><a name="[89]"></a>Paint_DrawBitMap</STRONG> (Thumb, 46 bytes, Stack size 16 bytes, gui_paint.o(.text))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = Paint_DrawBitMap
|
||||
</UL>
|
||||
<BR>[Called By]<UL><LI><a href="#[74]">>></a> EPD_4in37g_test
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[a2]"></a>Paint_DrawBitMap_Paste</STRONG> (Thumb, 110 bytes, Stack size 56 bytes, gui_paint.o(.text), UNUSED)
|
||||
<BR><BR>[Calls]<UL><LI><a href="#[9e]">>></a> Paint_SetPixel
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[106]"></a>Paint_DrawBitMap_Block</STRONG> (Thumb, 54 bytes, Stack size 20 bytes, gui_paint.o(.text), UNUSED)
|
||||
<P><STRONG><a name="[105]"></a>Paint_DrawBitMap_Block</STRONG> (Thumb, 54 bytes, Stack size 20 bytes, gui_paint.o(.text), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[47]"></a>SystemInit</STRONG> (Thumb, 60 bytes, Stack size 0 bytes, system_stm32f1xx.o(.text))
|
||||
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f103xe.o(.text)
|
||||
</UL>
|
||||
<P><STRONG><a name="[107]"></a>SystemCoreClockUpdate</STRONG> (Thumb, 108 bytes, Stack size 0 bytes, system_stm32f1xx.o(.text), UNUSED)
|
||||
<P><STRONG><a name="[106]"></a>SystemCoreClockUpdate</STRONG> (Thumb, 108 bytes, Stack size 0 bytes, system_stm32f1xx.o(.text), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[78]"></a>HAL_SPI_Init</STRONG> (Thumb, 180 bytes, Stack size 16 bytes, stm32f1xx_hal_spi.o(.text))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 80<LI>Call Chain = HAL_SPI_Init ⇒ HAL_SPI_MspInit ⇒ HAL_GPIO_Init
|
||||
|
|
@ -789,7 +786,7 @@ Global Symbols
|
|||
<LI><a href="#[aa]">>></a> SPI_CloseTx_ISR
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[108]"></a>HAL_SPI_Transmit_IT</STRONG> (Thumb, 162 bytes, Stack size 4 bytes, stm32f1xx_hal_spi.o(.text), UNUSED)
|
||||
<P><STRONG><a name="[107]"></a>HAL_SPI_Transmit_IT</STRONG> (Thumb, 162 bytes, Stack size 4 bytes, stm32f1xx_hal_spi.o(.text), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[ae]"></a>HAL_SPI_RxCpltCallback</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, stm32f1xx_hal_spi.o(.text))
|
||||
<BR><BR>[Called By]<UL><LI><a href="#[57]">>></a> SPI_DMAReceiveCplt
|
||||
|
|
@ -852,9 +849,9 @@ Global Symbols
|
|||
<LI><a href="#[be]">>></a> HAL_DMA_Abort_IT
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[109]"></a>HAL_SPI_DMAPause</STRONG> (Thumb, 38 bytes, Stack size 0 bytes, stm32f1xx_hal_spi.o(.text), UNUSED)
|
||||
<P><STRONG><a name="[108]"></a>HAL_SPI_DMAPause</STRONG> (Thumb, 38 bytes, Stack size 0 bytes, stm32f1xx_hal_spi.o(.text), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[10a]"></a>HAL_SPI_DMAResume</STRONG> (Thumb, 38 bytes, Stack size 0 bytes, stm32f1xx_hal_spi.o(.text), UNUSED)
|
||||
<P><STRONG><a name="[109]"></a>HAL_SPI_DMAResume</STRONG> (Thumb, 38 bytes, Stack size 0 bytes, stm32f1xx_hal_spi.o(.text), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[bf]"></a>HAL_SPI_DMAStop</STRONG> (Thumb, 68 bytes, Stack size 16 bytes, stm32f1xx_hal_spi.o(.text), UNUSED)
|
||||
<BR><BR>[Calls]<UL><LI><a href="#[bb]">>></a> HAL_DMA_Abort
|
||||
|
|
@ -865,9 +862,9 @@ Global Symbols
|
|||
<LI><a href="#[be]">>></a> HAL_DMA_Abort_IT
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[10b]"></a>HAL_SPI_GetState</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, stm32f1xx_hal_spi.o(.text), UNUSED)
|
||||
<P><STRONG><a name="[10a]"></a>HAL_SPI_GetState</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, stm32f1xx_hal_spi.o(.text), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[10c]"></a>HAL_SPI_GetError</STRONG> (Thumb, 4 bytes, Stack size 0 bytes, stm32f1xx_hal_spi.o(.text), UNUSED)
|
||||
<P><STRONG><a name="[10b]"></a>HAL_SPI_GetError</STRONG> (Thumb, 4 bytes, Stack size 0 bytes, stm32f1xx_hal_spi.o(.text), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[c1]"></a>HAL_InitTick</STRONG> (Thumb, 58 bytes, Stack size 16 bytes, stm32f1xx_hal.o(.text))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 20<LI>Call Chain = HAL_InitTick ⇒ HAL_NVIC_SetPriority
|
||||
|
|
@ -908,8 +905,6 @@ Global Symbols
|
|||
<LI><a href="#[6e]">>></a> HAL_RCC_OscConfig
|
||||
<LI><a href="#[6f]">>></a> HAL_RCC_ClockConfig
|
||||
<LI><a href="#[75]">>></a> HAL_Delay
|
||||
<LI><a href="#[df]">>></a> HAL_UART_Receive
|
||||
<LI><a href="#[de]">>></a> UART_WaitOnFlagUntilTimeout
|
||||
<LI><a href="#[d6]">>></a> HAL_DMA_PollForTransfer
|
||||
<LI><a href="#[c9]">>></a> HAL_RCC_DeInit
|
||||
<LI><a href="#[a9]">>></a> HAL_SPI_Receive
|
||||
|
|
@ -923,54 +918,56 @@ Global Symbols
|
|||
<LI><a href="#[aa]">>></a> SPI_CloseTx_ISR
|
||||
<LI><a href="#[a4]">>></a> SPI_WaitFlagStateUntilTimeout
|
||||
<LI><a href="#[9b]">>></a> HAL_SPI_Transmit
|
||||
<LI><a href="#[df]">>></a> HAL_UART_Receive
|
||||
<LI><a href="#[de]">>></a> UART_WaitOnFlagUntilTimeout
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[10d]"></a>HAL_GetTickPrio</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, stm32f1xx_hal.o(.text), UNUSED)
|
||||
<P><STRONG><a name="[10c]"></a>HAL_GetTickPrio</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, stm32f1xx_hal.o(.text), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[c8]"></a>HAL_SetTickFreq</STRONG> (Thumb, 30 bytes, Stack size 16 bytes, stm32f1xx_hal.o(.text), UNUSED)
|
||||
<BR><BR>[Calls]<UL><LI><a href="#[c1]">>></a> HAL_InitTick
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[10e]"></a>HAL_GetTickFreq</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, stm32f1xx_hal.o(.text), UNUSED)
|
||||
<P><STRONG><a name="[10d]"></a>HAL_GetTickFreq</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, stm32f1xx_hal.o(.text), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[75]"></a>HAL_Delay</STRONG> (Thumb, 34 bytes, Stack size 16 bytes, stm32f1xx_hal.o(.text))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = HAL_Delay
|
||||
</UL>
|
||||
<BR>[Calls]<UL><LI><a href="#[a5]">>></a> HAL_GetTick
|
||||
</UL>
|
||||
<BR>[Called By]<UL><LI><a href="#[74]">>></a> EPD_7in3g_test
|
||||
<BR>[Called By]<UL><LI><a href="#[74]">>></a> EPD_4in37g_test
|
||||
<LI><a href="#[46]">>></a> main
|
||||
<LI><a href="#[82]">>></a> EPD_7IN3G_Init
|
||||
<LI><a href="#[94]">>></a> EPD_7IN3G_ReadBusyH
|
||||
<LI><a href="#[82]">>></a> EPD_4IN37G_Init
|
||||
<LI><a href="#[95]">>></a> EPD_4IN37G_ReadBusyH
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[10f]"></a>HAL_SuspendTick</STRONG> (Thumb, 14 bytes, Stack size 0 bytes, stm32f1xx_hal.o(.text), UNUSED)
|
||||
<P><STRONG><a name="[10e]"></a>HAL_SuspendTick</STRONG> (Thumb, 14 bytes, Stack size 0 bytes, stm32f1xx_hal.o(.text), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[110]"></a>HAL_ResumeTick</STRONG> (Thumb, 14 bytes, Stack size 0 bytes, stm32f1xx_hal.o(.text), UNUSED)
|
||||
<P><STRONG><a name="[10f]"></a>HAL_ResumeTick</STRONG> (Thumb, 14 bytes, Stack size 0 bytes, stm32f1xx_hal.o(.text), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[111]"></a>HAL_GetHalVersion</STRONG> (Thumb, 4 bytes, Stack size 0 bytes, stm32f1xx_hal.o(.text), UNUSED)
|
||||
<P><STRONG><a name="[110]"></a>HAL_GetHalVersion</STRONG> (Thumb, 4 bytes, Stack size 0 bytes, stm32f1xx_hal.o(.text), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[112]"></a>HAL_GetREVID</STRONG> (Thumb, 8 bytes, Stack size 0 bytes, stm32f1xx_hal.o(.text), UNUSED)
|
||||
<P><STRONG><a name="[111]"></a>HAL_GetREVID</STRONG> (Thumb, 8 bytes, Stack size 0 bytes, stm32f1xx_hal.o(.text), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[113]"></a>HAL_GetDEVID</STRONG> (Thumb, 10 bytes, Stack size 0 bytes, stm32f1xx_hal.o(.text), UNUSED)
|
||||
<P><STRONG><a name="[112]"></a>HAL_GetDEVID</STRONG> (Thumb, 10 bytes, Stack size 0 bytes, stm32f1xx_hal.o(.text), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[114]"></a>HAL_GetUIDw0</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, stm32f1xx_hal.o(.text), UNUSED)
|
||||
<P><STRONG><a name="[113]"></a>HAL_GetUIDw0</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, stm32f1xx_hal.o(.text), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[115]"></a>HAL_GetUIDw1</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, stm32f1xx_hal.o(.text), UNUSED)
|
||||
<P><STRONG><a name="[114]"></a>HAL_GetUIDw1</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, stm32f1xx_hal.o(.text), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[116]"></a>HAL_GetUIDw2</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, stm32f1xx_hal.o(.text), UNUSED)
|
||||
<P><STRONG><a name="[115]"></a>HAL_GetUIDw2</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, stm32f1xx_hal.o(.text), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[117]"></a>HAL_DBGMCU_EnableDBGSleepMode</STRONG> (Thumb, 12 bytes, Stack size 0 bytes, stm32f1xx_hal.o(.text), UNUSED)
|
||||
<P><STRONG><a name="[116]"></a>HAL_DBGMCU_EnableDBGSleepMode</STRONG> (Thumb, 12 bytes, Stack size 0 bytes, stm32f1xx_hal.o(.text), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[118]"></a>HAL_DBGMCU_DisableDBGSleepMode</STRONG> (Thumb, 12 bytes, Stack size 0 bytes, stm32f1xx_hal.o(.text), UNUSED)
|
||||
<P><STRONG><a name="[117]"></a>HAL_DBGMCU_DisableDBGSleepMode</STRONG> (Thumb, 12 bytes, Stack size 0 bytes, stm32f1xx_hal.o(.text), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[119]"></a>HAL_DBGMCU_EnableDBGStopMode</STRONG> (Thumb, 12 bytes, Stack size 0 bytes, stm32f1xx_hal.o(.text), UNUSED)
|
||||
<P><STRONG><a name="[118]"></a>HAL_DBGMCU_EnableDBGStopMode</STRONG> (Thumb, 12 bytes, Stack size 0 bytes, stm32f1xx_hal.o(.text), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[11a]"></a>HAL_DBGMCU_DisableDBGStopMode</STRONG> (Thumb, 12 bytes, Stack size 0 bytes, stm32f1xx_hal.o(.text), UNUSED)
|
||||
<P><STRONG><a name="[119]"></a>HAL_DBGMCU_DisableDBGStopMode</STRONG> (Thumb, 12 bytes, Stack size 0 bytes, stm32f1xx_hal.o(.text), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[11b]"></a>HAL_DBGMCU_EnableDBGStandbyMode</STRONG> (Thumb, 12 bytes, Stack size 0 bytes, stm32f1xx_hal.o(.text), UNUSED)
|
||||
<P><STRONG><a name="[11a]"></a>HAL_DBGMCU_EnableDBGStandbyMode</STRONG> (Thumb, 12 bytes, Stack size 0 bytes, stm32f1xx_hal.o(.text), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[11c]"></a>HAL_DBGMCU_DisableDBGStandbyMode</STRONG> (Thumb, 12 bytes, Stack size 0 bytes, stm32f1xx_hal.o(.text), UNUSED)
|
||||
<P><STRONG><a name="[11b]"></a>HAL_DBGMCU_DisableDBGStandbyMode</STRONG> (Thumb, 12 bytes, Stack size 0 bytes, stm32f1xx_hal.o(.text), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[c9]"></a>HAL_RCC_DeInit</STRONG> (Thumb, 250 bytes, Stack size 24 bytes, stm32f1xx_hal_rcc.o(.text), UNUSED)
|
||||
<BR><BR>[Calls]<UL><LI><a href="#[c1]">>></a> HAL_InitTick
|
||||
|
|
@ -1006,9 +1003,9 @@ Global Symbols
|
|||
<BR><BR>[Calls]<UL><LI><a href="#[77]">>></a> HAL_GPIO_Init
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[11d]"></a>HAL_RCC_EnableCSS</STRONG> (Thumb, 8 bytes, Stack size 0 bytes, stm32f1xx_hal_rcc.o(.text), UNUSED)
|
||||
<P><STRONG><a name="[11c]"></a>HAL_RCC_EnableCSS</STRONG> (Thumb, 8 bytes, Stack size 0 bytes, stm32f1xx_hal_rcc.o(.text), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[11e]"></a>HAL_RCC_DisableCSS</STRONG> (Thumb, 8 bytes, Stack size 0 bytes, stm32f1xx_hal_rcc.o(.text), UNUSED)
|
||||
<P><STRONG><a name="[11d]"></a>HAL_RCC_DisableCSS</STRONG> (Thumb, 8 bytes, Stack size 0 bytes, stm32f1xx_hal_rcc.o(.text), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[ce]"></a>HAL_RCC_GetHCLKFreq</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, stm32f1xx_hal_rcc.o(.text))
|
||||
<BR><BR>[Called By]<UL><LI><a href="#[cf]">>></a> HAL_RCC_GetPCLK2Freq
|
||||
|
|
@ -1031,9 +1028,9 @@ Global Symbols
|
|||
<BR>[Called By]<UL><LI><a href="#[d9]">>></a> UART_SetConfig
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[11f]"></a>HAL_RCC_GetOscConfig</STRONG> (Thumb, 168 bytes, Stack size 0 bytes, stm32f1xx_hal_rcc.o(.text), UNUSED)
|
||||
<P><STRONG><a name="[11e]"></a>HAL_RCC_GetOscConfig</STRONG> (Thumb, 168 bytes, Stack size 0 bytes, stm32f1xx_hal_rcc.o(.text), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[120]"></a>HAL_RCC_GetClockConfig</STRONG> (Thumb, 52 bytes, Stack size 0 bytes, stm32f1xx_hal_rcc.o(.text), UNUSED)
|
||||
<P><STRONG><a name="[11f]"></a>HAL_RCC_GetClockConfig</STRONG> (Thumb, 52 bytes, Stack size 0 bytes, stm32f1xx_hal_rcc.o(.text), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[d1]"></a>HAL_RCC_CSSCallback</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, stm32f1xx_hal_rcc.o(.text), UNUSED)
|
||||
<BR><BR>[Called By]<UL><LI><a href="#[d0]">>></a> HAL_RCC_NMI_IRQHandler
|
||||
|
|
@ -1057,22 +1054,22 @@ Global Symbols
|
|||
<LI><a href="#[7a]">>></a> HAL_SPI_MspDeInit
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[95]"></a>HAL_GPIO_ReadPin</STRONG> (Thumb, 14 bytes, Stack size 0 bytes, stm32f1xx_hal_gpio.o(.text))
|
||||
<BR><BR>[Called By]<UL><LI><a href="#[94]">>></a> EPD_7IN3G_ReadBusyH
|
||||
<P><STRONG><a name="[96]"></a>HAL_GPIO_ReadPin</STRONG> (Thumb, 14 bytes, Stack size 0 bytes, stm32f1xx_hal_gpio.o(.text))
|
||||
<BR><BR>[Called By]<UL><LI><a href="#[95]">>></a> EPD_4IN37G_ReadBusyH
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[76]"></a>HAL_GPIO_WritePin</STRONG> (Thumb, 14 bytes, Stack size 0 bytes, stm32f1xx_hal_gpio.o(.text))
|
||||
<BR><BR>[Called By]<UL><LI><a href="#[81]">>></a> DEV_Module_Init
|
||||
<LI><a href="#[93]">>></a> DEV_Module_Exit
|
||||
<LI><a href="#[94]">>></a> DEV_Module_Exit
|
||||
<LI><a href="#[71]">>></a> MX_GPIO_Init
|
||||
<LI><a href="#[82]">>></a> EPD_7IN3G_Init
|
||||
<LI><a href="#[97]">>></a> EPD_7IN3G_SendData
|
||||
<LI><a href="#[96]">>></a> EPD_7IN3G_SendCommand
|
||||
<LI><a href="#[82]">>></a> EPD_4IN37G_Init
|
||||
<LI><a href="#[98]">>></a> EPD_4IN37G_SendData
|
||||
<LI><a href="#[97]">>></a> EPD_4IN37G_SendCommand
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[121]"></a>HAL_GPIO_TogglePin</STRONG> (Thumb, 16 bytes, Stack size 0 bytes, stm32f1xx_hal_gpio.o(.text), UNUSED)
|
||||
<P><STRONG><a name="[120]"></a>HAL_GPIO_TogglePin</STRONG> (Thumb, 16 bytes, Stack size 0 bytes, stm32f1xx_hal_gpio.o(.text), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[122]"></a>HAL_GPIO_LockPin</STRONG> (Thumb, 42 bytes, Stack size 4 bytes, stm32f1xx_hal_gpio.o(.text), UNUSED)
|
||||
<P><STRONG><a name="[121]"></a>HAL_GPIO_LockPin</STRONG> (Thumb, 42 bytes, Stack size 4 bytes, stm32f1xx_hal_gpio.o(.text), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[d3]"></a>HAL_GPIO_EXTI_Callback</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, stm32f1xx_hal_gpio.o(.text), UNUSED)
|
||||
<BR><BR>[Called By]<UL><LI><a href="#[d2]">>></a> HAL_GPIO_EXTI_IRQHandler
|
||||
|
|
@ -1082,9 +1079,9 @@ Global Symbols
|
|||
<BR><BR>[Calls]<UL><LI><a href="#[d3]">>></a> HAL_GPIO_EXTI_Callback
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[123]"></a>HAL_DMA_Init</STRONG> (Thumb, 144 bytes, Stack size 4 bytes, stm32f1xx_hal_dma.o(.text), UNUSED)
|
||||
<P><STRONG><a name="[122]"></a>HAL_DMA_Init</STRONG> (Thumb, 144 bytes, Stack size 4 bytes, stm32f1xx_hal_dma.o(.text), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[124]"></a>HAL_DMA_DeInit</STRONG> (Thumb, 126 bytes, Stack size 0 bytes, stm32f1xx_hal_dma.o(.text), UNUSED)
|
||||
<P><STRONG><a name="[123]"></a>HAL_DMA_DeInit</STRONG> (Thumb, 126 bytes, Stack size 0 bytes, stm32f1xx_hal_dma.o(.text), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[d4]"></a>HAL_DMA_Start</STRONG> (Thumb, 88 bytes, Stack size 16 bytes, stm32f1xx_hal_dma.o(.text), UNUSED)
|
||||
<BR><BR>[Calls]<UL><LI><a href="#[d5]">>></a> DMA_SetConfig
|
||||
|
|
@ -1093,42 +1090,42 @@ Global Symbols
|
|||
<P><STRONG><a name="[b5]"></a>HAL_DMA_Start_IT</STRONG> (Thumb, 124 bytes, Stack size 16 bytes, stm32f1xx_hal_dma.o(.text), UNUSED)
|
||||
<BR><BR>[Calls]<UL><LI><a href="#[d5]">>></a> DMA_SetConfig
|
||||
</UL>
|
||||
<BR>[Called By]<UL><LI><a href="#[e8]">>></a> HAL_UART_Receive_DMA
|
||||
<LI><a href="#[e5]">>></a> HAL_UART_Transmit_DMA
|
||||
<LI><a href="#[b9]">>></a> HAL_SPI_Receive_DMA
|
||||
<BR>[Called By]<UL><LI><a href="#[b9]">>></a> HAL_SPI_Receive_DMA
|
||||
<LI><a href="#[b8]">>></a> HAL_SPI_TransmitReceive_DMA
|
||||
<LI><a href="#[b4]">>></a> HAL_SPI_Transmit_DMA
|
||||
<LI><a href="#[e8]">>></a> HAL_UART_Receive_DMA
|
||||
<LI><a href="#[e5]">>></a> HAL_UART_Transmit_DMA
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[bb]"></a>HAL_DMA_Abort</STRONG> (Thumb, 72 bytes, Stack size 0 bytes, stm32f1xx_hal_dma.o(.text), UNUSED)
|
||||
<BR><BR>[Called By]<UL><LI><a href="#[ed]">>></a> HAL_UART_AbortReceive
|
||||
<BR><BR>[Called By]<UL><LI><a href="#[bf]">>></a> HAL_SPI_DMAStop
|
||||
<LI><a href="#[ba]">>></a> HAL_SPI_Abort
|
||||
<LI><a href="#[ed]">>></a> HAL_UART_AbortReceive
|
||||
<LI><a href="#[ec]">>></a> HAL_UART_AbortTransmit
|
||||
<LI><a href="#[ea]">>></a> HAL_UART_Abort
|
||||
<LI><a href="#[e9]">>></a> HAL_UART_DMAStop
|
||||
<LI><a href="#[bf]">>></a> HAL_SPI_DMAStop
|
||||
<LI><a href="#[ba]">>></a> HAL_SPI_Abort
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[be]"></a>HAL_DMA_Abort_IT</STRONG> (Thumb, 318 bytes, Stack size 40 bytes, stm32f1xx_hal_dma.o(.text), UNUSED)
|
||||
<BR><BR>[Called By]<UL><LI><a href="#[f6]">>></a> HAL_UART_IRQHandler
|
||||
<BR><BR>[Called By]<UL><LI><a href="#[c0]">>></a> HAL_SPI_IRQHandler
|
||||
<LI><a href="#[bd]">>></a> HAL_SPI_Abort_IT
|
||||
<LI><a href="#[f6]">>></a> HAL_UART_IRQHandler
|
||||
<LI><a href="#[f3]">>></a> HAL_UART_AbortReceive_IT
|
||||
<LI><a href="#[f1]">>></a> HAL_UART_AbortTransmit_IT
|
||||
<LI><a href="#[ef]">>></a> HAL_UART_Abort_IT
|
||||
<LI><a href="#[c0]">>></a> HAL_SPI_IRQHandler
|
||||
<LI><a href="#[bd]">>></a> HAL_SPI_Abort_IT
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[d6]"></a>HAL_DMA_PollForTransfer</STRONG> (Thumb, 1316 bytes, Stack size 56 bytes, stm32f1xx_hal_dma.o(.text), UNUSED)
|
||||
<BR><BR>[Calls]<UL><LI><a href="#[a5]">>></a> HAL_GetTick
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[125]"></a>HAL_DMA_IRQHandler</STRONG> (Thumb, 672 bytes, Stack size 40 bytes, stm32f1xx_hal_dma.o(.text), UNUSED)
|
||||
<P><STRONG><a name="[124]"></a>HAL_DMA_IRQHandler</STRONG> (Thumb, 672 bytes, Stack size 40 bytes, stm32f1xx_hal_dma.o(.text), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[126]"></a>HAL_DMA_RegisterCallback</STRONG> (Thumb, 80 bytes, Stack size 0 bytes, stm32f1xx_hal_dma.o(.text), UNUSED)
|
||||
<P><STRONG><a name="[125]"></a>HAL_DMA_RegisterCallback</STRONG> (Thumb, 80 bytes, Stack size 0 bytes, stm32f1xx_hal_dma.o(.text), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[127]"></a>HAL_DMA_UnRegisterCallback</STRONG> (Thumb, 86 bytes, Stack size 0 bytes, stm32f1xx_hal_dma.o(.text), UNUSED)
|
||||
<P><STRONG><a name="[126]"></a>HAL_DMA_UnRegisterCallback</STRONG> (Thumb, 86 bytes, Stack size 0 bytes, stm32f1xx_hal_dma.o(.text), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[128]"></a>HAL_DMA_GetState</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, stm32f1xx_hal_dma.o(.text), UNUSED)
|
||||
<P><STRONG><a name="[127]"></a>HAL_DMA_GetState</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, stm32f1xx_hal_dma.o(.text), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[eb]"></a>HAL_DMA_GetError</STRONG> (Thumb, 4 bytes, Stack size 0 bytes, stm32f1xx_hal_dma.o(.text), UNUSED)
|
||||
<BR><BR>[Called By]<UL><LI><a href="#[ed]">>></a> HAL_UART_AbortReceive
|
||||
|
|
@ -1146,29 +1143,29 @@ Global Symbols
|
|||
<BR>[Called By]<UL><LI><a href="#[c1]">>></a> HAL_InitTick
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[129]"></a>HAL_NVIC_EnableIRQ</STRONG> (Thumb, 28 bytes, Stack size 0 bytes, stm32f1xx_hal_cortex.o(.text), UNUSED)
|
||||
<P><STRONG><a name="[128]"></a>HAL_NVIC_EnableIRQ</STRONG> (Thumb, 28 bytes, Stack size 0 bytes, stm32f1xx_hal_cortex.o(.text), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[12a]"></a>HAL_NVIC_DisableIRQ</STRONG> (Thumb, 36 bytes, Stack size 0 bytes, stm32f1xx_hal_cortex.o(.text), UNUSED)
|
||||
<P><STRONG><a name="[129]"></a>HAL_NVIC_DisableIRQ</STRONG> (Thumb, 36 bytes, Stack size 0 bytes, stm32f1xx_hal_cortex.o(.text), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[12b]"></a>HAL_NVIC_SystemReset</STRONG> (Thumb, 26 bytes, Stack size 0 bytes, stm32f1xx_hal_cortex.o(.text), UNUSED)
|
||||
<P><STRONG><a name="[12a]"></a>HAL_NVIC_SystemReset</STRONG> (Thumb, 26 bytes, Stack size 0 bytes, stm32f1xx_hal_cortex.o(.text), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[c2]"></a>HAL_SYSTICK_Config</STRONG> (Thumb, 36 bytes, Stack size 0 bytes, stm32f1xx_hal_cortex.o(.text))
|
||||
<BR><BR>[Called By]<UL><LI><a href="#[c1]">>></a> HAL_InitTick
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[12c]"></a>HAL_NVIC_GetPriorityGrouping</STRONG> (Thumb, 10 bytes, Stack size 0 bytes, stm32f1xx_hal_cortex.o(.text), UNUSED)
|
||||
<P><STRONG><a name="[12b]"></a>HAL_NVIC_GetPriorityGrouping</STRONG> (Thumb, 10 bytes, Stack size 0 bytes, stm32f1xx_hal_cortex.o(.text), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[12d]"></a>HAL_NVIC_GetPriority</STRONG> (Thumb, 94 bytes, Stack size 8 bytes, stm32f1xx_hal_cortex.o(.text), UNUSED)
|
||||
<P><STRONG><a name="[12c]"></a>HAL_NVIC_GetPriority</STRONG> (Thumb, 94 bytes, Stack size 8 bytes, stm32f1xx_hal_cortex.o(.text), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[12e]"></a>HAL_NVIC_SetPendingIRQ</STRONG> (Thumb, 28 bytes, Stack size 0 bytes, stm32f1xx_hal_cortex.o(.text), UNUSED)
|
||||
<P><STRONG><a name="[12d]"></a>HAL_NVIC_SetPendingIRQ</STRONG> (Thumb, 28 bytes, Stack size 0 bytes, stm32f1xx_hal_cortex.o(.text), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[12f]"></a>HAL_NVIC_GetPendingIRQ</STRONG> (Thumb, 42 bytes, Stack size 0 bytes, stm32f1xx_hal_cortex.o(.text), UNUSED)
|
||||
<P><STRONG><a name="[12e]"></a>HAL_NVIC_GetPendingIRQ</STRONG> (Thumb, 42 bytes, Stack size 0 bytes, stm32f1xx_hal_cortex.o(.text), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[130]"></a>HAL_NVIC_ClearPendingIRQ</STRONG> (Thumb, 28 bytes, Stack size 0 bytes, stm32f1xx_hal_cortex.o(.text), UNUSED)
|
||||
<P><STRONG><a name="[12f]"></a>HAL_NVIC_ClearPendingIRQ</STRONG> (Thumb, 28 bytes, Stack size 0 bytes, stm32f1xx_hal_cortex.o(.text), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[131]"></a>HAL_NVIC_GetActive</STRONG> (Thumb, 42 bytes, Stack size 0 bytes, stm32f1xx_hal_cortex.o(.text), UNUSED)
|
||||
<P><STRONG><a name="[130]"></a>HAL_NVIC_GetActive</STRONG> (Thumb, 42 bytes, Stack size 0 bytes, stm32f1xx_hal_cortex.o(.text), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[132]"></a>HAL_SYSTICK_CLKSourceConfig</STRONG> (Thumb, 28 bytes, Stack size 0 bytes, stm32f1xx_hal_cortex.o(.text), UNUSED)
|
||||
<P><STRONG><a name="[131]"></a>HAL_SYSTICK_CLKSourceConfig</STRONG> (Thumb, 28 bytes, Stack size 0 bytes, stm32f1xx_hal_cortex.o(.text), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[d8]"></a>HAL_SYSTICK_Callback</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, stm32f1xx_hal_cortex.o(.text), UNUSED)
|
||||
<BR><BR>[Called By]<UL><LI><a href="#[d7]">>></a> HAL_SYSTICK_IRQHandler
|
||||
|
|
@ -1209,20 +1206,20 @@ Global Symbols
|
|||
<P><STRONG><a name="[7f]"></a>HAL_UART_Transmit</STRONG> (Thumb, 202 bytes, Stack size 32 bytes, stm32f1xx_hal_uart.o(.text))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 56<LI>Call Chain = HAL_UART_Transmit ⇒ UART_WaitOnFlagUntilTimeout
|
||||
</UL>
|
||||
<BR>[Calls]<UL><LI><a href="#[de]">>></a> UART_WaitOnFlagUntilTimeout
|
||||
<LI><a href="#[a5]">>></a> HAL_GetTick
|
||||
<BR>[Calls]<UL><LI><a href="#[a5]">>></a> HAL_GetTick
|
||||
<LI><a href="#[de]">>></a> UART_WaitOnFlagUntilTimeout
|
||||
</UL>
|
||||
<BR>[Called By]<UL><LI><a href="#[67]">>></a> fputc
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[df]"></a>HAL_UART_Receive</STRONG> (Thumb, 212 bytes, Stack size 32 bytes, stm32f1xx_hal_uart.o(.text), UNUSED)
|
||||
<BR><BR>[Calls]<UL><LI><a href="#[de]">>></a> UART_WaitOnFlagUntilTimeout
|
||||
<LI><a href="#[a5]">>></a> HAL_GetTick
|
||||
<BR><BR>[Calls]<UL><LI><a href="#[a5]">>></a> HAL_GetTick
|
||||
<LI><a href="#[de]">>></a> UART_WaitOnFlagUntilTimeout
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[133]"></a>HAL_UART_Transmit_IT</STRONG> (Thumb, 66 bytes, Stack size 0 bytes, stm32f1xx_hal_uart.o(.text), UNUSED)
|
||||
<P><STRONG><a name="[132]"></a>HAL_UART_Transmit_IT</STRONG> (Thumb, 66 bytes, Stack size 0 bytes, stm32f1xx_hal_uart.o(.text), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[134]"></a>HAL_UART_Receive_IT</STRONG> (Thumb, 86 bytes, Stack size 0 bytes, stm32f1xx_hal_uart.o(.text), UNUSED)
|
||||
<P><STRONG><a name="[133]"></a>HAL_UART_Receive_IT</STRONG> (Thumb, 86 bytes, Stack size 0 bytes, stm32f1xx_hal_uart.o(.text), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[e2]"></a>HAL_UART_ErrorCallback</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, stm32f1xx_hal_uart.o(.text))
|
||||
<BR><BR>[Called By]<UL><LI><a href="#[f6]">>></a> HAL_UART_IRQHandler
|
||||
|
|
@ -1256,14 +1253,14 @@ Global Symbols
|
|||
<BR><BR>[Calls]<UL><LI><a href="#[b5]">>></a> HAL_DMA_Start_IT
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[135]"></a>HAL_UART_DMAPause</STRONG> (Thumb, 102 bytes, Stack size 0 bytes, stm32f1xx_hal_uart.o(.text), UNUSED)
|
||||
<P><STRONG><a name="[134]"></a>HAL_UART_DMAPause</STRONG> (Thumb, 102 bytes, Stack size 0 bytes, stm32f1xx_hal_uart.o(.text), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[136]"></a>HAL_UART_DMAResume</STRONG> (Thumb, 98 bytes, Stack size 4 bytes, stm32f1xx_hal_uart.o(.text), UNUSED)
|
||||
<P><STRONG><a name="[135]"></a>HAL_UART_DMAResume</STRONG> (Thumb, 98 bytes, Stack size 4 bytes, stm32f1xx_hal_uart.o(.text), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[e9]"></a>HAL_UART_DMAStop</STRONG> (Thumb, 88 bytes, Stack size 8 bytes, stm32f1xx_hal_uart.o(.text), UNUSED)
|
||||
<BR><BR>[Calls]<UL><LI><a href="#[e0]">>></a> UART_EndTxTransfer
|
||||
<BR><BR>[Calls]<UL><LI><a href="#[bb]">>></a> HAL_DMA_Abort
|
||||
<LI><a href="#[e0]">>></a> UART_EndTxTransfer
|
||||
<LI><a href="#[e1]">>></a> UART_EndRxTransfer
|
||||
<LI><a href="#[bb]">>></a> HAL_DMA_Abort
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[ea]"></a>HAL_UART_Abort</STRONG> (Thumb, 148 bytes, Stack size 16 bytes, stm32f1xx_hal_uart.o(.text), UNUSED)
|
||||
|
|
@ -1313,53 +1310,53 @@ Global Symbols
|
|||
</UL>
|
||||
|
||||
<P><STRONG><a name="[f6]"></a>HAL_UART_IRQHandler</STRONG> (Thumb, 312 bytes, Stack size 8 bytes, stm32f1xx_hal_uart.o(.text), UNUSED)
|
||||
<BR><BR>[Calls]<UL><LI><a href="#[e2]">>></a> HAL_UART_ErrorCallback
|
||||
<BR><BR>[Calls]<UL><LI><a href="#[be]">>></a> HAL_DMA_Abort_IT
|
||||
<LI><a href="#[e2]">>></a> HAL_UART_ErrorCallback
|
||||
<LI><a href="#[f5]">>></a> UART_Receive_IT
|
||||
<LI><a href="#[f7]">>></a> UART_Transmit_IT
|
||||
<LI><a href="#[f4]">>></a> UART_EndTransmit_IT
|
||||
<LI><a href="#[e1]">>></a> UART_EndRxTransfer
|
||||
<LI><a href="#[be]">>></a> HAL_DMA_Abort_IT
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[137]"></a>HAL_LIN_SendBreak</STRONG> (Thumb, 70 bytes, Stack size 0 bytes, stm32f1xx_hal_uart.o(.text), UNUSED)
|
||||
<P><STRONG><a name="[136]"></a>HAL_LIN_SendBreak</STRONG> (Thumb, 70 bytes, Stack size 0 bytes, stm32f1xx_hal_uart.o(.text), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[138]"></a>HAL_MultiProcessor_EnterMuteMode</STRONG> (Thumb, 50 bytes, Stack size 0 bytes, stm32f1xx_hal_uart.o(.text), UNUSED)
|
||||
<P><STRONG><a name="[137]"></a>HAL_MultiProcessor_EnterMuteMode</STRONG> (Thumb, 50 bytes, Stack size 0 bytes, stm32f1xx_hal_uart.o(.text), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[139]"></a>HAL_MultiProcessor_ExitMuteMode</STRONG> (Thumb, 50 bytes, Stack size 0 bytes, stm32f1xx_hal_uart.o(.text), UNUSED)
|
||||
<P><STRONG><a name="[138]"></a>HAL_MultiProcessor_ExitMuteMode</STRONG> (Thumb, 50 bytes, Stack size 0 bytes, stm32f1xx_hal_uart.o(.text), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[13a]"></a>HAL_HalfDuplex_EnableTransmitter</STRONG> (Thumb, 54 bytes, Stack size 0 bytes, stm32f1xx_hal_uart.o(.text), UNUSED)
|
||||
<P><STRONG><a name="[139]"></a>HAL_HalfDuplex_EnableTransmitter</STRONG> (Thumb, 54 bytes, Stack size 0 bytes, stm32f1xx_hal_uart.o(.text), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[13b]"></a>HAL_HalfDuplex_EnableReceiver</STRONG> (Thumb, 54 bytes, Stack size 0 bytes, stm32f1xx_hal_uart.o(.text), UNUSED)
|
||||
<P><STRONG><a name="[13a]"></a>HAL_HalfDuplex_EnableReceiver</STRONG> (Thumb, 54 bytes, Stack size 0 bytes, stm32f1xx_hal_uart.o(.text), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[13c]"></a>HAL_UART_GetState</STRONG> (Thumb, 12 bytes, Stack size 0 bytes, stm32f1xx_hal_uart.o(.text), UNUSED)
|
||||
<P><STRONG><a name="[13b]"></a>HAL_UART_GetState</STRONG> (Thumb, 12 bytes, Stack size 0 bytes, stm32f1xx_hal_uart.o(.text), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[13d]"></a>HAL_UART_GetError</STRONG> (Thumb, 4 bytes, Stack size 0 bytes, stm32f1xx_hal_uart.o(.text), UNUSED)
|
||||
<P><STRONG><a name="[13c]"></a>HAL_UART_GetError</STRONG> (Thumb, 4 bytes, Stack size 0 bytes, stm32f1xx_hal_uart.o(.text), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[f9]"></a>__aeabi_memset</STRONG> (Thumb, 14 bytes, Stack size 0 bytes, memseta.o(.text), UNUSED)
|
||||
<BR><BR>[Called By]<UL><LI><a href="#[fa]">>></a> _memset$wrapper
|
||||
<LI><a href="#[f8]">>></a> __aeabi_memclr
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[13e]"></a>__aeabi_memset4</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, memseta.o(.text), UNUSED)
|
||||
<P><STRONG><a name="[13d]"></a>__aeabi_memset4</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, memseta.o(.text), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[13f]"></a>__aeabi_memset8</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, memseta.o(.text), UNUSED)
|
||||
<P><STRONG><a name="[13e]"></a>__aeabi_memset8</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, memseta.o(.text), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[f8]"></a>__aeabi_memclr</STRONG> (Thumb, 4 bytes, Stack size 0 bytes, memseta.o(.text), UNUSED)
|
||||
<BR><BR>[Calls]<UL><LI><a href="#[f9]">>></a> __aeabi_memset
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[6d]"></a>__aeabi_memclr4</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, memseta.o(.text))
|
||||
<BR><BR>[Called By]<UL><LI><a href="#[8f]">>></a> Paint_DrawNum
|
||||
<BR><BR>[Called By]<UL><LI><a href="#[91]">>></a> Paint_DrawNum
|
||||
<LI><a href="#[6c]">>></a> SystemClock_Config
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[140]"></a>__aeabi_memclr8</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, memseta.o(.text), UNUSED)
|
||||
<P><STRONG><a name="[13f]"></a>__aeabi_memclr8</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, memseta.o(.text), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[fa]"></a>_memset$wrapper</STRONG> (Thumb, 18 bytes, Stack size 8 bytes, memseta.o(.text), UNUSED)
|
||||
<BR><BR>[Calls]<UL><LI><a href="#[f9]">>></a> __aeabi_memset
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[141]"></a>__aeabi_uidiv</STRONG> (Thumb, 0 bytes, Stack size 12 bytes, uidiv.o(.text), UNUSED)
|
||||
<P><STRONG><a name="[140]"></a>__aeabi_uidiv</STRONG> (Thumb, 0 bytes, Stack size 12 bytes, uidiv.o(.text), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[fe]"></a>__aeabi_uidivmod</STRONG> (Thumb, 44 bytes, Stack size 12 bytes, uidiv.o(.text), UNUSED)
|
||||
<BR><BR>[Called By]<UL><LI><a href="#[fd]">>></a> _printf_core
|
||||
|
|
@ -1371,107 +1368,102 @@ Global Symbols
|
|||
<BR>[Called By]<UL><LI><a href="#[68]">>></a> _main_scatterload
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[142]"></a>__scatterload_rt2</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, init.o(.text), UNUSED)
|
||||
<P><STRONG><a name="[141]"></a>__scatterload_rt2</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, init.o(.text), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[fc]"></a>__0printf$3</STRONG> (Thumb, 22 bytes, Stack size 24 bytes, printf3.o(i.__0printf$3), UNUSED)
|
||||
<BR><BR>[Calls]<UL><LI><a href="#[fd]">>></a> _printf_core
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[143]"></a>__1printf$3</STRONG> (Thumb, 0 bytes, Stack size 24 bytes, printf3.o(i.__0printf$3), UNUSED)
|
||||
<P><STRONG><a name="[142]"></a>__1printf$3</STRONG> (Thumb, 0 bytes, Stack size 24 bytes, printf3.o(i.__0printf$3), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[6b]"></a>__2printf</STRONG> (Thumb, 0 bytes, Stack size 24 bytes, printf3.o(i.__0printf$3))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = __2printf
|
||||
</UL>
|
||||
<BR>[Called By]<UL><LI><a href="#[86]">>></a> Paint_SetScale
|
||||
<LI><a href="#[8d]">>></a> Paint_DrawString_EN
|
||||
<LI><a href="#[8b]">>></a> Paint_DrawRectangle
|
||||
<LI><a href="#[89]">>></a> Paint_DrawPoint
|
||||
<LI><a href="#[8f]">>></a> Paint_DrawNum
|
||||
<LI><a href="#[8a]">>></a> Paint_DrawLine
|
||||
<LI><a href="#[8c]">>></a> Paint_DrawCircle
|
||||
<LI><a href="#[8f]">>></a> Paint_DrawString_EN
|
||||
<LI><a href="#[8d]">>></a> Paint_DrawRectangle
|
||||
<LI><a href="#[8b]">>></a> Paint_DrawPoint
|
||||
<LI><a href="#[91]">>></a> Paint_DrawNum
|
||||
<LI><a href="#[8c]">>></a> Paint_DrawLine
|
||||
<LI><a href="#[8e]">>></a> Paint_DrawCircle
|
||||
<LI><a href="#[2]">>></a> HardFault_Handler
|
||||
<LI><a href="#[74]">>></a> EPD_7in3g_test
|
||||
<LI><a href="#[74]">>></a> EPD_4in37g_test
|
||||
<LI><a href="#[6a]">>></a> Error_Handler
|
||||
<LI><a href="#[9d]">>></a> Paint_SetMirroring
|
||||
<LI><a href="#[a0]">>></a> Paint_DrawChar
|
||||
<LI><a href="#[9e]">>></a> Paint_SetPixel
|
||||
<LI><a href="#[9c]">>></a> Paint_SetRotate
|
||||
<LI><a href="#[94]">>></a> EPD_7IN3G_ReadBusyH
|
||||
<LI><a href="#[95]">>></a> EPD_4IN37G_ReadBusyH
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[144]"></a>__scatterload_copy</STRONG> (Thumb, 14 bytes, Stack size unknown bytes, handlers.o(i.__scatterload_copy), UNUSED)
|
||||
<P><STRONG><a name="[143]"></a>__scatterload_copy</STRONG> (Thumb, 14 bytes, Stack size unknown bytes, handlers.o(i.__scatterload_copy), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[145]"></a>__scatterload_null</STRONG> (Thumb, 2 bytes, Stack size unknown bytes, handlers.o(i.__scatterload_null), UNUSED)
|
||||
<P><STRONG><a name="[144]"></a>__scatterload_null</STRONG> (Thumb, 2 bytes, Stack size unknown bytes, handlers.o(i.__scatterload_null), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[146]"></a>__scatterload_zeroinit</STRONG> (Thumb, 14 bytes, Stack size unknown bytes, handlers.o(i.__scatterload_zeroinit), UNUSED)
|
||||
<P><STRONG><a name="[145]"></a>__scatterload_zeroinit</STRONG> (Thumb, 14 bytes, Stack size unknown bytes, handlers.o(i.__scatterload_zeroinit), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[92]"></a>free</STRONG> (Thumb, 76 bytes, Stack size 8 bytes, malloc.o(i.free))
|
||||
<P><STRONG><a name="[93]"></a>free</STRONG> (Thumb, 76 bytes, Stack size 8 bytes, malloc.o(i.free))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = free
|
||||
</UL>
|
||||
<BR>[Called By]<UL><LI><a href="#[74]">>></a> EPD_7in3g_test
|
||||
<BR>[Called By]<UL><LI><a href="#[74]">>></a> EPD_4in37g_test
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[84]"></a>malloc</STRONG> (Thumb, 92 bytes, Stack size 20 bytes, malloc.o(i.malloc))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 20<LI>Call Chain = malloc
|
||||
</UL>
|
||||
<BR>[Called By]<UL><LI><a href="#[74]">>></a> EPD_7in3g_test
|
||||
<BR>[Called By]<UL><LI><a href="#[74]">>></a> EPD_4in37g_test
|
||||
</UL>
|
||||
<P>
|
||||
<H3>
|
||||
Local Symbols
|
||||
</H3>
|
||||
<P><STRONG><a name="[94]"></a>EPD_7IN3G_ReadBusyH</STRONG> (Thumb, 40 bytes, Stack size 8 bytes, epd_7in3g.o(.text))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = EPD_7IN3G_ReadBusyH ⇒ __2printf
|
||||
<P><STRONG><a name="[95]"></a>EPD_4IN37G_ReadBusyH</STRONG> (Thumb, 40 bytes, Stack size 8 bytes, epd_4in37g.o(.text))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = EPD_4IN37G_ReadBusyH ⇒ __2printf
|
||||
</UL>
|
||||
<BR>[Calls]<UL><LI><a href="#[75]">>></a> HAL_Delay
|
||||
<LI><a href="#[95]">>></a> HAL_GPIO_ReadPin
|
||||
<LI><a href="#[96]">>></a> HAL_GPIO_ReadPin
|
||||
<LI><a href="#[6b]">>></a> __2printf
|
||||
</UL>
|
||||
<BR>[Called By]<UL><LI><a href="#[82]">>></a> EPD_7IN3G_Init
|
||||
<LI><a href="#[90]">>></a> EPD_7IN3G_Display_part
|
||||
<LI><a href="#[83]">>></a> EPD_7IN3G_Clear
|
||||
<LI><a href="#[99]">>></a> EPD_7IN3G_Display
|
||||
<LI><a href="#[98]">>></a> EPD_7IN3G_TurnOnDisplay
|
||||
<BR>[Called By]<UL><LI><a href="#[8a]">>></a> EPD_4IN37G_Display
|
||||
<LI><a href="#[83]">>></a> EPD_4IN37G_Clear
|
||||
<LI><a href="#[99]">>></a> EPD_4IN37G_TurnOnDisplay
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[96]"></a>EPD_7IN3G_SendCommand</STRONG> (Thumb, 46 bytes, Stack size 16 bytes, epd_7in3g.o(.text))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 112<LI>Call Chain = EPD_7IN3G_SendCommand ⇒ DEV_SPI_WriteByte ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
|
||||
<P><STRONG><a name="[97]"></a>EPD_4IN37G_SendCommand</STRONG> (Thumb, 46 bytes, Stack size 16 bytes, epd_4in37g.o(.text))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 112<LI>Call Chain = EPD_4IN37G_SendCommand ⇒ DEV_SPI_WriteByte ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
|
||||
</UL>
|
||||
<BR>[Calls]<UL><LI><a href="#[76]">>></a> HAL_GPIO_WritePin
|
||||
<LI><a href="#[9a]">>></a> DEV_SPI_WriteByte
|
||||
</UL>
|
||||
<BR>[Called By]<UL><LI><a href="#[91]">>></a> EPD_7IN3G_Sleep
|
||||
<LI><a href="#[82]">>></a> EPD_7IN3G_Init
|
||||
<LI><a href="#[90]">>></a> EPD_7IN3G_Display_part
|
||||
<LI><a href="#[83]">>></a> EPD_7IN3G_Clear
|
||||
<LI><a href="#[99]">>></a> EPD_7IN3G_Display
|
||||
<LI><a href="#[98]">>></a> EPD_7IN3G_TurnOnDisplay
|
||||
<BR>[Called By]<UL><LI><a href="#[92]">>></a> EPD_4IN37G_Sleep
|
||||
<LI><a href="#[82]">>></a> EPD_4IN37G_Init
|
||||
<LI><a href="#[8a]">>></a> EPD_4IN37G_Display
|
||||
<LI><a href="#[83]">>></a> EPD_4IN37G_Clear
|
||||
<LI><a href="#[99]">>></a> EPD_4IN37G_TurnOnDisplay
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[97]"></a>EPD_7IN3G_SendData</STRONG> (Thumb, 46 bytes, Stack size 16 bytes, epd_7in3g.o(.text))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 112<LI>Call Chain = EPD_7IN3G_SendData ⇒ DEV_SPI_WriteByte ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
|
||||
<P><STRONG><a name="[98]"></a>EPD_4IN37G_SendData</STRONG> (Thumb, 46 bytes, Stack size 16 bytes, epd_4in37g.o(.text))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 112<LI>Call Chain = EPD_4IN37G_SendData ⇒ DEV_SPI_WriteByte ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
|
||||
</UL>
|
||||
<BR>[Calls]<UL><LI><a href="#[76]">>></a> HAL_GPIO_WritePin
|
||||
<LI><a href="#[9a]">>></a> DEV_SPI_WriteByte
|
||||
</UL>
|
||||
<BR>[Called By]<UL><LI><a href="#[91]">>></a> EPD_7IN3G_Sleep
|
||||
<LI><a href="#[82]">>></a> EPD_7IN3G_Init
|
||||
<LI><a href="#[90]">>></a> EPD_7IN3G_Display_part
|
||||
<LI><a href="#[83]">>></a> EPD_7IN3G_Clear
|
||||
<LI><a href="#[99]">>></a> EPD_7IN3G_Display
|
||||
<LI><a href="#[98]">>></a> EPD_7IN3G_TurnOnDisplay
|
||||
<BR>[Called By]<UL><LI><a href="#[92]">>></a> EPD_4IN37G_Sleep
|
||||
<LI><a href="#[82]">>></a> EPD_4IN37G_Init
|
||||
<LI><a href="#[8a]">>></a> EPD_4IN37G_Display
|
||||
<LI><a href="#[83]">>></a> EPD_4IN37G_Clear
|
||||
<LI><a href="#[99]">>></a> EPD_4IN37G_TurnOnDisplay
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[98]"></a>EPD_7IN3G_TurnOnDisplay</STRONG> (Thumb, 36 bytes, Stack size 8 bytes, epd_7in3g.o(.text))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 120<LI>Call Chain = EPD_7IN3G_TurnOnDisplay ⇒ EPD_7IN3G_SendData ⇒ DEV_SPI_WriteByte ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
|
||||
<P><STRONG><a name="[99]"></a>EPD_4IN37G_TurnOnDisplay</STRONG> (Thumb, 36 bytes, Stack size 8 bytes, epd_4in37g.o(.text))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 120<LI>Call Chain = EPD_4IN37G_TurnOnDisplay ⇒ EPD_4IN37G_SendData ⇒ DEV_SPI_WriteByte ⇒ HAL_SPI_Transmit ⇒ SPI_EndRxTxTransaction ⇒ SPI_WaitFlagStateUntilTimeout
|
||||
</UL>
|
||||
<BR>[Calls]<UL><LI><a href="#[97]">>></a> EPD_7IN3G_SendData
|
||||
<LI><a href="#[96]">>></a> EPD_7IN3G_SendCommand
|
||||
<LI><a href="#[94]">>></a> EPD_7IN3G_ReadBusyH
|
||||
<BR>[Calls]<UL><LI><a href="#[98]">>></a> EPD_4IN37G_SendData
|
||||
<LI><a href="#[97]">>></a> EPD_4IN37G_SendCommand
|
||||
<LI><a href="#[95]">>></a> EPD_4IN37G_ReadBusyH
|
||||
</UL>
|
||||
<BR>[Called By]<UL><LI><a href="#[90]">>></a> EPD_7IN3G_Display_part
|
||||
<LI><a href="#[83]">>></a> EPD_7IN3G_Clear
|
||||
<LI><a href="#[99]">>></a> EPD_7IN3G_Display
|
||||
<BR>[Called By]<UL><LI><a href="#[8a]">>></a> EPD_4IN37G_Display
|
||||
<LI><a href="#[83]">>></a> EPD_4IN37G_Clear
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[a4]"></a>SPI_WaitFlagStateUntilTimeout</STRONG> (Thumb, 210 bytes, Stack size 32 bytes, stm32f1xx_hal_spi.o(.text))
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load diff
|
|
@ -102,23 +102,23 @@ ARM Macro Assembler Page 2
|
|||
57 00001000 ; <o> Heap Size (in Bytes) <0x0-0xFFFFFFFF:8>
|
||||
58 00001000 ; </h>
|
||||
59 00001000
|
||||
60 00001000 00009000
|
||||
60 00001000 0000C000
|
||||
Heap_Size
|
||||
EQU 0x9000
|
||||
EQU 0xC000
|
||||
61 00001000
|
||||
62 00001000 AREA HEAP, NOINIT, READWRITE, ALIGN=
|
||||
3
|
||||
63 00000000 __heap_base
|
||||
64 00000000 Heap_Mem
|
||||
SPACE Heap_Size
|
||||
65 00009000 __heap_limit
|
||||
66 00009000
|
||||
67 00009000 PRESERVE8
|
||||
68 00009000 THUMB
|
||||
69 00009000
|
||||
70 00009000
|
||||
71 00009000 ; Vector Table Mapped to Address 0 at Reset
|
||||
72 00009000 AREA RESET, DATA, READONLY
|
||||
65 0000C000 __heap_limit
|
||||
66 0000C000
|
||||
67 0000C000 PRESERVE8
|
||||
68 0000C000 THUMB
|
||||
69 0000C000
|
||||
70 0000C000
|
||||
71 0000C000 ; Vector Table Mapped to Address 0 at Reset
|
||||
72 0000C000 AREA RESET, DATA, READONLY
|
||||
73 00000000 EXPORT __Vectors
|
||||
74 00000000 EXPORT __Vectors_End
|
||||
75 00000000 EXPORT __Vectors_Size
|
||||
|
|
@ -580,17 +580,17 @@ ARM Macro Assembler Page 9
|
|||
00000000
|
||||
Command Line: --debug --xref --diag_suppress=9931 --cpu=Cortex-M3 --apcs=interw
|
||||
ork --depend=epd-demo\startup_stm32f103xe.d -oepd-demo\startup_stm32f103xe.o -I
|
||||
.\RTE\_epd-demo -ID:\KEIL\azwz\ARM\PACK\ARM\CMSIS\5.9.0\CMSIS\Core\Include -ID:
|
||||
\KEIL\azwz\ARM\PACK\Keil\STM32F1xx_DFP\2.1.0\Device\Include --predefine="__MICR
|
||||
OLIB SETA 1" --predefine="__UVISION_VERSION SETA 526" --predefine="_RTE_ SETA 1
|
||||
.\RTE\_epd-demo -I"D:\Program Files\keil5\ARM\PACK\ARM\CMSIS\5.7.0\CMSIS\Core\I
|
||||
nclude" -I"D:\Program Files\keil5\ARM\PACK\Keil\STM32F1xx_DFP\2.3.0\Device\Incl
|
||||
ude" --predefine="__MICROLIB SETA 1" --predefine="__UVISION_VERSION SETA 525" -
|
||||
|
||||
|
||||
|
||||
ARM Macro Assembler Page 10
|
||||
|
||||
|
||||
" --predefine="STM32F10X_HD SETA 1" --list=startup_stm32f103xe.lst startup_stm3
|
||||
2f103xe.s
|
||||
-predefine="_RTE_ SETA 1" --predefine="STM32F10X_HD SETA 1" --list=startup_stm3
|
||||
2f103xe.lst startup_stm32f103xe.s
|
||||
|
||||
|
||||
|
||||
|
|
@ -653,7 +653,7 @@ Symbol: __heap_base
|
|||
Uses
|
||||
At line 351 in file startup_stm32f103xe.s
|
||||
Comment: __heap_base used once
|
||||
__heap_limit 00009000
|
||||
__heap_limit 0000C000
|
||||
|
||||
Symbol: __heap_limit
|
||||
Definitions
|
||||
|
|
@ -1414,7 +1414,7 @@ Symbol: WWDG_IRQHandler
|
|||
ARM Macro Assembler Page 1 Alphabetic symbol ordering
|
||||
Absolute symbols
|
||||
|
||||
Heap_Size 00009000
|
||||
Heap_Size 0000C000
|
||||
|
||||
Symbol: Heap_Size
|
||||
Definitions
|
||||
|
|
|
|||
|
|
@ -57,7 +57,7 @@ __initial_sp
|
|||
; <o> Heap Size (in Bytes) <0x0-0xFFFFFFFF:8>
|
||||
; </h>
|
||||
|
||||
Heap_Size EQU 0x9000
|
||||
Heap_Size EQU 0xC000
|
||||
|
||||
AREA HEAP, NOINIT, READWRITE, ALIGN=3
|
||||
__heap_base
|
||||
|
|
|
|||
|
|
@ -94,61 +94,62 @@ int main(void)
|
|||
MX_SPI1_Init();
|
||||
/* USER CODE BEGIN 2 */
|
||||
|
||||
// EPD_1in64g_test();
|
||||
// EPD_3in0g_test();
|
||||
// EPD_7in3g_test();
|
||||
|
||||
// EPD_1in02d_test();
|
||||
|
||||
// EPD_1in54_test();
|
||||
// EPD_1in54_V2_test();
|
||||
// EPD_1in54b_test();
|
||||
// EPD_1in54b_V2_test();
|
||||
// EPD_1in54c_test();
|
||||
// EPD_1in64g_test();
|
||||
// EPD_3in0g_test();
|
||||
// EPD_4in37g_test();
|
||||
// EPD_7in3g_test();
|
||||
|
||||
// EPD_2in7_test();
|
||||
// EPD_2in7b_test();
|
||||
// EPD_2in7b_V2_test();
|
||||
// EPD_1in02d_test();
|
||||
|
||||
// EPD_2in9_test();
|
||||
// EPD_2in9_V2_test();
|
||||
// EPD_2in9bc_test();
|
||||
// EPD_2in9b_V3_test();
|
||||
// EPD_2in9d_test();
|
||||
// EPD_1in54_test();
|
||||
// EPD_1in54_V2_test();
|
||||
// EPD_1in54b_test();
|
||||
// EPD_1in54b_V2_test();
|
||||
// EPD_1in54c_test();
|
||||
|
||||
// EPD_2in13_test();
|
||||
// EPD_2in13_V2_test();
|
||||
// EPD_2in13_V3_test();
|
||||
// EPD_2in13bc_test();
|
||||
// EPD_2in13b_V3_test();
|
||||
// EPD_2in13b_V4_test();
|
||||
// EPD_2in13d_test();
|
||||
|
||||
// EPD_2in66_test();
|
||||
// EPD_2in66b_test();
|
||||
|
||||
// EPD_3in52_test();
|
||||
// EPD_3in7_test();
|
||||
|
||||
// EPD_4in01f_test();
|
||||
|
||||
// EPD_4in2_test();
|
||||
// EPD_4in2bc_test();
|
||||
// EPD_4in2b_V2_test();
|
||||
// EPD_5in65f_test();
|
||||
|
||||
// EPD_5in83_test();
|
||||
// EPD_5in83_V2_test();
|
||||
// EPD_5in83bc_test();
|
||||
// EPD_5in83b_V2_test();
|
||||
// EPD_2in7_test();
|
||||
// EPD_2in7b_test();
|
||||
// EPD_2in7b_V2_test();
|
||||
|
||||
// EPD_7in5_test();
|
||||
// EPD_7in5_V2_test();
|
||||
// EPD_7in5bc_test();
|
||||
// EPD_7in5b_V2_test();
|
||||
// EPD_2in9_test();
|
||||
// EPD_2in9_V2_test();
|
||||
// EPD_2in9bc_test();
|
||||
// EPD_2in9b_V3_test();
|
||||
// EPD_2in9d_test();
|
||||
|
||||
// EPD_7in5_HD_test();
|
||||
// EPD_7in5b_HD_test();
|
||||
// EPD_2in13_test();
|
||||
// EPD_2in13_V2_test();
|
||||
// EPD_2in13_V3_test();
|
||||
// EPD_2in13bc_test();
|
||||
// EPD_2in13b_V3_test();
|
||||
// EPD_2in13b_V4_test();
|
||||
// EPD_2in13d_test();
|
||||
|
||||
// EPD_2in66_test();
|
||||
// EPD_2in66b_test();
|
||||
|
||||
// EPD_3in52_test();
|
||||
// EPD_3in7_test();
|
||||
|
||||
// EPD_4in01f_test();
|
||||
|
||||
// EPD_4in2_test();
|
||||
// EPD_4in2bc_test();
|
||||
// EPD_4in2b_V2_test();
|
||||
// EPD_5in65f_test();
|
||||
|
||||
// EPD_5in83_test();
|
||||
// EPD_5in83_V2_test();
|
||||
// EPD_5in83bc_test();
|
||||
// EPD_5in83b_V2_test();
|
||||
|
||||
// EPD_7in5_test();
|
||||
// EPD_7in5_V2_test();
|
||||
// EPD_7in5bc_test();
|
||||
// EPD_7in5b_V2_test();
|
||||
|
||||
// EPD_7in5_HD_test();
|
||||
// EPD_7in5b_HD_test();
|
||||
|
||||
|
||||
/* USER CODE END 2 */
|
||||
|
|
|
|||
|
|
@ -29,7 +29,6 @@
|
|||
******************************************************************************/
|
||||
#include "EPD_Test.h"
|
||||
#include "EPD_1in64g.h"
|
||||
#include "time.h"
|
||||
|
||||
int EPD_1in64g_test(void)
|
||||
{
|
||||
|
|
@ -40,9 +39,7 @@ int EPD_1in64g_test(void)
|
|||
|
||||
printf("e-Paper Init and Clear...\r\n");
|
||||
EPD_1IN64G_Init();
|
||||
|
||||
printf("White \r\n");
|
||||
EPD_1IN64G_Clear(EPD_1IN64G_WHITE); // While
|
||||
EPD_1IN64G_Clear(EPD_1IN64G_WHITE);
|
||||
DEV_Delay_ms(2000);
|
||||
|
||||
//Create a new image cache
|
||||
|
|
@ -57,40 +54,39 @@ int EPD_1in64g_test(void)
|
|||
Paint_NewImage(BlackImage, EPD_1IN64G_WIDTH, EPD_1IN64G_HEIGHT, 0, EPD_1IN64G_WHITE);
|
||||
Paint_SetScale(4);
|
||||
|
||||
#if 1 // show bmp
|
||||
printf("show BMP-----------------\r\n");
|
||||
#if 1 // show image for array
|
||||
printf("show image for array\r\n");
|
||||
Paint_SelectImage(BlackImage);
|
||||
Paint_Clear(WHITE);
|
||||
Paint_DrawBitMap(gImage_1in64g);
|
||||
Paint_Clear(EPD_1IN64G_WHITE);
|
||||
Paint_DrawBitMap(gImage_1in64g);
|
||||
|
||||
EPD_1IN64G_Display(BlackImage);
|
||||
DEV_Delay_ms(2000);
|
||||
|
||||
#endif
|
||||
|
||||
#if 1 // Drawing on the image
|
||||
//1.Select Image
|
||||
printf("SelectImage:BlackImage\r\n");
|
||||
Paint_SelectImage(BlackImage);
|
||||
Paint_Clear(0x55);
|
||||
Paint_Clear(EPD_1IN64G_WHITE);
|
||||
|
||||
// 2.Drawing on the image
|
||||
printf("Drawing:BlackImage\r\n");
|
||||
Paint_DrawPoint(10, 80, Red_4Color, DOT_PIXEL_1X1, DOT_STYLE_DFT);
|
||||
Paint_DrawPoint(10, 90, Yellow_4Color, DOT_PIXEL_2X2, DOT_STYLE_DFT);
|
||||
Paint_DrawPoint(10, 100, Black_4Color, DOT_PIXEL_3X3, DOT_STYLE_DFT);
|
||||
Paint_DrawLine(20, 70, 70, 120, Red_4Color, DOT_PIXEL_1X1, LINE_STYLE_SOLID);
|
||||
Paint_DrawLine(70, 70, 20, 120, Red_4Color, DOT_PIXEL_1X1, LINE_STYLE_SOLID);
|
||||
Paint_DrawRectangle(20, 70, 70, 120, Yellow_4Color, DOT_PIXEL_1X1, DRAW_FILL_EMPTY);
|
||||
Paint_DrawRectangle(80, 70, 130, 120, Yellow_4Color, DOT_PIXEL_1X1, DRAW_FILL_FULL);
|
||||
Paint_DrawCircle(45, 95, 20, Black_4Color, DOT_PIXEL_1X1, DRAW_FILL_EMPTY);
|
||||
Paint_DrawCircle(105, 95, 20, Black_4Color, DOT_PIXEL_1X1, DRAW_FILL_FULL);
|
||||
Paint_DrawLine(85, 95, 125, 95, Red_4Color, DOT_PIXEL_1X1, LINE_STYLE_DOTTED);
|
||||
Paint_DrawLine(105, 75, 105, 115, Yellow_4Color, DOT_PIXEL_1X1, LINE_STYLE_DOTTED);
|
||||
Paint_DrawString_EN(10, 0, "Red, yellow, white and black", &Font16, Red_4Color, Yellow_4Color);
|
||||
Paint_DrawString_EN(10, 35, "Four color e-Paper", &Font12, Yellow_4Color, Black_4Color);
|
||||
Paint_DrawString_CN(10, 125, "微雪电子", &Font24CN, Red_4Color, White_4Color);
|
||||
Paint_DrawNum(10, 50, 123456, &Font12, Red_4Color, White_4Color);
|
||||
Paint_DrawPoint(10, 80, EPD_1IN64G_RED, DOT_PIXEL_1X1, DOT_STYLE_DFT);
|
||||
Paint_DrawPoint(10, 90, EPD_1IN64G_YELLOW, DOT_PIXEL_2X2, DOT_STYLE_DFT);
|
||||
Paint_DrawPoint(10, 100, EPD_1IN64G_BLACK, DOT_PIXEL_3X3, DOT_STYLE_DFT);
|
||||
Paint_DrawLine(20, 70, 70, 120, EPD_1IN64G_RED, DOT_PIXEL_1X1, LINE_STYLE_SOLID);
|
||||
Paint_DrawLine(70, 70, 20, 120, EPD_1IN64G_RED, DOT_PIXEL_1X1, LINE_STYLE_SOLID);
|
||||
Paint_DrawRectangle(20, 70, 70, 120, EPD_1IN64G_YELLOW, DOT_PIXEL_1X1, DRAW_FILL_EMPTY);
|
||||
Paint_DrawRectangle(80, 70, 130, 120, EPD_1IN64G_YELLOW, DOT_PIXEL_1X1, DRAW_FILL_FULL);
|
||||
Paint_DrawCircle(45, 95, 20, EPD_1IN64G_BLACK, DOT_PIXEL_1X1, DRAW_FILL_EMPTY);
|
||||
Paint_DrawCircle(105, 95, 20, EPD_1IN64G_BLACK, DOT_PIXEL_1X1, DRAW_FILL_FULL);
|
||||
Paint_DrawLine(85, 95, 125, 95, EPD_1IN64G_RED, DOT_PIXEL_1X1, LINE_STYLE_DOTTED);
|
||||
Paint_DrawLine(105, 75, 105, 115, EPD_1IN64G_YELLOW, DOT_PIXEL_1X1, LINE_STYLE_DOTTED);
|
||||
Paint_DrawString_EN(10, 0, "Red, yellow, white and black", &Font16, EPD_1IN64G_RED, EPD_1IN64G_YELLOW);
|
||||
Paint_DrawString_EN(10, 35, "Four color e-Paper", &Font12, EPD_1IN64G_YELLOW, EPD_1IN64G_BLACK);
|
||||
Paint_DrawString_CN(10, 125, "微雪电子", &Font24CN, EPD_1IN64G_RED, EPD_1IN64G_WHITE);
|
||||
Paint_DrawNum(10, 50, 123456, &Font12, EPD_1IN64G_RED, EPD_1IN64G_WHITE);
|
||||
|
||||
printf("EPD_Display\r\n");
|
||||
EPD_1IN64G_Display(BlackImage);
|
||||
|
|
@ -101,13 +97,13 @@ int EPD_1in64g_test(void)
|
|||
//1.Select Image
|
||||
printf("SelectImage:BlackImage\r\n");
|
||||
Paint_SelectImage(BlackImage);
|
||||
Paint_Clear(0x55);
|
||||
Paint_Clear(EPD_1IN64G_WHITE);
|
||||
|
||||
// 2.Drawing on the image
|
||||
printf("Drawing:BlackImage\r\n");
|
||||
Paint_DrawRectangle(1, 1, 168, 55, Red_4Color, DOT_PIXEL_1X1, DRAW_FILL_FULL);
|
||||
Paint_DrawRectangle(1, 112, 167, 167, Yellow_4Color, DOT_PIXEL_1X1, DRAW_FILL_FULL);
|
||||
Paint_DrawRectangle(59, 1, 109, 167, Black_4Color, DOT_PIXEL_1X1, DRAW_FILL_FULL);
|
||||
Paint_DrawRectangle(1, 1, 168, 55, EPD_1IN64G_RED, DOT_PIXEL_1X1, DRAW_FILL_FULL);
|
||||
Paint_DrawRectangle(1, 112, 167, 167, EPD_1IN64G_YELLOW, DOT_PIXEL_1X1, DRAW_FILL_FULL);
|
||||
Paint_DrawRectangle(59, 1, 109, 167, EPD_1IN64G_BLACK, DOT_PIXEL_1X1, DRAW_FILL_FULL);
|
||||
|
||||
printf("EPD_Display\r\n");
|
||||
EPD_1IN64G_Display(BlackImage);
|
||||
|
|
@ -118,33 +114,24 @@ int EPD_1in64g_test(void)
|
|||
//1.Select Image
|
||||
printf("SelectImage:BlackImage\r\n");
|
||||
Paint_SelectImage(BlackImage);
|
||||
Paint_Clear(0x55);
|
||||
Paint_Clear(EPD_1IN64G_WHITE);
|
||||
|
||||
int hNumber, hWidth, vNumber, vWidth;
|
||||
hNumber = 8;
|
||||
hWidth = EPD_1IN64G_HEIGHT/hNumber; // 168/16=21
|
||||
vNumber = 8;
|
||||
vWidth = EPD_1IN64G_WIDTH/vNumber; // 168/16=21
|
||||
|
||||
int wNumber, lNumber;
|
||||
wNumber = (EPD_1IN64G_WIDTH/80)==0 ? (EPD_1IN64G_WIDTH/80) : (EPD_1IN64G_WIDTH/80)+1;
|
||||
lNumber = (EPD_1IN64G_HEIGHT/20)==0 ? (EPD_1IN64G_HEIGHT/20) : (EPD_1IN64G_HEIGHT/20)+1;
|
||||
// 2.Drawing on the image
|
||||
printf("Drawing:BlackImage\r\n");
|
||||
for(int j=0; j<lNumber; j++) {
|
||||
if(j%2 == 0) {
|
||||
for(int i=0; i<wNumber; i++) {
|
||||
Paint_DrawRectangle(1+i*80, 1+j*20, 20+i*80, 20+j*20, Black_4Color, DOT_PIXEL_1X1, DRAW_FILL_FULL);
|
||||
Paint_DrawRectangle(21+i*80, 1+j*20, 40+i*80, 20+j*20, White_4Color, DOT_PIXEL_1X1, DRAW_FILL_FULL);
|
||||
Paint_DrawRectangle(41+i*80, 1+j*20, 60+i*80, 20+j*20, Yellow_4Color, DOT_PIXEL_1X1, DRAW_FILL_FULL);
|
||||
Paint_DrawRectangle(61+i*80, 1+j*20, 80+i*80, 20+j*20, Red_4Color, DOT_PIXEL_1X1, DRAW_FILL_FULL);
|
||||
}
|
||||
for(int i=0; i<hNumber; i++) { // horizontal
|
||||
Paint_DrawRectangle(1, 1+i*hWidth, EPD_1IN64G_WIDTH, hWidth*(1+i), EPD_1IN64G_BLACK + (i % 2), DOT_PIXEL_1X1, DRAW_FILL_FULL);
|
||||
}
|
||||
for(int i=0; i<vNumber; i++) { // vertical
|
||||
if(i%2) {
|
||||
Paint_DrawRectangle(1+i*vWidth, 1, vWidth*(i+1), EPD_1IN64G_HEIGHT, EPD_1IN64G_YELLOW + (i/2%2), DOT_PIXEL_1X1, DRAW_FILL_FULL);
|
||||
}
|
||||
|
||||
else {
|
||||
for(int i=0; i<wNumber; i++) {
|
||||
Paint_DrawRectangle(1+i*80, 1+j*20, 20+i*80, 20+j*20, Yellow_4Color, DOT_PIXEL_1X1, DRAW_FILL_FULL);
|
||||
Paint_DrawRectangle(21+i*80, 1+j*20, 40+i*80, 20+j*20, Red_4Color, DOT_PIXEL_1X1, DRAW_FILL_FULL);
|
||||
Paint_DrawRectangle(41+i*80, 1+j*20, 60+i*80, 20+j*20, Black_4Color, DOT_PIXEL_1X1, DRAW_FILL_FULL);
|
||||
Paint_DrawRectangle(61+i*80, 1+j*20, 80+i*80, 20+j*20, White_4Color, DOT_PIXEL_1X1, DRAW_FILL_FULL);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
printf("EPD_Display\r\n");
|
||||
EPD_1IN64G_Display(BlackImage);
|
||||
|
|
|
|||
|
|
@ -40,8 +40,6 @@ int EPD_3in0g_test(void)
|
|||
|
||||
printf("e-Paper Init and Clear...\r\n");
|
||||
EPD_3IN0G_Init();
|
||||
|
||||
printf("Black \r\n");
|
||||
EPD_3IN0G_Clear(EPD_3IN0G_WHITE); // WHITE
|
||||
DEV_Delay_ms(2000);
|
||||
|
||||
|
|
@ -57,15 +55,14 @@ int EPD_3in0g_test(void)
|
|||
Paint_NewImage(BlackImage, EPD_3IN0G_WIDTH, EPD_3IN0G_HEIGHT, 0, EPD_3IN0G_WHITE);
|
||||
Paint_SetScale(4);
|
||||
|
||||
#if 1 // show bmp
|
||||
printf("show BMP-----------------\r\n");
|
||||
#if 1 // show image for array
|
||||
printf("show image for array\r\n");
|
||||
EPD_3IN0G_Init();
|
||||
Paint_SelectImage(BlackImage);
|
||||
Paint_Clear(WHITE);
|
||||
Paint_DrawBitMap(gImage_3in0g);
|
||||
Paint_Clear(EPD_3IN0G_WHITE);
|
||||
Paint_DrawBitMap(gImage_3in0g);
|
||||
EPD_3IN0G_Display(BlackImage);
|
||||
DEV_Delay_ms(2000);
|
||||
|
||||
#endif
|
||||
|
||||
#if 1 // Drawing on the image
|
||||
|
|
@ -73,25 +70,25 @@ int EPD_3in0g_test(void)
|
|||
EPD_3IN0G_Init();
|
||||
printf("SelectImage:BlackImage\r\n");
|
||||
Paint_SelectImage(BlackImage);
|
||||
Paint_Clear(0x55);
|
||||
Paint_Clear(EPD_3IN0G_WHITE);
|
||||
|
||||
// 2.Drawing on the image
|
||||
printf("Drawing:BlackImage\r\n");
|
||||
Paint_DrawPoint(10, 80, Red_4Color, DOT_PIXEL_1X1, DOT_STYLE_DFT);
|
||||
Paint_DrawPoint(10, 90, Yellow_4Color, DOT_PIXEL_2X2, DOT_STYLE_DFT);
|
||||
Paint_DrawPoint(10, 100, Black_4Color, DOT_PIXEL_3X3, DOT_STYLE_DFT);
|
||||
Paint_DrawLine(20, 70, 70, 120, Red_4Color, DOT_PIXEL_1X1, LINE_STYLE_SOLID);
|
||||
Paint_DrawLine(70, 70, 20, 120, Red_4Color, DOT_PIXEL_1X1, LINE_STYLE_SOLID);
|
||||
Paint_DrawRectangle(20, 70, 70, 120, Yellow_4Color, DOT_PIXEL_1X1, DRAW_FILL_EMPTY);
|
||||
Paint_DrawRectangle(80, 70, 130, 120, Yellow_4Color, DOT_PIXEL_1X1, DRAW_FILL_FULL);
|
||||
Paint_DrawCircle(45, 95, 20, Black_4Color, DOT_PIXEL_1X1, DRAW_FILL_EMPTY);
|
||||
Paint_DrawCircle(105, 95, 20, Black_4Color, DOT_PIXEL_1X1, DRAW_FILL_FULL);
|
||||
Paint_DrawLine(85, 95, 125, 95, Red_4Color, DOT_PIXEL_1X1, LINE_STYLE_DOTTED);
|
||||
Paint_DrawLine(105, 75, 105, 115, Yellow_4Color, DOT_PIXEL_1X1, LINE_STYLE_DOTTED);
|
||||
Paint_DrawString_EN(10, 0, "Red, yellow, white and black", &Font16, Red_4Color, Yellow_4Color);
|
||||
Paint_DrawString_EN(10, 35, "Four color e-Paper", &Font12, Yellow_4Color, Black_4Color);
|
||||
Paint_DrawString_CN(10, 125, "΢ѩµç×Ó", &Font24CN, Red_4Color, White_4Color);
|
||||
Paint_DrawNum(10, 50, 123456, &Font12, Red_4Color, White_4Color);
|
||||
Paint_DrawPoint(10, 80, EPD_3IN0G_RED, DOT_PIXEL_1X1, DOT_STYLE_DFT);
|
||||
Paint_DrawPoint(10, 90, EPD_3IN0G_YELLOW, DOT_PIXEL_2X2, DOT_STYLE_DFT);
|
||||
Paint_DrawPoint(10, 100, EPD_3IN0G_BLACK, DOT_PIXEL_3X3, DOT_STYLE_DFT);
|
||||
Paint_DrawLine(20, 70, 70, 120, EPD_3IN0G_RED, DOT_PIXEL_1X1, LINE_STYLE_SOLID);
|
||||
Paint_DrawLine(70, 70, 20, 120, EPD_3IN0G_RED, DOT_PIXEL_1X1, LINE_STYLE_SOLID);
|
||||
Paint_DrawRectangle(20, 70, 70, 120, EPD_3IN0G_YELLOW, DOT_PIXEL_1X1, DRAW_FILL_EMPTY);
|
||||
Paint_DrawRectangle(80, 70, 130, 120, EPD_3IN0G_YELLOW, DOT_PIXEL_1X1, DRAW_FILL_FULL);
|
||||
Paint_DrawCircle(45, 95, 20, EPD_3IN0G_BLACK, DOT_PIXEL_1X1, DRAW_FILL_EMPTY);
|
||||
Paint_DrawCircle(105, 95, 20, EPD_3IN0G_BLACK, DOT_PIXEL_1X1, DRAW_FILL_FULL);
|
||||
Paint_DrawLine(85, 95, 125, 95, EPD_3IN0G_RED, DOT_PIXEL_1X1, LINE_STYLE_DOTTED);
|
||||
Paint_DrawLine(105, 75, 105, 115, EPD_3IN0G_YELLOW, DOT_PIXEL_1X1, LINE_STYLE_DOTTED);
|
||||
Paint_DrawString_EN(10, 0, "Red, yellow, white and black", &Font16, EPD_3IN0G_RED, EPD_3IN0G_YELLOW);
|
||||
Paint_DrawString_EN(10, 35, "Four color e-Paper", &Font12, EPD_3IN0G_YELLOW, EPD_3IN0G_BLACK);
|
||||
Paint_DrawString_CN(10, 125, "微雪电子", &Font24CN, EPD_3IN0G_RED, EPD_3IN0G_WHITE);
|
||||
Paint_DrawNum(10, 50, 123456, &Font12, EPD_3IN0G_RED, EPD_3IN0G_WHITE);
|
||||
|
||||
printf("EPD_Display\r\n");
|
||||
EPD_3IN0G_Display(BlackImage);
|
||||
|
|
@ -103,13 +100,13 @@ int EPD_3in0g_test(void)
|
|||
EPD_3IN0G_Init();
|
||||
printf("SelectImage:BlackImage\r\n");
|
||||
Paint_SelectImage(BlackImage);
|
||||
Paint_Clear(0x55);
|
||||
Paint_Clear(EPD_3IN0G_WHITE);
|
||||
|
||||
// 2.Drawing on the image
|
||||
printf("Drawing:BlackImage\r\n");
|
||||
Paint_DrawRectangle(1, 1, 167, 86, Red_4Color, DOT_PIXEL_1X1, DRAW_FILL_FULL);
|
||||
Paint_DrawRectangle(1, 314, 167, 399, Yellow_4Color, DOT_PIXEL_1X1, DRAW_FILL_FULL);
|
||||
Paint_DrawRectangle(59, 1, 109, 399, Black_4Color, DOT_PIXEL_1X1, DRAW_FILL_FULL);
|
||||
Paint_DrawRectangle(1, 1, 167, 86, EPD_3IN0G_RED, DOT_PIXEL_1X1, DRAW_FILL_FULL);
|
||||
Paint_DrawRectangle(1, 314, 167, 399, EPD_3IN0G_YELLOW, DOT_PIXEL_1X1, DRAW_FILL_FULL);
|
||||
Paint_DrawRectangle(59, 1, 109, 399, EPD_3IN0G_BLACK, DOT_PIXEL_1X1, DRAW_FILL_FULL);
|
||||
|
||||
printf("EPD_Display\r\n");
|
||||
EPD_3IN0G_Display(BlackImage);
|
||||
|
|
@ -121,34 +118,24 @@ int EPD_3in0g_test(void)
|
|||
EPD_3IN0G_Init();
|
||||
printf("SelectImage:BlackImage\r\n");
|
||||
Paint_SelectImage(BlackImage);
|
||||
Paint_Clear(0x55);
|
||||
Paint_Clear(EPD_3IN0G_WHITE);
|
||||
|
||||
int hNumber, hWidth, vNumber, vWidth;
|
||||
hNumber = 20;
|
||||
hWidth = EPD_3IN0G_HEIGHT/hNumber; // 400/20=20
|
||||
vNumber = 8;
|
||||
vWidth = EPD_3IN0G_WIDTH/vNumber; // 168/8=21
|
||||
|
||||
int wNumber, lNumber;
|
||||
wNumber = (EPD_3IN0G_WIDTH/80)==0 ? (EPD_3IN0G_WIDTH/80) : (EPD_3IN0G_WIDTH/80)+1;
|
||||
lNumber = (EPD_3IN0G_HEIGHT/20)==0 ? (EPD_3IN0G_HEIGHT/20) : (EPD_3IN0G_HEIGHT/20)+1;
|
||||
// 2.Drawing on the image
|
||||
printf("Drawing:BlackImage\r\n");
|
||||
for(int j=0; j<lNumber; j++) {
|
||||
if(j%2 == 0) {
|
||||
for(int i=0; i<wNumber; i++) {
|
||||
Paint_DrawRectangle(1+i*80, 1+j*20, 20+i*80, 20+j*20, Red_4Color, DOT_PIXEL_1X1, DRAW_FILL_FULL);
|
||||
Paint_DrawRectangle(21+i*80, 1+j*20, 40+i*80, 20+j*20, Yellow_4Color, DOT_PIXEL_1X1, DRAW_FILL_FULL);
|
||||
Paint_DrawRectangle(41+i*80, 1+j*20, 60+i*80, 20+j*20, White_4Color, DOT_PIXEL_1X1, DRAW_FILL_FULL);
|
||||
Paint_DrawRectangle(61+i*80, 1+j*20, 80+i*80, 20+j*20, Black_4Color, DOT_PIXEL_1X1, DRAW_FILL_FULL);
|
||||
}
|
||||
for(int i=0; i<hNumber; i++) { // horizontal
|
||||
Paint_DrawRectangle(1, 1+i*hWidth, EPD_3IN0G_WIDTH, hWidth*(1+i), EPD_3IN0G_BLACK + (i % 2), DOT_PIXEL_1X1, DRAW_FILL_FULL);
|
||||
}
|
||||
for(int i=0; i<vNumber; i++) { // vertical
|
||||
if(i%2) {
|
||||
Paint_DrawRectangle(1+i*vWidth, 1, vWidth*(i+1), EPD_3IN0G_HEIGHT, EPD_3IN0G_YELLOW + (i/2%2), DOT_PIXEL_1X1, DRAW_FILL_FULL);
|
||||
}
|
||||
|
||||
else {
|
||||
for(int i=0; i<wNumber; i++) {
|
||||
Paint_DrawRectangle(1+i*80, 1+j*20, 20+i*80, 20+j*20, White_4Color, DOT_PIXEL_1X1, DRAW_FILL_FULL);
|
||||
Paint_DrawRectangle(21+i*80, 1+j*20, 40+i*80, 20+j*20, Black_4Color, DOT_PIXEL_1X1, DRAW_FILL_FULL);
|
||||
Paint_DrawRectangle(41+i*80, 1+j*20, 60+i*80, 20+j*20, Red_4Color, DOT_PIXEL_1X1, DRAW_FILL_FULL);
|
||||
Paint_DrawRectangle(61+i*80, 1+j*20, 80+i*80, 20+j*20, Yellow_4Color, DOT_PIXEL_1X1, DRAW_FILL_FULL);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
printf("EPD_Display\r\n");
|
||||
EPD_3IN0G_Display(BlackImage);
|
||||
DEV_Delay_ms(3000);
|
||||
|
|
|
|||
|
|
@ -39,7 +39,7 @@ int EPD_3in52_test(void)
|
|||
}
|
||||
|
||||
printf("e-Paper Init and Clear...\r\n");
|
||||
EPD_3IN52_Init();
|
||||
EPD_3IN52_Init();
|
||||
|
||||
EPD_3IN52_display_NUM(EPD_3IN52_WHITE);
|
||||
EPD_3IN52_lut_GC();
|
||||
|
|
|
|||
135
STM32/STM32-F103ZET6/User/Examples/EPD_4in37g_test.c
Normal file
135
STM32/STM32-F103ZET6/User/Examples/EPD_4in37g_test.c
Normal file
|
|
@ -0,0 +1,135 @@
|
|||
/*****************************************************************************
|
||||
* | File : EPD_4in37g_test.c
|
||||
* | Author : Waveshare team
|
||||
* | Function : 4.37inch e-Paper (G) test demo
|
||||
* | Info :
|
||||
*----------------
|
||||
* | This version: V1.0
|
||||
* | Date : 2022-08-15
|
||||
* | Info :
|
||||
#
|
||||
# Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
# of this software and associated documnetation files (the "Software"), to deal
|
||||
# in the Software without restriction, including without limitation the rights
|
||||
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
# copies of the Software, and to permit persons to whom the Software is
|
||||
# furished to do so, subject to the following conditions:
|
||||
#
|
||||
# The above copyright notice and this permission notice shall be included in
|
||||
# all copies or substantial portions of the Software.
|
||||
#
|
||||
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
# THE SOFTWARE.
|
||||
#
|
||||
******************************************************************************/
|
||||
#include "EPD_Test.h"
|
||||
#include "EPD_4in37g.h"
|
||||
|
||||
int EPD_4in37g_test(void)
|
||||
{
|
||||
printf("EPD_4IN37G_test Demo\r\n");
|
||||
if(DEV_Module_Init()!=0){
|
||||
return -1;
|
||||
}
|
||||
|
||||
printf("e-Paper Init and Clear...\r\n");
|
||||
EPD_4IN37G_Init();
|
||||
EPD_4IN37G_Clear(EPD_4IN37G_WHITE); // WHITE
|
||||
DEV_Delay_ms(2000);
|
||||
|
||||
//Create a new image cache
|
||||
UBYTE *BlackImage;
|
||||
/* you have to edit the startup_stm32fxxx.s file and set a big enough heap size */
|
||||
UWORD Imagesize = ((EPD_4IN37G_WIDTH % 4 == 0)? (EPD_4IN37G_WIDTH / 4 ): (EPD_4IN37G_WIDTH / 4 + 1)) * EPD_4IN37G_HEIGHT;
|
||||
if((BlackImage = (UBYTE *)malloc(Imagesize)) == NULL) {
|
||||
printf("Failed to apply for black memory...\r\n");
|
||||
return -1;
|
||||
}
|
||||
printf("Paint_NewImage\r\n");
|
||||
Paint_NewImage(BlackImage, EPD_4IN37G_WIDTH, EPD_4IN37G_HEIGHT, 0, EPD_4IN37G_WHITE);
|
||||
Paint_SetScale(4);
|
||||
|
||||
#if 1 // show image for array
|
||||
printf("show image for array\r\n");
|
||||
Paint_SelectImage(BlackImage);
|
||||
Paint_Clear(EPD_4IN37G_WHITE);
|
||||
Paint_DrawBitMap(Image4color);
|
||||
EPD_4IN37G_Display(BlackImage);
|
||||
DEV_Delay_ms(2000);
|
||||
#endif
|
||||
|
||||
#if 1 // Drawing on the image
|
||||
//1.Select Image
|
||||
printf("SelectImage:BlackImage\r\n");
|
||||
Paint_SelectImage(BlackImage);
|
||||
Paint_Clear(EPD_4IN37G_WHITE);
|
||||
|
||||
// 2.Drawing on the image
|
||||
printf("Drawing:BlackImage\r\n");
|
||||
Paint_DrawPoint(10, 80, EPD_4IN37G_RED, DOT_PIXEL_1X1, DOT_STYLE_DFT);
|
||||
Paint_DrawPoint(10, 90, EPD_4IN37G_YELLOW, DOT_PIXEL_2X2, DOT_STYLE_DFT);
|
||||
Paint_DrawPoint(10, 100, EPD_4IN37G_BLACK, DOT_PIXEL_3X3, DOT_STYLE_DFT);
|
||||
Paint_DrawLine(20, 70, 70, 120, EPD_4IN37G_RED, DOT_PIXEL_1X1, LINE_STYLE_SOLID);
|
||||
Paint_DrawLine(70, 70, 20, 120, EPD_4IN37G_RED, DOT_PIXEL_1X1, LINE_STYLE_SOLID);
|
||||
Paint_DrawRectangle(20, 70, 70, 120, EPD_4IN37G_YELLOW, DOT_PIXEL_1X1, DRAW_FILL_EMPTY);
|
||||
Paint_DrawRectangle(80, 70, 130, 120, EPD_4IN37G_YELLOW, DOT_PIXEL_1X1, DRAW_FILL_FULL);
|
||||
Paint_DrawCircle(45, 95, 20, EPD_4IN37G_BLACK, DOT_PIXEL_1X1, DRAW_FILL_EMPTY);
|
||||
Paint_DrawCircle(105, 95, 20, EPD_4IN37G_BLACK, DOT_PIXEL_1X1, DRAW_FILL_FULL);
|
||||
Paint_DrawLine(85, 95, 125, 95, EPD_4IN37G_YELLOW, DOT_PIXEL_1X1, LINE_STYLE_DOTTED);
|
||||
Paint_DrawLine(105, 75, 105, 115, EPD_4IN37G_RED, DOT_PIXEL_1X1, LINE_STYLE_DOTTED);
|
||||
Paint_DrawString_EN(10, 0, "Red, yellow, white and black", &Font20, EPD_4IN37G_YELLOW, EPD_4IN37G_WHITE);
|
||||
Paint_DrawString_EN(10, 30, "Four color e-Paper", &Font12, EPD_4IN37G_RED, EPD_4IN37G_BLACK);
|
||||
Paint_DrawString_CN(10, 125, "微雪电子", &Font24CN, EPD_4IN37G_WHITE, EPD_4IN37G_RED);
|
||||
Paint_DrawNum(10, 50, 123456, &Font12, EPD_4IN37G_WHITE, EPD_4IN37G_BLACK);
|
||||
|
||||
printf("EPD_Display\r\n");
|
||||
EPD_4IN37G_Display(BlackImage);
|
||||
DEV_Delay_ms(3000);
|
||||
#endif
|
||||
|
||||
#if 1 // Drawing on the image
|
||||
//1.Select Image
|
||||
printf("SelectImage:BlackImage\r\n");
|
||||
Paint_SelectImage(BlackImage);
|
||||
Paint_Clear(EPD_4IN37G_WHITE);
|
||||
|
||||
int hNumber, hWidth, vNumber, vWidth;
|
||||
hNumber = 16;
|
||||
hWidth = EPD_4IN37G_HEIGHT/hNumber; // 368/16=23
|
||||
vNumber = 16;
|
||||
vWidth = EPD_4IN37G_WIDTH/vNumber; // 512/16=32
|
||||
|
||||
// 2.Drawing on the image
|
||||
printf("Drawing:BlackImage\r\n");
|
||||
for(int i=0; i<hNumber; i++) { // horizontal
|
||||
Paint_DrawRectangle(1, 1+i*hWidth, EPD_4IN37G_WIDTH, hWidth*(1+i), EPD_4IN37G_BLACK + (i % 2), DOT_PIXEL_1X1, DRAW_FILL_FULL);
|
||||
}
|
||||
for(int i=0; i<vNumber; i++) { // vertical
|
||||
if(i%2) {
|
||||
Paint_DrawRectangle(1+i*vWidth, 1, vWidth*(i+1), EPD_4IN37G_HEIGHT, EPD_4IN37G_YELLOW + (i/2%2), DOT_PIXEL_1X1, DRAW_FILL_FULL);
|
||||
}
|
||||
}
|
||||
printf("EPD_Display\r\n");
|
||||
EPD_4IN37G_Display(BlackImage);
|
||||
DEV_Delay_ms(3000);
|
||||
#endif
|
||||
printf("Clear...\r\n");
|
||||
EPD_4IN37G_Clear(EPD_4IN37G_WHITE);
|
||||
|
||||
printf("Goto Sleep...\r\n");
|
||||
EPD_4IN37G_Sleep();
|
||||
free(BlackImage);
|
||||
BlackImage = NULL;
|
||||
DEV_Delay_ms(2000);//important, at least 2s
|
||||
// close 5V
|
||||
printf("close 5V, Module enters 0 power consumption ...\r\n");
|
||||
DEV_Module_Exit();
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
|
@ -40,9 +40,7 @@ int EPD_7in3g_test(void)
|
|||
|
||||
printf("e-Paper Init and Clear...\r\n");
|
||||
EPD_7IN3G_Init();
|
||||
|
||||
printf("Black \r\n");
|
||||
EPD_7IN3G_Clear(EPD_7IN3G_WHITE); // WHITE
|
||||
EPD_7IN3G_Clear(EPD_7IN3G_WHITE);
|
||||
DEV_Delay_ms(2000);
|
||||
|
||||
//Create a new image cache
|
||||
|
|
@ -59,48 +57,41 @@ int EPD_7in3g_test(void)
|
|||
Paint_NewImage(BlackImage, EPD_7IN3G_WIDTH/2, EPD_7IN3G_HEIGHT/2 , 0, EPD_7IN3G_WHITE);
|
||||
Paint_SetScale(4);
|
||||
|
||||
#if 0 // show bmp
|
||||
//Not enough memory,Not supported
|
||||
printf("show BMP-----------------\r\n");
|
||||
Paint_SelectImage(BlackImage);
|
||||
Paint_Clear(WHITE);
|
||||
Paint_DrawBitMap(gImage_7in3g);
|
||||
EPD_7IN3G_Display(BlackImage);
|
||||
#if 1 // show image for array
|
||||
printf("show image for array\r\n");
|
||||
EPD_7IN3G_Display(gImage_7in3g);
|
||||
DEV_Delay_ms(2000);
|
||||
|
||||
|
||||
#endif
|
||||
|
||||
#if 1 // Drawing on the image
|
||||
//1.Select Image
|
||||
printf("SelectImage:BlackImage\r\n");
|
||||
Paint_SelectImage(BlackImage);
|
||||
Paint_Clear(0x55);
|
||||
Paint_Clear(EPD_7IN3G_WHITE);
|
||||
|
||||
// 2.Drawing on the image
|
||||
printf("Drawing:BlackImage\r\n");
|
||||
Paint_DrawPoint(10, 80, Red_4Color, DOT_PIXEL_1X1, DOT_STYLE_DFT);
|
||||
Paint_DrawPoint(10, 90, Yellow_4Color, DOT_PIXEL_2X2, DOT_STYLE_DFT);
|
||||
Paint_DrawPoint(10, 100, Black_4Color, DOT_PIXEL_3X3, DOT_STYLE_DFT);
|
||||
Paint_DrawLine(20, 70, 70, 120, Red_4Color, DOT_PIXEL_1X1, LINE_STYLE_SOLID);
|
||||
Paint_DrawLine(70, 70, 20, 120, Red_4Color, DOT_PIXEL_1X1, LINE_STYLE_SOLID);
|
||||
Paint_DrawRectangle(20, 70, 70, 120, Yellow_4Color, DOT_PIXEL_1X1, DRAW_FILL_EMPTY);
|
||||
Paint_DrawRectangle(80, 70, 130, 120, Yellow_4Color, DOT_PIXEL_1X1, DRAW_FILL_FULL);
|
||||
Paint_DrawCircle(45, 95, 20, Black_4Color, DOT_PIXEL_1X1, DRAW_FILL_EMPTY);
|
||||
Paint_DrawCircle(105, 95, 20, Black_4Color, DOT_PIXEL_1X1, DRAW_FILL_FULL);
|
||||
Paint_DrawLine(85, 95, 125, 95, Red_4Color, DOT_PIXEL_1X1, LINE_STYLE_DOTTED);
|
||||
Paint_DrawLine(105, 75, 105, 115, Yellow_4Color, DOT_PIXEL_1X1, LINE_STYLE_DOTTED);
|
||||
Paint_DrawString_EN(10, 0, "Red, yellow, white and black", &Font16, Red_4Color, Yellow_4Color);
|
||||
Paint_DrawString_EN(10, 35, "Four color e-Paper", &Font12, Yellow_4Color, Black_4Color);
|
||||
Paint_DrawString_CN(10, 125, "΢ѩµç×Ó", &Font24CN, Red_4Color, White_4Color);
|
||||
Paint_DrawNum(10, 50, 123456, &Font12, Red_4Color, White_4Color);
|
||||
Paint_DrawPoint(10, 80, EPD_7IN3G_WHITE, DOT_PIXEL_1X1, DOT_STYLE_DFT);
|
||||
Paint_DrawPoint(10, 90, EPD_7IN3G_YELLOW, DOT_PIXEL_2X2, DOT_STYLE_DFT);
|
||||
Paint_DrawPoint(10, 100, EPD_7IN3G_BLACK, DOT_PIXEL_3X3, DOT_STYLE_DFT);
|
||||
Paint_DrawLine(20, 70, 70, 120, EPD_7IN3G_WHITE, DOT_PIXEL_1X1, LINE_STYLE_SOLID);
|
||||
Paint_DrawLine(70, 70, 20, 120, EPD_7IN3G_WHITE, DOT_PIXEL_1X1, LINE_STYLE_SOLID);
|
||||
Paint_DrawRectangle(20, 70, 70, 120, EPD_7IN3G_YELLOW, DOT_PIXEL_1X1, DRAW_FILL_EMPTY);
|
||||
Paint_DrawRectangle(80, 70, 130, 120, EPD_7IN3G_YELLOW, DOT_PIXEL_1X1, DRAW_FILL_FULL);
|
||||
Paint_DrawCircle(45, 95, 20, EPD_7IN3G_BLACK, DOT_PIXEL_1X1, DRAW_FILL_EMPTY);
|
||||
Paint_DrawCircle(105, 95, 20, EPD_7IN3G_BLACK, DOT_PIXEL_1X1, DRAW_FILL_FULL);
|
||||
Paint_DrawLine(85, 95, 125, 95, EPD_7IN3G_WHITE, DOT_PIXEL_1X1, LINE_STYLE_DOTTED);
|
||||
Paint_DrawLine(105, 75, 105, 115, EPD_7IN3G_YELLOW, DOT_PIXEL_1X1, LINE_STYLE_DOTTED);
|
||||
Paint_DrawString_EN(10, 0, "Red, yellow, white and black", &Font16, EPD_7IN3G_WHITE, EPD_7IN3G_YELLOW);
|
||||
Paint_DrawString_EN(10, 35, "Four color e-Paper", &Font12, EPD_7IN3G_YELLOW, EPD_7IN3G_BLACK);
|
||||
Paint_DrawString_CN(10, 125, "微雪电子", &Font24CN, EPD_7IN3G_RED, EPD_7IN3G_WHITE);
|
||||
Paint_DrawNum(10, 50, 123456, &Font12, EPD_7IN3G_RED, EPD_7IN3G_WHITE);
|
||||
|
||||
printf("EPD_Display\r\n");
|
||||
EPD_7IN3G_Display_part(BlackImage, 0, 0, 400, 240);
|
||||
EPD_7IN3G_Display_part(BlackImage, 200, 120, 400, 240);
|
||||
DEV_Delay_ms(3000);
|
||||
#endif
|
||||
|
||||
|
||||
printf("Clear...\r\n");
|
||||
EPD_7IN3G_Clear(EPD_7IN3G_WHITE);
|
||||
|
||||
|
|
|
|||
|
|
@ -38,6 +38,7 @@
|
|||
|
||||
int EPD_1in64g_test(void);
|
||||
int EPD_3in0g_test(void);
|
||||
int EPD_4in37g_test(void);
|
||||
int EPD_7in3g_test(void);
|
||||
|
||||
int EPD_1in02d_test(void);
|
||||
|
|
|
|||
|
|
@ -32,15 +32,15 @@
|
|||
#ifndef _IMAGEDATA_H_
|
||||
#define _IMAGEDATA_H_
|
||||
|
||||
// colour_4
|
||||
extern const unsigned char gImage_1in64g[];
|
||||
extern const unsigned char gImage_3in0g[];
|
||||
extern const unsigned char gImage_7in3g[];
|
||||
|
||||
// ImageData2.c
|
||||
/* --------------------------------------- */
|
||||
extern const unsigned char gImage_2in13b_V4b[];
|
||||
extern const unsigned char gImage_2in13b_V4r[];
|
||||
|
||||
extern const unsigned char gImage_1in64g[];
|
||||
extern const unsigned char gImage_3in0g[];
|
||||
extern const unsigned char Image4color[];
|
||||
extern const unsigned char gImage_7in3g[];
|
||||
/* --------------------------------------- */
|
||||
|
||||
// ImageData.c
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load diff
|
|
@ -262,14 +262,21 @@ parameter:
|
|||
******************************************************************************/
|
||||
void Paint_Clear(UWORD Color)
|
||||
{
|
||||
if(Paint.Scale == 2 || Paint.Scale == 4){
|
||||
if(Paint.Scale == 2) {
|
||||
for (UWORD Y = 0; Y < Paint.HeightByte; Y++) {
|
||||
for (UWORD X = 0; X < Paint.WidthByte; X++ ) {//8 pixel = 1 byte
|
||||
UDOUBLE Addr = X + Y*Paint.WidthByte;
|
||||
Paint.Image[Addr] = Color;
|
||||
}
|
||||
}
|
||||
}else if(Paint.Scale == 7){
|
||||
}else if(Paint.Scale == 4) {
|
||||
for (UWORD Y = 0; Y < Paint.HeightByte; Y++) {
|
||||
for (UWORD X = 0; X < Paint.WidthByte; X++ ) {
|
||||
UDOUBLE Addr = X + Y*Paint.WidthByte;
|
||||
Paint.Image[Addr] = (Color<<6)|(Color<<4)|(Color<<2)|Color;
|
||||
}
|
||||
}
|
||||
}else if(Paint.Scale == 7) {
|
||||
for (UWORD Y = 0; Y < Paint.HeightByte; Y++) {
|
||||
for (UWORD X = 0; X < Paint.WidthByte; X++ ) {
|
||||
UDOUBLE Addr = X + Y*Paint.WidthByte;
|
||||
|
|
|
|||
|
|
@ -125,11 +125,6 @@ typedef enum {
|
|||
#define GRAY3 0x01 //gray
|
||||
#define GRAY4 0x00 //white
|
||||
|
||||
//colour
|
||||
#define Black_4Color 0x00
|
||||
#define White_4Color 0x01
|
||||
#define Yellow_4Color 0x02
|
||||
#define Red_4Color 0x03
|
||||
/**
|
||||
* The size of the point
|
||||
**/
|
||||
|
|
|
|||
|
|
@ -188,9 +188,7 @@ void EPD_1IN64G_Clear(UBYTE color)
|
|||
EPD_1IN64G_SendCommand(0x10);
|
||||
for (UWORD j = 0; j < Height; j++) {
|
||||
for (UWORD i = 0; i < Width; i++) {
|
||||
for(UBYTE k = 0; k < 4; k++) {
|
||||
EPD_1IN64G_SendData(color);
|
||||
}
|
||||
EPD_1IN64G_SendData((color << 6) | (color << 4) | (color << 2) | color);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -222,6 +220,10 @@ void EPD_1IN64G_Display(UBYTE *Image)
|
|||
EPD_1IN64G_SendData(Image[i + j * Width]);
|
||||
}
|
||||
}
|
||||
|
||||
EPD_1IN64G_SendCommand(0x68);
|
||||
EPD_1IN64G_SendData(0x00);
|
||||
|
||||
EPD_1IN64G_TurnOnDisplay();
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -18,11 +18,11 @@
|
|||
#define EPD_1IN64G_WIDTH 168
|
||||
#define EPD_1IN64G_HEIGHT 168
|
||||
|
||||
//colour
|
||||
#define EPD_1IN64G_BLACK 0x00
|
||||
#define EPD_1IN64G_WHITE 0x55
|
||||
#define EPD_1IN64G_YELLOW 0xAA
|
||||
#define EPD_1IN64G_RED 0xFF
|
||||
// Color
|
||||
#define EPD_1IN64G_BLACK 0x0
|
||||
#define EPD_1IN64G_WHITE 0x1
|
||||
#define EPD_1IN64G_YELLOW 0x2
|
||||
#define EPD_1IN64G_RED 0x3
|
||||
|
||||
void EPD_1IN64G_Init(void);
|
||||
void EPD_1IN64G_Clear(UBYTE color);
|
||||
|
|
|
|||
|
|
@ -177,7 +177,7 @@ void EPD_3IN0G_Clear(UBYTE color)
|
|||
EPD_3IN0G_SendCommand(0x10);
|
||||
for (UWORD j = 0; j < Height; j++) {
|
||||
for (UWORD i = 0; i < Width; i++) {
|
||||
EPD_3IN0G_SendData(color);
|
||||
EPD_3IN0G_SendData((color << 6) | (color << 4) | (color << 2) | color);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -18,11 +18,11 @@
|
|||
#define EPD_3IN0G_WIDTH 168
|
||||
#define EPD_3IN0G_HEIGHT 400
|
||||
|
||||
//colour
|
||||
#define EPD_3IN0G_BLACK 0x00
|
||||
#define EPD_3IN0G_WHITE 0x55
|
||||
#define EPD_3IN0G_YELLOW 0xAA
|
||||
#define EPD_3IN0G_RED 0xFF
|
||||
// Color
|
||||
#define EPD_3IN0G_BLACK 0x0
|
||||
#define EPD_3IN0G_WHITE 0x1
|
||||
#define EPD_3IN0G_YELLOW 0x2
|
||||
#define EPD_3IN0G_RED 0x3
|
||||
|
||||
void EPD_3IN0G_Init(void);
|
||||
void EPD_3IN0G_Clear(UBYTE color);
|
||||
|
|
|
|||
240
STM32/STM32-F103ZET6/User/e-Paper/EPD_4in37g.c
Normal file
240
STM32/STM32-F103ZET6/User/e-Paper/EPD_4in37g.c
Normal file
|
|
@ -0,0 +1,240 @@
|
|||
/*****************************************************************************
|
||||
* | File : EPD_4in37g.h
|
||||
* | Author : Waveshare team
|
||||
* | Function : 4.37inch e-Paper (G)
|
||||
* | Info :
|
||||
*----------------
|
||||
* | This version: V1.0
|
||||
* | Date : 2022-08-15
|
||||
* | Info :
|
||||
* -----------------------------------------------------------------------------
|
||||
#
|
||||
# Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
# of this software and associated documnetation files (the "Software"), to deal
|
||||
# in the Software without restriction, including without limitation the rights
|
||||
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
# copies of the Software, and to permit persons to whom the Software is
|
||||
# furished to do so, subject to the following conditions:
|
||||
#
|
||||
# The above copyright notice and this permission notice shall be included in
|
||||
# all copies or substantial portions of the Software.
|
||||
#
|
||||
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
# THE SOFTWARE.
|
||||
#
|
||||
******************************************************************************/
|
||||
#include "EPD_4in37g.h"
|
||||
#include "Debug.h"
|
||||
|
||||
/******************************************************************************
|
||||
function : Software reset
|
||||
parameter:
|
||||
******************************************************************************/
|
||||
static void EPD_4IN37G_Reset(void)
|
||||
{
|
||||
DEV_Digital_Write(EPD_RST_PIN, 1);
|
||||
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(20);
|
||||
}
|
||||
|
||||
/******************************************************************************
|
||||
function : send command
|
||||
parameter:
|
||||
Reg : Command register
|
||||
******************************************************************************/
|
||||
static void EPD_4IN37G_SendCommand(UBYTE Reg)
|
||||
{
|
||||
DEV_Digital_Write(EPD_DC_PIN, 0);
|
||||
DEV_Digital_Write(EPD_CS_PIN, 0);
|
||||
DEV_SPI_WriteByte(Reg);
|
||||
DEV_Digital_Write(EPD_CS_PIN, 1);
|
||||
}
|
||||
|
||||
/******************************************************************************
|
||||
function : send data
|
||||
parameter:
|
||||
Data : Write data
|
||||
******************************************************************************/
|
||||
static void EPD_4IN37G_SendData(UBYTE Data)
|
||||
{
|
||||
DEV_Digital_Write(EPD_DC_PIN, 1);
|
||||
DEV_Digital_Write(EPD_CS_PIN, 0);
|
||||
DEV_SPI_WriteByte(Data);
|
||||
DEV_Digital_Write(EPD_CS_PIN, 1);
|
||||
}
|
||||
|
||||
/******************************************************************************
|
||||
function : Wait until the busy_pin goes LOW
|
||||
parameter:
|
||||
******************************************************************************/
|
||||
static void EPD_4IN37G_ReadBusyH(void)
|
||||
{
|
||||
Debug("e-Paper busy H\r\n");
|
||||
while(!DEV_Digital_Read(EPD_BUSY_PIN)) { //LOW: busy, HIGH: idle
|
||||
DEV_Delay_ms(5);
|
||||
}
|
||||
Debug("e-Paper busy H release\r\n");
|
||||
}
|
||||
static void EPD_4IN37G_ReadBusyL(void)
|
||||
{
|
||||
Debug("e-Paper busy L\r\n");
|
||||
while(DEV_Digital_Read(EPD_BUSY_PIN)) { //LOW: idle, HIGH: busy
|
||||
DEV_Delay_ms(5);
|
||||
}
|
||||
Debug("e-Paper busy L release\r\n");
|
||||
}
|
||||
|
||||
/******************************************************************************
|
||||
function : Turn On Display
|
||||
parameter:
|
||||
******************************************************************************/
|
||||
static void EPD_4IN37G_TurnOnDisplay(void)
|
||||
{
|
||||
EPD_4IN37G_SendCommand(0x12); // DISPLAY_REFRESH
|
||||
EPD_4IN37G_SendData(0x00);
|
||||
EPD_4IN37G_ReadBusyH();
|
||||
|
||||
EPD_4IN37G_SendCommand(0x02); // POWER_OFF
|
||||
EPD_4IN37G_SendData(0X00);
|
||||
EPD_4IN37G_ReadBusyH();
|
||||
}
|
||||
|
||||
/******************************************************************************
|
||||
function : Initialize the e-Paper register
|
||||
parameter:
|
||||
******************************************************************************/
|
||||
void EPD_4IN37G_Init(void)
|
||||
{
|
||||
EPD_4IN37G_Reset();
|
||||
|
||||
EPD_4IN37G_SendCommand(0xAA);
|
||||
EPD_4IN37G_SendData(0x49);
|
||||
EPD_4IN37G_SendData(0x55);
|
||||
EPD_4IN37G_SendData(0x20);
|
||||
EPD_4IN37G_SendData(0x08);
|
||||
EPD_4IN37G_SendData(0x09);
|
||||
EPD_4IN37G_SendData(0x18);
|
||||
|
||||
EPD_4IN37G_SendCommand(0x01);
|
||||
EPD_4IN37G_SendData(0x3F);
|
||||
|
||||
EPD_4IN37G_SendCommand(0x00);
|
||||
EPD_4IN37G_SendData(0x4F);
|
||||
EPD_4IN37G_SendData(0x69);
|
||||
|
||||
EPD_4IN37G_SendCommand(0x05);
|
||||
EPD_4IN37G_SendData(0x40);
|
||||
EPD_4IN37G_SendData(0x1F);
|
||||
EPD_4IN37G_SendData(0x1F);
|
||||
EPD_4IN37G_SendData(0x2C);
|
||||
|
||||
EPD_4IN37G_SendCommand(0x08);
|
||||
EPD_4IN37G_SendData(0x6F);
|
||||
EPD_4IN37G_SendData(0x1F);
|
||||
EPD_4IN37G_SendData(0x1F);
|
||||
EPD_4IN37G_SendData(0x22);
|
||||
|
||||
//===================
|
||||
//20211212
|
||||
//First setting
|
||||
EPD_4IN37G_SendCommand(0x06);
|
||||
EPD_4IN37G_SendData(0x6F);
|
||||
EPD_4IN37G_SendData(0x1F);
|
||||
EPD_4IN37G_SendData(0x17);
|
||||
EPD_4IN37G_SendData(0x17);
|
||||
//===================
|
||||
|
||||
EPD_4IN37G_SendCommand(0x03);
|
||||
EPD_4IN37G_SendData(0x00);
|
||||
EPD_4IN37G_SendData(0x54);
|
||||
EPD_4IN37G_SendData(0x00);
|
||||
EPD_4IN37G_SendData(0x44);
|
||||
|
||||
EPD_4IN37G_SendCommand(0x50);
|
||||
EPD_4IN37G_SendData(0x3F);
|
||||
|
||||
EPD_4IN37G_SendCommand(0x60);
|
||||
EPD_4IN37G_SendData(0x02);
|
||||
EPD_4IN37G_SendData(0x00);
|
||||
|
||||
//Please notice that PLL must be set for version 2 IC
|
||||
EPD_4IN37G_SendCommand(0x30);
|
||||
EPD_4IN37G_SendData(0x08);
|
||||
|
||||
EPD_4IN37G_SendCommand(0x61);
|
||||
EPD_4IN37G_SendData(0x02);
|
||||
EPD_4IN37G_SendData(0x00);
|
||||
EPD_4IN37G_SendData(0x01);
|
||||
EPD_4IN37G_SendData(0x70);
|
||||
|
||||
EPD_4IN37G_SendCommand(0xE3);
|
||||
EPD_4IN37G_SendData(0x2F);
|
||||
|
||||
EPD_4IN37G_SendCommand(0x84);
|
||||
EPD_4IN37G_SendData(0x01);
|
||||
}
|
||||
|
||||
/******************************************************************************
|
||||
function : Clear screen
|
||||
parameter:
|
||||
******************************************************************************/
|
||||
void EPD_4IN37G_Clear(UBYTE color)
|
||||
{
|
||||
UWORD Width, Height;
|
||||
Width = (EPD_4IN37G_WIDTH % 4 == 0)? (EPD_4IN37G_WIDTH / 4 ): (EPD_4IN37G_WIDTH / 4 + 1);
|
||||
Height = EPD_4IN37G_HEIGHT;
|
||||
|
||||
EPD_4IN37G_SendCommand(0x04);
|
||||
EPD_4IN37G_ReadBusyH();
|
||||
|
||||
EPD_4IN37G_SendCommand(0x10);
|
||||
for (UWORD j = 0; j < Height; j++) {
|
||||
for (UWORD i = 0; i < Width; i++) {
|
||||
EPD_4IN37G_SendData((color << 6) | (color << 4) | (color << 2) | color);
|
||||
}
|
||||
}
|
||||
EPD_4IN37G_TurnOnDisplay();
|
||||
}
|
||||
|
||||
/******************************************************************************
|
||||
function : Sends the image buffer in RAM to e-Paper and displays
|
||||
parameter:
|
||||
******************************************************************************/
|
||||
void EPD_4IN37G_Display(UBYTE *Image)
|
||||
{
|
||||
UWORD Width, Height;
|
||||
Width = (EPD_4IN37G_WIDTH % 4 == 0)? (EPD_4IN37G_WIDTH / 4 ): (EPD_4IN37G_WIDTH / 4 + 1);
|
||||
Height = EPD_4IN37G_HEIGHT;
|
||||
|
||||
EPD_4IN37G_SendCommand(0x04);
|
||||
EPD_4IN37G_ReadBusyH();
|
||||
|
||||
EPD_4IN37G_SendCommand(0x10);
|
||||
for (UWORD j = 0; j < Height; j++) {
|
||||
for (UWORD i = 0; i < Width; i++) {
|
||||
EPD_4IN37G_SendData(Image[i + j * Width]);
|
||||
}
|
||||
}
|
||||
EPD_4IN37G_TurnOnDisplay();
|
||||
}
|
||||
|
||||
/******************************************************************************
|
||||
function : Enter sleep mode
|
||||
parameter:
|
||||
******************************************************************************/
|
||||
void EPD_4IN37G_Sleep(void)
|
||||
{
|
||||
EPD_4IN37G_SendCommand(0x02); // POWER_OFF
|
||||
EPD_4IN37G_SendData(0X00);
|
||||
EPD_4IN37G_SendCommand(0x07); // DEEP_SLEEP
|
||||
EPD_4IN37G_SendData(0XA5);
|
||||
}
|
||||
|
||||
51
STM32/STM32-F103ZET6/User/e-Paper/EPD_4in37g.h
Normal file
51
STM32/STM32-F103ZET6/User/e-Paper/EPD_4in37g.h
Normal file
|
|
@ -0,0 +1,51 @@
|
|||
/*****************************************************************************
|
||||
* | File : EPD_4in37g.c
|
||||
* | Author : Waveshare team
|
||||
* | Function : 4.37inch e-Paper (G)
|
||||
* | Info :
|
||||
*----------------
|
||||
* | This version: V1.0
|
||||
* | Date : 2022-08-15
|
||||
* | Info :
|
||||
* -----------------------------------------------------------------------------
|
||||
#
|
||||
# Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
# of this software and associated documnetation files (the "Software"), to deal
|
||||
# in the Software without restriction, including without limitation the rights
|
||||
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
# copies of the Software, and to permit persons to whom the Software is
|
||||
# furished to do so, subject to the following conditions:
|
||||
#
|
||||
# The above copyright notice and this permission notice shall be included in
|
||||
# all copies or substantial portions of the Software.
|
||||
#
|
||||
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
# THE SOFTWARE.
|
||||
#
|
||||
******************************************************************************/
|
||||
#ifndef __EPD_4IN37G_H_
|
||||
#define __EPD_4IN37G_H_
|
||||
|
||||
#include "DEV_Config.h"
|
||||
|
||||
// Display resolution
|
||||
#define EPD_4IN37G_WIDTH 512
|
||||
#define EPD_4IN37G_HEIGHT 368
|
||||
|
||||
// Color
|
||||
#define EPD_4IN37G_BLACK 0x0
|
||||
#define EPD_4IN37G_WHITE 0x1
|
||||
#define EPD_4IN37G_YELLOW 0x2
|
||||
#define EPD_4IN37G_RED 0x3
|
||||
|
||||
void EPD_4IN37G_Init(void);
|
||||
void EPD_4IN37G_Clear(UBYTE color);
|
||||
void EPD_4IN37G_Display(UBYTE *Image);
|
||||
void EPD_4IN37G_Sleep(void);
|
||||
|
||||
#endif
|
||||
|
|
@ -132,7 +132,6 @@ void EPD_7IN3G_Init(void)
|
|||
EPD_7IN3G_SendData(0x4F);
|
||||
EPD_7IN3G_SendData(0x69);
|
||||
|
||||
|
||||
EPD_7IN3G_SendCommand(0x05);
|
||||
EPD_7IN3G_SendData(0x40);
|
||||
EPD_7IN3G_SendData(0x1F);
|
||||
|
|
@ -168,9 +167,6 @@ void EPD_7IN3G_Init(void)
|
|||
EPD_7IN3G_SendCommand(0x30);
|
||||
EPD_7IN3G_SendData(0x08);
|
||||
|
||||
|
||||
|
||||
|
||||
EPD_7IN3G_SendCommand(0x50);
|
||||
EPD_7IN3G_SendData(0x3F);
|
||||
|
||||
|
|
@ -203,7 +199,7 @@ void EPD_7IN3G_Clear(UBYTE color)
|
|||
EPD_7IN3G_SendCommand(0x10);
|
||||
for (UWORD j = 0; j < Height; j++) {
|
||||
for (UWORD i = 0; i < Width; i++) {
|
||||
EPD_7IN3G_SendData(color);
|
||||
EPD_7IN3G_SendData((color << 6) | (color << 4) | (color << 2) | color);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -214,7 +210,7 @@ void EPD_7IN3G_Clear(UBYTE color)
|
|||
function : Sends the image buffer in RAM to e-Paper and displays
|
||||
parameter:
|
||||
******************************************************************************/
|
||||
void EPD_7IN3G_Display(UBYTE *Image)
|
||||
void EPD_7IN3G_Display(const UBYTE *Image)
|
||||
{
|
||||
UWORD Width, Height;
|
||||
Width = (EPD_7IN3G_WIDTH % 4 == 0)? (EPD_7IN3G_WIDTH / 4 ): (EPD_7IN3G_WIDTH / 4 + 1);
|
||||
|
|
@ -232,7 +228,7 @@ void EPD_7IN3G_Display(UBYTE *Image)
|
|||
EPD_7IN3G_TurnOnDisplay();
|
||||
}
|
||||
|
||||
void EPD_7IN3G_Display_part(UBYTE *Image, UWORD xstart, UWORD ystart, UWORD image_width, UWORD image_heigh)
|
||||
void EPD_7IN3G_Display_part(UBYTE *Image, UWORD xstart, UWORD ystart, UWORD image_width, UWORD image_height)
|
||||
{
|
||||
UWORD Width, Height;
|
||||
Width = (EPD_7IN3G_WIDTH % 4 == 0)? (EPD_7IN3G_WIDTH / 4 ): (EPD_7IN3G_WIDTH / 4 + 1);
|
||||
|
|
@ -244,7 +240,7 @@ void EPD_7IN3G_Display_part(UBYTE *Image, UWORD xstart, UWORD ystart, UWORD imag
|
|||
EPD_7IN3G_SendCommand(0x10);
|
||||
for (UWORD i = 0; i < Height; i++) {
|
||||
for (UWORD j = 0; j < Width; j++) {
|
||||
if(i<image_heigh+ystart && i>=ystart && j<(image_width+xstart)/4 && j>=xstart/4) {
|
||||
if(i<image_height+ystart && i>=ystart && j<(image_width+xstart)/4 && j>=xstart/4) {
|
||||
EPD_7IN3G_SendData(Image[(j-xstart/4) + (image_width/4*(i-ystart))]);
|
||||
}
|
||||
else
|
||||
|
|
|
|||
|
|
@ -38,16 +38,16 @@
|
|||
#define EPD_7IN3G_WIDTH 800
|
||||
#define EPD_7IN3G_HEIGHT 480
|
||||
|
||||
//colour
|
||||
#define EPD_7IN3G_BLACK 0x00
|
||||
#define EPD_7IN3G_WHITE 0x55
|
||||
#define EPD_7IN3G_YELLOW 0xAA
|
||||
#define EPD_7IN3G_RED 0xFF
|
||||
// Color
|
||||
#define EPD_7IN3G_BLACK 0x0
|
||||
#define EPD_7IN3G_WHITE 0x1
|
||||
#define EPD_7IN3G_YELLOW 0x2
|
||||
#define EPD_7IN3G_RED 0x3
|
||||
|
||||
void EPD_7IN3G_Init(void);
|
||||
void EPD_7IN3G_Clear(UBYTE color);
|
||||
void EPD_7IN3G_Display(UBYTE *Image);
|
||||
void EPD_7IN3G_Display_part(UBYTE *Image, UWORD xstart, UWORD ystart, UWORD image_width, UWORD image_heigh);
|
||||
void EPD_7IN3G_Display(const UBYTE *Image);
|
||||
void EPD_7IN3G_Display_part(UBYTE *Image, UWORD xstart, UWORD ystart, UWORD image_width, UWORD image_height);
|
||||
void EPD_7IN3G_Sleep(void);
|
||||
|
||||
#endif
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue