diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..a173085
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1 @@
+.ccls-cache
diff --git a/.metadata/.ide.log b/.metadata/.ide.log
index 66906e3..3438e72 100644
--- a/.metadata/.ide.log
+++ b/.metadata/.ide.log
@@ -1934,3 +1934,323 @@ java.lang.NullPointerException: Cannot invoke "javax.swing.JTextField.getText()"
2025-09-20 03:16:23,086 [INFO] WebAppUi:504 - JxBrowser engine has been closed
2025-09-20 03:16:23,087 [INFO] WebAppUi:541 - Close the Jxbrowser engine manually
2025-09-20 03:16:23,814 [ERROR] LogOutputStream:75 - [STDERR_REDIRECT]
+2025-09-20 14:37:35,081 [INFO] Activator:176 -
+
+
+2025-09-20 14:37:35,083 [INFO] Activator:177 - !SESSION log4j initialized
+2025-09-20 14:37:41,375 [INFO] LogOutputStream:77 - [STDOUT_REDIRECT]
+2025-09-20 14:37:44,360 [INFO] ApplicationProperties:184 - Using Application install path: /home/ja/st/stm32cubeide_1.19.0/plugins/com.st.stm32cube.common.mx_6.15.0.202507011659
+2025-09-20 14:37:44,399 [INFO] DbMcusXml:78 - Set database path to: /home/ja/st/stm32cubeide_1.19.0/plugins/com.st.stm32cube.common.mx_6.15.0.202507011659//db//mcu/
+2025-09-20 14:37:44,399 [INFO] ApiDb:274 - Set plugin database path to: /home/ja/st/stm32cubeide_1.19.0/plugins/com.st.stm32cube.common.mx_6.15.0.202507011659//db//plugins/boardmanager/
+2025-09-20 14:37:44,400 [WARN] ApiDb:259 - Overriding images path with different value: => /home/ja/st/stm32cubeide_1.19.0/plugins/com.st.stm32cube.common.mx_6.15.0.202507011659//db//plugins/mcufinder/images/
+2025-09-20 14:37:44,410 [INFO] ApiDb:250 - Set database path to: /home/ja/.stmcufinder/plugins/mcufinder//mcu/
+2025-09-20 14:37:44,413 [INFO] DbMcusAds:125 - Set database path to: /home/ja/.stmcufinder/plugins/mcufinder//mcu/
+2025-09-20 14:37:44,418 [INFO] CrossReferenceDbSqlite:203 - Set database path to: /home/ja/.stmcufinder/plugins/mcufinder//mcu/cs/
+2025-09-20 14:37:44,662 [INFO] RulesReader:64 - Compatibility file has been processed (317 Rules)
+2025-09-20 14:37:44,768 [INFO] DbMcusXml:78 - Set database path to: /home/ja/st/stm32cubeide_1.19.0/plugins/com.st.stm32cube.common.mx_6.15.0.202507011659//db//mcu/
+2025-09-20 14:37:44,768 [INFO] ApiDb:274 - Set plugin database path to: /home/ja/st/stm32cubeide_1.19.0/plugins/com.st.stm32cube.common.mx_6.15.0.202507011659//db//plugins/boardmanager/
+2025-09-20 14:37:44,769 [INFO] ApiDb:261 - Set plugin images path to: /home/ja/st/stm32cubeide_1.19.0/plugins/com.st.stm32cube.common.mx_6.15.0.202507011659//db//plugins/mcufinder/images/
+2025-09-20 14:37:44,769 [WARN] DbFile:41 - Overriding database path with different value: /home/ja/.stmcufinder/plugins/mcufinder/ => /home/ja/.stmcufinder/plugins/mcufinder
+2025-09-20 14:37:44,769 [INFO] ApiDb:250 - Set database path to: /home/ja/.stmcufinder/plugins/mcufinder//mcu/
+2025-09-20 14:37:44,770 [WARN] DbFile:41 - Overriding database path with different value: /home/ja/.stmcufinder/plugins/mcufinder/ => /home/ja/.stmcufinder/plugins/mcufinder
+2025-09-20 14:37:44,770 [INFO] DbMcusAds:125 - Set database path to: /home/ja/.stmcufinder/plugins/mcufinder//mcu/
+2025-09-20 14:37:44,770 [WARN] DbFile:41 - Overriding database path with different value: /home/ja/.stmcufinder/plugins/mcufinder/ => /home/ja/.stmcufinder/plugins/mcufinder
+2025-09-20 14:37:44,770 [WARN] DbFile:41 - Overriding database path with different value: /home/ja/.stmcufinder/plugins/mcufinder/ => /home/ja/.stmcufinder/plugins/mcufinder
+2025-09-20 14:37:44,771 [INFO] CrossReferenceDbSqlite:203 - Set database path to: /home/ja/.stmcufinder/plugins/mcufinder//mcu/cs/
+2025-09-20 14:37:44,873 [INFO] MainPanel:274 - HeapMemory: 268435456
+2025-09-20 14:37:45,230 [INFO] DbMcusXml:78 - Set database path to: /home/ja/st/stm32cubeide_1.19.0/plugins/com.st.stm32cube.common.mx_6.15.0.202507011659//db//mcu/
+2025-09-20 14:37:45,230 [INFO] ApiDb:274 - Set plugin database path to: /home/ja/st/stm32cubeide_1.19.0/plugins/com.st.stm32cube.common.mx_6.15.0.202507011659//db//plugins/boardmanager/
+2025-09-20 14:37:45,230 [INFO] ApiDb:261 - Set plugin images path to: /home/ja/st/stm32cubeide_1.19.0/plugins/com.st.stm32cube.common.mx_6.15.0.202507011659//db//plugins/mcufinder/images/
+2025-09-20 14:37:45,231 [WARN] DbFile:41 - Overriding database path with different value: /home/ja/.stmcufinder/plugins/mcufinder/ => /home/ja/.stmcufinder/plugins/mcufinder
+2025-09-20 14:37:45,231 [INFO] ApiDb:250 - Set database path to: /home/ja/.stmcufinder/plugins/mcufinder//mcu/
+2025-09-20 14:37:45,231 [WARN] DbFile:41 - Overriding database path with different value: /home/ja/.stmcufinder/plugins/mcufinder/ => /home/ja/.stmcufinder/plugins/mcufinder
+2025-09-20 14:37:45,231 [INFO] DbMcusAds:125 - Set database path to: /home/ja/.stmcufinder/plugins/mcufinder//mcu/
+2025-09-20 14:37:45,232 [WARN] DbFile:41 - Overriding database path with different value: /home/ja/.stmcufinder/plugins/mcufinder/ => /home/ja/.stmcufinder/plugins/mcufinder
+2025-09-20 14:37:45,232 [WARN] DbFile:41 - Overriding database path with different value: /home/ja/.stmcufinder/plugins/mcufinder/ => /home/ja/.stmcufinder/plugins/mcufinder
+2025-09-20 14:37:45,232 [INFO] CrossReferenceDbSqlite:203 - Set database path to: /home/ja/.stmcufinder/plugins/mcufinder//mcu/cs/
+2025-09-20 14:37:45,254 [INFO] ApplicationProperties:184 - Using Application install path: /home/ja/st/stm32cubeide_1.19.0/plugins/com.st.stm32cube.common.mx_6.15.0.202507011659
+2025-09-20 14:37:45,257 [INFO] PluginManage:196 - Search for loadable plugins [exclusion list=, ]
+2025-09-20 14:37:45,259 [INFO] PluginManage:310 - Check plugin analytics
+2025-09-20 14:37:45,664 [INFO] AnalyticsPlugin:253 - Accepted Software Licenses: STM32CubeMX.6.15.0
+2025-09-20 14:37:45,665 [INFO] AnalyticsPlugin:255 - Accepted CMSIS Pack Licenses:
+2025-09-20 14:37:45,665 [INFO] AnalyticsPlugin:257 - Accepted Firmware Licenses: FW.F4.1.28.0
+2025-09-20 14:37:45,670 [INFO] PluginManage:359 - Loaded plugin analytics (category:tool,tabindex:-1)
+2025-09-20 14:37:45,671 [INFO] PluginManage:310 - Check plugin cadmodel
+2025-09-20 14:37:45,679 [INFO] CADModel:105 - Init CAD model plugin
+2025-09-20 14:37:45,680 [INFO] PluginManage:359 - Loaded plugin cadmodel (category:power,tabindex:5)
+2025-09-20 14:37:45,680 [INFO] PluginManage:310 - Check plugin clock
+2025-09-20 14:37:45,695 [INFO] PluginManage:359 - Loaded plugin clock (category:base,tabindex:2)
+2025-09-20 14:37:45,695 [INFO] PluginManage:310 - Check plugin ddr
+2025-09-20 14:37:45,698 [INFO] PluginManage:359 - Loaded plugin ddr (category:tool,tabindex:6)
+2025-09-20 14:37:45,698 [INFO] PluginManage:310 - Check plugin filemanager
+2025-09-20 14:37:45,910 [INFO] PluginManage:359 - Loaded plugin filemanager (category:base,tabindex:10)
+2025-09-20 14:37:45,910 [INFO] PluginManage:310 - Check plugin ipmanager
+2025-09-20 14:37:45,918 [INFO] PluginManage:359 - Loaded plugin ipmanager (category:base,tabindex:5)
+2025-09-20 14:37:45,918 [INFO] PluginManage:310 - Check plugin lpbam
+2025-09-20 14:37:45,933 [INFO] PluginManage:359 - Loaded plugin lpbam (category:base,tabindex:0)
+2025-09-20 14:37:45,933 [INFO] PluginManage:310 - Check plugin memorymap
+2025-09-20 14:37:45,952 [INFO] PluginManage:359 - Loaded plugin memorymap (category:base,tabindex:4)
+2025-09-20 14:37:45,952 [INFO] PluginManage:310 - Check plugin pinoutandconfiguration
+2025-09-20 14:37:45,962 [INFO] PluginManage:359 - Loaded plugin pinoutandconfiguration (category:base,tabindex:1)
+2025-09-20 14:37:45,963 [INFO] PluginManage:310 - Check plugin pinoutconfig
+2025-09-20 14:37:46,099 [WARN] SupportedApi:132 - Cannot load RTOS API schema: s4s-elt-must-match.1: The content of 'definitions' must match (annotation?, (simpleType | complexType)?, (unique | key | keyref)*)). A problem was found starting at: attribute.
+2025-09-20 14:37:46,289 [INFO] PluginManage:359 - Loaded plugin pinoutconfig (category:base,tabindex:0)
+2025-09-20 14:37:46,290 [INFO] PluginManage:310 - Check plugin power
+2025-09-20 14:37:46,305 [INFO] PluginManage:359 - Loaded plugin power (category:power,tabindex:4)
+2025-09-20 14:37:46,305 [INFO] PluginManage:310 - Check plugin projectmanager
+2025-09-20 14:37:46,329 [INFO] PluginManage:359 - Loaded plugin projectmanager (category:projectmanager,tabindex:4)
+2025-09-20 14:37:46,330 [INFO] PluginManage:310 - Check plugin rif
+2025-09-20 14:37:46,342 [INFO] PluginManage:359 - Loaded plugin rif (category:base,tabindex:3)
+2025-09-20 14:37:46,342 [INFO] PluginManage:310 - Check plugin thirdparty
+2025-09-20 14:37:46,530 [WARN] IntegrityCheckThread:84 - waiting for thirdparty lock release [integrity check]
+2025-09-20 14:37:46,531 [INFO] PluginManage:359 - Loaded plugin thirdparty (category:base,tabindex:-1)
+2025-09-20 14:37:46,531 [INFO] IntegrityCheckThread:86 - entering critical section [integrity check]
+2025-09-20 14:37:46,531 [INFO] PluginManage:310 - Check plugin tools
+2025-09-20 14:37:46,531 [INFO] ThirdPartyUpdaterWithRetryManager:70 - Updater plugin not ready yet. [1/15]
+2025-09-20 14:37:46,535 [INFO] PluginManage:359 - Loaded plugin tools (category:base,tabindex:7)
+2025-09-20 14:37:46,536 [INFO] PluginManage:310 - Check plugin tutovideos
+2025-09-20 14:37:46,809 [INFO] PluginManage:359 - Loaded plugin tutovideos (category:base,tabindex:-1)
+2025-09-20 14:37:46,809 [INFO] PluginManage:310 - Check plugin updater
+2025-09-20 14:37:46,836 [INFO] PluginManage:359 - Loaded plugin updater (category:base,tabindex:12)
+2025-09-20 14:37:46,836 [INFO] PluginManage:310 - Check plugin userauth
+2025-09-20 14:37:46,841 [INFO] UserAuth:118 - Init User Auth plugin
+2025-09-20 14:37:46,842 [INFO] PluginManage:359 - Loaded plugin userauth (category:base,tabindex:14)
+2025-09-20 14:37:46,842 [INFO] PluginManage:283 - PluginManage : Loaded plugins [18]
+2025-09-20 14:37:47,072 [INFO] PinOutPanel:1589 - setPackage(No Configuration,No Configuration)
+2025-09-20 14:37:47,155 [INFO] CADModel:165 - CPN selected for project level
+2025-09-20 14:37:47,155 [INFO] CADModel:114 - Register for checkConnection events
+2025-09-20 14:37:47,170 [INFO] IPUIPlugin:80 - create IPUIPlugin
+2025-09-20 14:37:47,170 [INFO] PluginManager:220 - loadIPPluginJar : add gtzc
+2025-09-20 14:37:47,177 [INFO] IPUIPlugin:80 - create IPUIPlugin
+2025-09-20 14:37:47,177 [INFO] PluginManager:220 - loadIPPluginJar : add usbx
+2025-09-20 14:37:47,178 [INFO] IPUIPlugin:80 - create IPUIPlugin
+2025-09-20 14:37:47,179 [INFO] PluginManager:220 - loadIPPluginJar : add fatfs
+2025-09-20 14:37:47,182 [INFO] IPUIPlugin:80 - create IPUIPlugin
+2025-09-20 14:37:47,182 [INFO] PluginManager:220 - loadIPPluginJar : add i2c
+2025-09-20 14:37:47,184 [INFO] IPUIPlugin:80 - create IPUIPlugin
+2025-09-20 14:37:47,184 [INFO] PluginManager:220 - loadIPPluginJar : add tim
+2025-09-20 14:37:47,185 [INFO] IPUIPlugin:80 - create IPUIPlugin
+2025-09-20 14:37:47,186 [INFO] PluginManager:220 - loadIPPluginJar : add quadspi
+2025-09-20 14:37:47,189 [INFO] IPUIPlugin:80 - create IPUIPlugin
+2025-09-20 14:37:47,190 [INFO] PluginManager:220 - loadIPPluginJar : add ipddr
+2025-09-20 14:37:47,192 [INFO] IPUIPlugin:80 - create IPUIPlugin
+2025-09-20 14:37:47,193 [INFO] PluginManager:220 - loadIPPluginJar : add i2s
+2025-09-20 14:37:47,196 [INFO] IPUIPlugin:80 - create IPUIPlugin
+2025-09-20 14:37:47,196 [INFO] PluginManager:220 - loadIPPluginJar : add openamp
+2025-09-20 14:37:47,199 [INFO] IPUIPlugin:80 - create IPUIPlugin
+2025-09-20 14:37:47,199 [INFO] PluginManager:220 - loadIPPluginJar : add i3c
+2025-09-20 14:37:47,201 [INFO] IPUIPlugin:80 - create IPUIPlugin
+2025-09-20 14:37:47,201 [INFO] PluginManager:220 - loadIPPluginJar : add ucpd
+2025-09-20 14:37:47,204 [INFO] IPUIPlugin:80 - create IPUIPlugin
+2025-09-20 14:37:47,204 [INFO] PluginManager:220 - loadIPPluginJar : add cryp
+2025-09-20 14:37:47,206 [INFO] IPUIPlugin:80 - create IPUIPlugin
+2025-09-20 14:37:47,206 [INFO] PluginManager:220 - loadIPPluginJar : add comp
+2025-09-20 14:37:47,208 [INFO] IPUIPlugin:80 - create IPUIPlugin
+2025-09-20 14:37:47,209 [INFO] PluginManager:220 - loadIPPluginJar : add spi
+2025-09-20 14:37:47,212 [INFO] IPUIPlugin:80 - create IPUIPlugin
+2025-09-20 14:37:47,213 [INFO] PluginManager:220 - loadIPPluginJar : add touchsensing
+2025-09-20 14:37:47,215 [INFO] IPUIPlugin:80 - create IPUIPlugin
+2025-09-20 14:37:47,216 [INFO] PluginManager:220 - loadIPPluginJar : add can
+2025-09-20 14:37:47,218 [INFO] IPUIPlugin:80 - create IPUIPlugin
+2025-09-20 14:37:47,218 [INFO] PluginManager:220 - loadIPPluginJar : add aes
+2025-09-20 14:37:47,227 [INFO] IPUIPlugin:80 - create IPUIPlugin
+2025-09-20 14:37:47,227 [INFO] PluginManager:220 - loadIPPluginJar : add adc
+2025-09-20 14:37:47,232 [INFO] IPUIPlugin:80 - create IPUIPlugin
+2025-09-20 14:37:47,233 [INFO] PluginManager:220 - loadIPPluginJar : add nvic
+2025-09-20 14:37:47,239 [INFO] IPUIPlugin:80 - create IPUIPlugin
+2025-09-20 14:37:47,240 [INFO] PluginManager:220 - loadIPPluginJar : add freertos
+2025-09-20 14:37:47,247 [INFO] IPUIPlugin:80 - create IPUIPlugin
+2025-09-20 14:37:47,247 [INFO] PluginManager:220 - loadIPPluginJar : add dma
+2025-09-20 14:37:47,251 [INFO] IPUIPlugin:80 - create IPUIPlugin
+2025-09-20 14:37:47,251 [INFO] PluginManager:220 - loadIPPluginJar : add resmgrutility
+2025-09-20 14:37:47,254 [INFO] IPUIPlugin:80 - create IPUIPlugin
+2025-09-20 14:37:47,254 [INFO] PluginManager:220 - loadIPPluginJar : add pdm2pcm
+2025-09-20 14:37:47,257 [INFO] IPUIPlugin:80 - create IPUIPlugin
+2025-09-20 14:37:47,257 [INFO] PluginManager:220 - loadIPPluginJar : add hash
+2025-09-20 14:37:47,259 [INFO] IPUIPlugin:80 - create IPUIPlugin
+2025-09-20 14:37:47,260 [INFO] PluginManager:220 - loadIPPluginJar : add dfsdm
+2025-09-20 14:37:47,261 [INFO] IPUIPlugin:80 - create IPUIPlugin
+2025-09-20 14:37:47,262 [INFO] PluginManager:220 - loadIPPluginJar : add radio
+2025-09-20 14:37:47,269 [INFO] IPUIPlugin:80 - create IPUIPlugin
+2025-09-20 14:37:47,273 [INFO] PluginManager:220 - loadIPPluginJar : add plateformsettings
+2025-09-20 14:37:47,279 [INFO] IPUIPlugin:80 - create IPUIPlugin
+2025-09-20 14:37:47,279 [INFO] PluginManager:220 - loadIPPluginJar : add gic
+2025-09-20 14:37:47,281 [INFO] IPUIPlugin:80 - create IPUIPlugin
+2025-09-20 14:37:47,281 [INFO] PluginManager:220 - loadIPPluginJar : add ltdc
+2025-09-20 14:37:47,283 [INFO] IPUIPlugin:80 - create IPUIPlugin
+2025-09-20 14:37:47,283 [INFO] PluginManager:220 - loadIPPluginJar : add tracer_emb
+2025-09-20 14:37:47,286 [INFO] IPUIPlugin:80 - create IPUIPlugin
+2025-09-20 14:37:47,286 [INFO] PluginManager:220 - loadIPPluginJar : add lorawan
+2025-09-20 14:37:47,288 [INFO] IPUIPlugin:80 - create IPUIPlugin
+2025-09-20 14:37:47,288 [INFO] PluginManager:220 - loadIPPluginJar : add tsc
+2025-09-20 14:37:47,290 [INFO] IPUIPlugin:80 - create IPUIPlugin
+2025-09-20 14:37:47,290 [INFO] PluginManager:220 - loadIPPluginJar : add ts
+2025-09-20 14:37:47,292 [INFO] IPUIPlugin:80 - create IPUIPlugin
+2025-09-20 14:37:47,293 [INFO] PluginManager:220 - loadIPPluginJar : add gfxmmu
+2025-09-20 14:37:47,296 [INFO] IPUIPlugin:80 - create IPUIPlugin
+2025-09-20 14:37:47,296 [INFO] PluginManager:220 - loadIPPluginJar : add dma3
+2025-09-20 14:37:47,299 [INFO] IPUIPlugin:80 - create IPUIPlugin
+2025-09-20 14:37:47,299 [INFO] PluginManager:220 - loadIPPluginJar : add ddr_ctrl_phy
+2025-09-20 14:37:47,301 [INFO] IPUIPlugin:80 - create IPUIPlugin
+2025-09-20 14:37:47,301 [INFO] PluginManager:220 - loadIPPluginJar : add genericplugin
+2025-09-20 14:37:47,304 [INFO] IPUIPlugin:80 - create IPUIPlugin
+2025-09-20 14:37:47,304 [INFO] PluginManager:220 - loadIPPluginJar : add opamp
+2025-09-20 14:37:47,312 [INFO] IPUIPlugin:80 - create IPUIPlugin
+2025-09-20 14:37:47,312 [INFO] PluginManager:220 - loadIPPluginJar : add stm32_wpan
+2025-09-20 14:37:47,316 [INFO] IPUIPlugin:80 - create IPUIPlugin
+2025-09-20 14:37:47,316 [INFO] PluginManager:220 - loadIPPluginJar : add usart
+2025-09-20 14:37:47,319 [INFO] IPUIPlugin:80 - create IPUIPlugin
+2025-09-20 14:37:47,319 [INFO] PluginManager:220 - loadIPPluginJar : add sai
+2025-09-20 14:37:47,328 [INFO] IPUIPlugin:80 - create IPUIPlugin
+2025-09-20 14:37:47,328 [INFO] PluginManager:220 - loadIPPluginJar : add linkedlist
+2025-09-20 14:37:47,331 [INFO] IPUIPlugin:80 - create IPUIPlugin
+2025-09-20 14:37:47,331 [INFO] PluginManager:220 - loadIPPluginJar : add extmemmanager
+2025-09-20 14:37:47,336 [INFO] IPUIPlugin:80 - create IPUIPlugin
+2025-09-20 14:37:47,336 [INFO] PluginManager:220 - loadIPPluginJar : add fmc
+2025-09-20 14:37:47,341 [INFO] IPUIPlugin:80 - create IPUIPlugin
+2025-09-20 14:37:47,341 [INFO] PluginManager:220 - loadIPPluginJar : add gpio
+2025-09-20 14:37:47,348 [INFO] IPUIPlugin:80 - create IPUIPlugin
+2025-09-20 14:37:47,348 [INFO] PluginManager:220 - loadIPPluginJar : add mdma
+2025-09-20 14:37:47,458 [FATAL] Updater:351 - Updater called before beeing initialized
+2025-09-20 14:37:47,494 [INFO] RulesReader:64 - Compatibility file has been processed (317 Rules)
+2025-09-20 14:37:47,511 [INFO] RulesReader:64 - Compatibility file has been processed (317 Rules)
+2025-09-20 14:37:47,520 [INFO] CADModel:165 - CPN selected for project level
+2025-09-20 14:37:47,520 [INFO] CADModel:114 - Register for checkConnection events
+2025-09-20 14:37:47,520 [FATAL] Updater:351 - Updater called before beeing initialized
+2025-09-20 14:37:47,520 [ERROR] CADModel:125 - Updater not yet initialized, retry later
+2025-09-20 14:37:47,705 [FATAL] Updater:351 - Updater called before beeing initialized
+2025-09-20 14:37:47,707 [INFO] CADModel:165 - CPN selected for project level
+2025-09-20 14:37:47,707 [INFO] CADModel:114 - Register for checkConnection events
+2025-09-20 14:37:47,708 [FATAL] Updater:351 - Updater called before beeing initialized
+2025-09-20 14:37:47,708 [ERROR] CADModel:125 - Updater not yet initialized, retry later
+2025-09-20 14:37:47,712 [FATAL] Updater:351 - Updater called before beeing initialized
+2025-09-20 14:37:47,871 [FATAL] Updater:351 - Updater called before beeing initialized
+2025-09-20 14:37:47,877 [INFO] DbMcusAds:53 - JSON generation date=Tue Jul 08 03:14:23 CDT 2025 (1751962463524)
+2025-09-20 14:37:47,877 [FATAL] Updater:351 - Updater called before beeing initialized
+2025-09-20 14:37:47,963 [WARN] DetailPanel:346 - Failed to get advertising image, set to default
+2025-09-20 14:37:48,092 [FATAL] Updater:351 - Updater called before beeing initialized
+2025-09-20 14:37:48,094 [FATAL] Updater:351 - Updater called before beeing initialized
+2025-09-20 14:37:48,095 [FATAL] Updater:351 - Updater called before beeing initialized
+2025-09-20 14:37:48,095 [WARN] DetailPanel:346 - Failed to get advertising image, set to default
+2025-09-20 14:37:48,096 [FATAL] Updater:351 - Updater called before beeing initialized
+2025-09-20 14:37:48,148 [ERROR] Updater:1198 - MainUpdater not yet initialized. External WinMGr cannot be set.
+2025-09-20 14:37:48,150 [INFO] Updater:1134 - Updater Version found : 6.15.0
+2025-09-20 14:37:48,176 [INFO] ApplicationProperties:184 - Using Application install path: /home/ja/st/stm32cubeide_1.19.0/plugins/com.st.stm32cube.common.mx_6.15.0.202507011659
+2025-09-20 14:37:49,186 [INFO] MainUpdater:2872 - connection check result : 10
+2025-09-20 14:37:49,186 [INFO] MainUpdater:3604 - Updater definition file requires update
+2025-09-20 14:37:49,186 [INFO] MainUpdater:289 - Updater Check For Update Now.
+2025-09-20 14:37:49,187 [INFO] MicroXplorer:498 - Change Database Version : DB.6.0.150
+2025-09-20 14:37:49,193 [INFO] McuFinderGlobals:63 - Set McuFinder mode to 2 (CubeIDE integrated)
+2025-09-20 14:37:49,193 [INFO] UserAuth:487 - Internet connection configuration mode: 1
+2025-09-20 14:37:49,208 [INFO] JxBrowserEngine:152 - Initiate JxBrowser Engine with user profile folder
+2025-09-20 14:37:49,383 [INFO] ServerAccessManage:452 - Complete download http(s) 200
+2025-09-20 14:37:49,384 [INFO] ServerAccessManage:509 - Download File updaters.zip
+2025-09-20 14:37:49,532 [WARN] MainUpdater:1193 - Updater busy. Cannot search thirdparties
+2025-09-20 14:37:49,532 [INFO] ThirdPartyUpdaterWithRetryManager:96 - Updater plugin is busy. [1/15]
+2025-09-20 14:37:49,930 [INFO] FileExtend:248 - Unzip File : updaters.zip
+2025-09-20 14:37:49,931 [INFO] FileExtend:263 - Standard Zip Deflate
+2025-09-20 14:37:50,040 [INFO] WebApp:169 - Instantiating new browser for Auth
+2025-09-20 14:37:50,566 [INFO] ServerAccessManage:452 - Complete download http(s) 200
+2025-09-20 14:37:50,567 [INFO] ServerAccessManage:509 - Download File PacksControlFlags.xml
+2025-09-20 14:37:50,832 [INFO] ServerAccessManage:452 - Complete download http(s) 200
+2025-09-20 14:37:50,832 [INFO] ServerAccessManage:509 - Download File cubemx.pidx
+2025-09-20 14:37:51,200 [INFO] LoadServerUpdatesThread:375 - End of LoadServerUpdate Thread
+2025-09-20 14:37:51,510 [INFO] CheckServerUpdateThread:120 - End of CheckServer Thread
+2025-09-20 14:37:51,831 [INFO] WebApp:463 - Apply proxy settings
+2025-09-20 14:37:51,833 [INFO] WebApp:548 - Chromium requires no authentication
+2025-09-20 14:37:51,852 [INFO] WebApp:491 - Direct internet connection detected
+2025-09-20 14:37:51,884 [INFO] WebApp:900 - Register for checkConnection events
+2025-09-20 14:37:51,884 [INFO] WebApp:463 - Apply proxy settings
+2025-09-20 14:37:51,884 [INFO] WebApp:548 - Chromium requires no authentication
+2025-09-20 14:37:51,885 [INFO] WebApp:491 - Direct internet connection detected
+2025-09-20 14:37:52,172 [INFO] WebApp:225 - Starting web application
+2025-09-20 14:37:52,172 [INFO] WebApp:593 - Web application path used /home/ja/st/stm32cubeide_1.19.0/plugins/com.st.stm32cube.common.mx_6.15.0.202507011659/db/plugins/mcufinder/reactClient1/index.html
+2025-09-20 14:37:52,350 [INFO] UserAuth:487 - Internet connection configuration mode: 1
+2025-09-20 14:37:52,869 [WARN] PackLoader:240 - Cannot read IP mode file for STMicroelectronics.FP-SNS-MOTENVWB1.1.4.0
+2025-09-20 14:37:52,889 [WARN] PackLoader:240 - Cannot read IP mode file for STMicroelectronics.FP-ATR-ASTRA1.2.0.2
+2025-09-20 14:37:52,904 [WARN] PackLoader:240 - Cannot read IP mode file for STMicroelectronics.X-CUBE-SMBUS.2.1.0
+2025-09-20 14:37:52,921 [WARN] PackLoader:240 - Cannot read IP mode file for STMicroelectronics.X-CUBE-ST60.1.0.0
+2025-09-20 14:37:53,007 [INFO] WebApp:191 - Connection restablished
+2025-09-20 14:37:53,058 [WARN] PackLoader:240 - Cannot read IP mode file for STMicroelectronics.X-CUBE-AZRTOS-F7.1.1.0
+2025-09-20 14:37:53,110 [WARN] PackLoader:240 - Cannot read IP mode file for WES.I-CUBE-Cesium.1.4.0
+2025-09-20 14:37:53,191 [WARN] PackLoader:240 - Cannot read IP mode file for Infineon.AIROC-Wi-Fi-Bluetooth-STM32.1.7.1
+2025-09-20 14:37:53,284 [WARN] PackLoader:240 - Cannot read IP mode file for STMicroelectronics.X-CUBE-AZRTOS-H7.3.4.0
+2025-09-20 14:37:53,309 [WARN] PackLoader:240 - Cannot read IP mode file for STMicroelectronics.X-CUBE-DISPLAY.3.0.0
+2025-09-20 14:37:53,346 [WARN] PackLoader:240 - Cannot read IP mode file for STMicroelectronics.X-CUBE-NFC10.1.0.0
+2025-09-20 14:37:53,363 [WARN] PackLoader:240 - Cannot read IP mode file for emotas.I-CUBE-CANOPEN.1.3.0
+2025-09-20 14:37:53,387 [WARN] PackLoader:240 - Cannot read IP mode file for STMicroelectronics.FP-SNS-STBOX1.2.1.0
+2025-09-20 14:37:53,411 [WARN] PackLoader:240 - Cannot read IP mode file for STMicroelectronics.FP-SNS-SMARTAG2.1.2.0
+2025-09-20 14:37:53,433 [WARN] PackLoader:240 - Cannot read IP mode file for STMicroelectronics.FP-SNS-FLIGHT1.5.1.0
+2025-09-20 14:37:53,460 [INFO] LogOutputStream:77 - [STDOUT_REDIRECT] 1 : Invalid condition id : UX_CORESTACK_Condition cause : null
+2025-09-20 14:37:53,464 [INFO] LogOutputStream:77 - [STDOUT_REDIRECT] 1 : Invalid condition id : UX_CORESTACK_Condition cause : null
+2025-09-20 14:37:53,465 [INFO] LogOutputStream:77 - [STDOUT_REDIRECT] 1 : Invalid condition id : UX_CORESTACK_Condition cause : null
+2025-09-20 14:37:53,465 [INFO] LogOutputStream:77 - [STDOUT_REDIRECT] 1 : Invalid condition id : UX_CORESTACK_Condition cause : null
+2025-09-20 14:37:53,470 [INFO] LogOutputStream:77 - [STDOUT_REDIRECT] 1 : Invalid condition id : UX_CORESTACK_Condition cause : null
+2025-09-20 14:37:53,483 [WARN] PackLoader:240 - Cannot read IP mode file for STMicroelectronics.X-CUBE-AZRTOS-WL.2.0.0
+2025-09-20 14:37:53,496 [WARN] PackLoader:240 - Cannot read IP mode file for STMicroelectronics.FP-SNS-MOTENV1.5.0.0
+2025-09-20 14:37:53,512 [WARN] PackLoader:240 - Cannot read IP mode file for STMicroelectronics.X-CUBE-BLE2.3.3.0
+2025-09-20 14:37:53,527 [WARN] PackLoader:240 - Cannot read IP mode file for STMicroelectronics.X-CUBE-NFC9.1.0.0
+2025-09-20 14:37:53,549 [WARN] PackLoader:240 - Cannot read IP mode file for wolfSSL.I-CUBE-wolfSSL.5.8.2
+2025-09-20 14:37:53,561 [WARN] PackLoader:240 - Cannot read IP mode file for STMicroelectronics.X-CUBE-BLE1.7.1.0
+2025-09-20 14:37:53,570 [WARN] PackLoader:240 - Cannot read IP mode file for wolfSSL.I-CUBE-wolfMQTT.1.19.2
+2025-09-20 14:37:53,582 [WARN] PackLoader:240 - Cannot read IP mode file for STMicroelectronics.X-CUBE-EEPRMA1.5.2.0
+2025-09-20 14:37:53,629 [WARN] PackLoader:240 - Cannot read IP mode file for STMicroelectronics.X-CUBE-AZRTOS-G0.1.1.0
+2025-09-20 14:37:53,646 [WARN] PackLoader:240 - Cannot read IP mode file for STMicroelectronics.X-CUBE-SAFEA1.1.2.2
+2025-09-20 14:37:53,655 [WARN] PackLoader:240 - Cannot read IP mode file for STMicroelectronics.X-CUBE-NFC4.3.0.0
+2025-09-20 14:37:53,675 [WARN] PackLoader:240 - Cannot read IP mode file for EmbeddedOffice.I-CUBE-FS-RTOS.1.0.1
+2025-09-20 14:37:53,687 [WARN] PackLoader:240 - Cannot read IP mode file for STMicroelectronics.X-CUBE-WB05N.2.0.0
+2025-09-20 14:37:53,697 [WARN] PackLoader:240 - Cannot read IP mode file for wolfSSL.I-CUBE-wolfTPM.3.8.0
+2025-09-20 14:37:53,717 [WARN] PackLoader:240 - Cannot read IP mode file for STMicroelectronics.X-CUBE-TCPP.4.2.0
+2025-09-20 14:37:53,733 [WARN] PackLoader:240 - Cannot read IP mode file for RealThread.X-CUBE-RT-Thread_Nano.4.1.1
+2025-09-20 14:37:53,746 [WARN] PackLoader:240 - Cannot read IP mode file for STMicroelectronics.FP-ATR-SIGFOX1.3.2.0
+2025-09-20 14:37:53,760 [WARN] PackLoader:240 - Cannot read IP mode file for ITTIA_DB.I-CUBE-ITTIADB.8.9.0
+2025-09-20 14:37:53,774 [WARN] PackLoader:240 - Cannot read IP mode file for STMicroelectronics.X-CUBE-ST67W61.1.0.0
+2025-09-20 14:37:53,786 [WARN] PackLoader:240 - Cannot read IP mode file for STMicroelectronics.X-CUBE-AI.10.2.0
+2025-09-20 14:37:53,861 [WARN] PackLoader:240 - Cannot read IP mode file for SEGGER.I-CUBE-embOS.1.3.1
+2025-09-20 14:37:53,995 [WARN] PackLoader:240 - Cannot read IP mode file for STMicroelectronics.X-CUBE-ALGOBUILD.1.4.0
+2025-09-20 14:37:54,180 [WARN] PackLoader:240 - Cannot read IP mode file for STMicroelectronics.X-CUBE-MEMS1.11.3.0
+2025-09-20 14:37:54,522 [WARN] PackLoader:240 - Cannot read IP mode file for STMicroelectronics.X-CUBE-PM33A1.1.0.0
+2025-09-20 14:37:54,573 [WARN] PackLoader:240 - Cannot read IP mode file for STMicroelectronics.X-CUBE-AZRTOS-F4.1.1.0
+2025-09-20 14:37:54,585 [WARN] PackLoader:240 - Cannot read IP mode file for Avnet-IotConnect.X-CUBE-IoTC-DA16k-PMOD.1.0.0
+2025-09-20 14:37:54,593 [WARN] PackLoader:240 - Cannot read IP mode file for STMicroelectronics.X-CUBE-ISPU.2.1.0
+2025-09-20 14:37:54,608 [WARN] PackLoader:240 - Cannot read IP mode file for STMicroelectronics.X-CUBE-NFC12.1.0.0
+2025-09-20 14:37:54,642 [WARN] PackLoader:240 - Cannot read IP mode file for STMicroelectronics.X-CUBE-AZRTOS-L5.2.0.0
+2025-09-20 14:37:54,659 [WARN] PackLoader:240 - Cannot read IP mode file for STMicroelectronics.X-CUBE-NFC6.3.1.0
+2025-09-20 14:37:54,673 [WARN] PackLoader:240 - Cannot read IP mode file for STMicroelectronics.X-CUBE-FREERTOS.1.3.1
+2025-09-20 14:37:54,683 [WARN] PackLoader:240 - Cannot read IP mode file for STMicroelectronics.FP-SNS-STAIOTCFT.1.0.0
+2025-09-20 14:37:54,691 [WARN] PackLoader:240 - Cannot read IP mode file for STMicroelectronics.X-CUBE-DPower.1.3.0
+2025-09-20 14:37:54,733 [WARN] ConditionMgr:438 - getConditionDescription Invalid condition id : LAN8742 Phy interface Condition cause : null
+2025-09-20 14:37:54,735 [WARN] PackLoader:240 - Cannot read IP mode file for STMicroelectronics.X-CUBE-AZRTOS-L4.2.0.0
+2025-09-20 14:37:54,738 [WARN] ConditionMgr:1044 - genDependencies : Invalid condition id : LAN8742 Phy interface Condition cause : null
+2025-09-20 14:37:54,739 [WARN] ConditionMgr:1044 - genDependencies : Invalid condition id : LAN8742 Phy interface Condition cause : null
+2025-09-20 14:37:54,740 [WARN] ConditionMgr:1044 - genDependencies : Invalid condition id : LAN8742 Phy interface Condition cause : null
+2025-09-20 14:37:54,758 [WARN] PackLoader:240 - Cannot read IP mode file for STMicroelectronics.X-CUBE-SFXS2LP1.4.0.0
+2025-09-20 14:37:54,788 [WARN] PackLoader:240 - Cannot read IP mode file for STMicroelectronics.X-CUBE-BLEMGR.4.1.0
+2025-09-20 14:37:54,826 [WARN] ConditionMgr:438 - getConditionDescription Invalid condition id : UX DEVICE CLASS RTOS Condition cause : null
+2025-09-20 14:37:54,826 [WARN] ConditionMgr:438 - getConditionDescription Invalid condition id : UX DEVICE CLASS RTOS Condition cause : null
+2025-09-20 14:37:54,832 [WARN] PackLoader:240 - Cannot read IP mode file for STMicroelectronics.X-CUBE-AZRTOS-WB.2.0.0
+2025-09-20 14:37:54,833 [WARN] ConditionMgr:1044 - genDependencies : Invalid condition id : UX DEVICE CLASS RTOS Condition cause : null
+2025-09-20 14:37:54,834 [WARN] ConditionMgr:1044 - genDependencies : Invalid condition id : UX DEVICE CLASS RTOS Condition cause : null
+2025-09-20 14:37:54,835 [WARN] ConditionMgr:1044 - genDependencies : Invalid condition id : UX DEVICE CLASS RTOS Condition cause : null
+2025-09-20 14:37:54,836 [WARN] ConditionMgr:1044 - genDependencies : Invalid condition id : UX DEVICE CLASS RTOS Condition cause : null
+2025-09-20 14:37:54,836 [WARN] ConditionMgr:1044 - genDependencies : Invalid condition id : UX DEVICE CLASS RTOS Condition cause : null
+2025-09-20 14:37:54,847 [WARN] PackLoader:240 - Cannot read IP mode file for STMicroelectronics.X-CUBE-GNSS1.7.0.1
+2025-09-20 14:37:54,855 [WARN] PackLoader:240 - Cannot read IP mode file for STMicroelectronics.X-CUBE-TOUCHGFX.4.25.0
+2025-09-20 14:37:54,860 [WARN] ConditionMgr:438 - getConditionDescription Invalid condition id : Cortex-A Device cause : null
+2025-09-20 14:37:54,878 [WARN] ConditionMgr:1044 - genDependencies : Invalid condition id : Cortex-A Device cause : null
+2025-09-20 14:37:54,879 [WARN] ConditionMgr:1044 - genDependencies : Invalid condition id : Cortex-A Device cause : null
+2025-09-20 14:37:54,879 [WARN] ConditionMgr:1044 - genDependencies : Invalid condition id : Cortex-A Device cause : null
+2025-09-20 14:37:54,910 [WARN] PackLoader:240 - Cannot read IP mode file for STMicroelectronics.X-CUBE-SUBG2.5.0.0
+2025-09-20 14:37:54,966 [WARN] PackLoader:240 - Cannot read IP mode file for STMicroelectronics.X-CUBE-AZRTOS-H7RS.1.1.0
+2025-09-20 14:37:54,983 [WARN] PackLoader:240 - Cannot read IP mode file for Cesanta.I-CUBE-Mongoose.7.13.0
+2025-09-20 14:37:55,019 [WARN] PackLoader:240 - Cannot read IP mode file for STMicroelectronics.X-CUBE-AZRTOS-G4.2.0.0
+2025-09-20 14:37:55,027 [WARN] PackLoader:240 - Cannot read IP mode file for wolfSSL.I-CUBE-wolfSSH.1.4.20
+2025-09-20 14:37:55,034 [WARN] PackLoader:240 - Cannot read IP mode file for STMicroelectronics.X-CUBE-NFC7.2.0.0
+2025-09-20 14:37:55,067 [WARN] PackLoader:240 - Cannot read IP mode file for STMicroelectronics.X-CUBE-IPS.3.1.0
+2025-09-20 14:37:55,092 [WARN] PackLoader:240 - Cannot read IP mode file for STMicroelectronics.X-CUBE-ALS.1.0.2
+2025-09-20 14:37:55,124 [WARN] PackLoader:240 - Cannot read IP mode file for STMicroelectronics.X-CUBE-STSE01.1.0.0
+2025-09-20 14:37:55,141 [WARN] PackLoader:240 - Cannot read IP mode file for portGmbH.I-Cube-SoM-uGOAL.1.1.0
+2025-09-20 14:37:55,173 [WARN] PackLoader:240 - Cannot read IP mode file for STMicroelectronics.X-CUBE-TOF1.3.4.3
+2025-09-20 14:37:55,199 [INFO] ThirdParty:978 - Integrity check success = true
+2025-09-20 14:37:55,199 [INFO] IntegrityCheckThread:100 - exiting critical section [integrity check]
+2025-09-20 14:37:55,200 [INFO] IntegrityCheckThread:103 - End integrity checks thread
diff --git a/.metadata/.log b/.metadata/.log
index 07fe663..77dd70d 100644
--- a/.metadata/.log
+++ b/.metadata/.log
@@ -463,3 +463,18 @@ Command-line arguments: -os linux -ws gtk -arch x86_64
!ENTRY com.st.stm32cube.ide.mcu.ide 1 1 2025-09-20 02:01:34.147
!MESSAGE Started RMI Server, listening on port 41337
+!SESSION 2025-09-20 14:37:26.639 -----------------------------------------------
+eclipse.buildId=Version 1.19.0
+java.version=21.0.3
+java.vendor=Eclipse Adoptium
+BootLoader constants: OS=linux, ARCH=x86_64, WS=gtk, NL=en_US
+Command-line arguments: -os linux -ws gtk -arch x86_64
+
+!ENTRY com.st.stm32cube.ide.mcu.informationcenter 4 4 2025-09-20 14:37:34.614
+!MESSAGE CubeMX plugin appears to be active, Log4j initialization might be too late.
+
+!ENTRY com.st.stm32cube.ide.mcu.informationcenter 1 1 2025-09-20 14:37:34.615
+!MESSAGE Log4j2 initialized with config file /home/ja/st/Home/.metadata/.log4j2.xml
+
+!ENTRY com.st.stm32cube.ide.mcu.ide 1 1 2025-09-20 14:37:43.944
+!MESSAGE Started RMI Server, listening on port 41337
diff --git a/.metadata/.plugins/org.eclipse.cdt.core/TrafficLightsPlus.1758137370837.pdom b/.metadata/.plugins/org.eclipse.cdt.core/TrafficLightsPlus.1758137370837.pdom
index 7b53d29..54edb62 100644
Binary files a/.metadata/.plugins/org.eclipse.cdt.core/TrafficLightsPlus.1758137370837.pdom and b/.metadata/.plugins/org.eclipse.cdt.core/TrafficLightsPlus.1758137370837.pdom differ
diff --git a/.metadata/.plugins/org.eclipse.cdt.ui/TrafficLightsPlus.build.log b/.metadata/.plugins/org.eclipse.cdt.ui/TrafficLightsPlus.build.log
index d641a5a..972e114 100644
--- a/.metadata/.plugins/org.eclipse.cdt.ui/TrafficLightsPlus.build.log
+++ b/.metadata/.plugins/org.eclipse.cdt.ui/TrafficLightsPlus.build.log
@@ -1,17 +1,17 @@
-03:14:32 **** Incremental Build of configuration Debug for project TrafficLightsPlus ****
+14:43:49 **** Incremental Build of configuration Debug for project TrafficLightsPlus ****
make -j8 all
-arm-none-eabi-gcc "../Core/Src/main.c" -mcpu=cortex-m4 -std=gnu11 -g3 -DDEBUG -DUSE_HAL_DRIVER -DSTM32F429xx -c -I../Core/Inc -I../USB_HOST/App -I../USB_HOST/Target -I../Drivers/STM32F4xx_HAL_Driver/Inc -I../Drivers/STM32F4xx_HAL_Driver/Inc/Legacy -I../Middlewares/Third_Party/FreeRTOS/Source/include -I../Middlewares/Third_Party/FreeRTOS/Source/CMSIS_RTOS -I../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F -I../Middlewares/ST/STM32_USB_Host_Library/Core/Inc -I../Middlewares/ST/STM32_USB_Host_Library/Class/CDC/Inc -I../Drivers/CMSIS/Device/ST/STM32F4xx/Include -I../Drivers/CMSIS/Include -O0 -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"Core/Src/main.d" -MT"Core/Src/main.o" --specs=nano.specs -mfpu=fpv4-sp-d16 -mfloat-abi=hard -mthumb -o "Core/Src/main.o"
+arm-none-eabi-gcc "../Core/Src/breadboard.c" -mcpu=cortex-m4 -std=gnu11 -g3 -DDEBUG -DUSE_HAL_DRIVER -DSTM32F429xx -c -I../Core/Inc -I../USB_HOST/App -I../USB_HOST/Target -I../Drivers/STM32F4xx_HAL_Driver/Inc -I../Drivers/STM32F4xx_HAL_Driver/Inc/Legacy -I../Middlewares/Third_Party/FreeRTOS/Source/include -I../Middlewares/Third_Party/FreeRTOS/Source/CMSIS_RTOS -I../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F -I../Middlewares/ST/STM32_USB_Host_Library/Core/Inc -I../Middlewares/ST/STM32_USB_Host_Library/Class/CDC/Inc -I../Drivers/CMSIS/Device/ST/STM32F4xx/Include -I../Drivers/CMSIS/Include -O0 -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"Core/Src/breadboard.d" -MT"Core/Src/breadboard.o" --specs=nano.specs -mfpu=fpv4-sp-d16 -mfloat-abi=hard -mthumb -o "Core/Src/breadboard.o"
arm-none-eabi-gcc -o "TrafficLightsPlus.elf" @"objects.list" -mcpu=cortex-m4 -T"/home/ja/st/Home/TrafficLightsPlus/STM32F429ZITX_FLASH.ld" --specs=nosys.specs -Wl,-Map="TrafficLightsPlus.map" -Wl,--gc-sections -static --specs=nano.specs -mfpu=fpv4-sp-d16 -mfloat-abi=hard -mthumb -Wl,--start-group -lc -lm -Wl,--end-group
Finished building target: TrafficLightsPlus.elf
arm-none-eabi-size TrafficLightsPlus.elf
arm-none-eabi-objdump -h -S TrafficLightsPlus.elf > "TrafficLightsPlus.list"
text data bss dec hex filename
- 32528 16 3480 36024 8cb8 TrafficLightsPlus.elf
+ 32576 16 3480 36072 8ce8 TrafficLightsPlus.elf
Finished building: default.size.stdout
Finished building: TrafficLightsPlus.list
-03:14:33 Build Finished. 0 errors, 0 warnings. (took 639ms)
+14:43:50 Build Finished. 0 errors, 0 warnings. (took 703ms)
diff --git a/.metadata/.plugins/org.eclipse.cdt.ui/global-build.log b/.metadata/.plugins/org.eclipse.cdt.ui/global-build.log
index 306bc75..0c53285 100644
--- a/.metadata/.plugins/org.eclipse.cdt.ui/global-build.log
+++ b/.metadata/.plugins/org.eclipse.cdt.ui/global-build.log
@@ -1,13 +1,13 @@
-03:14:32 **** Incremental Build of configuration Debug for project TrafficLightsPlus ****
+14:43:49 **** Incremental Build of configuration Debug for project TrafficLightsPlus ****
make -j8 all
-arm-none-eabi-gcc "../Core/Src/main.c" -mcpu=cortex-m4 -std=gnu11 -g3 -DDEBUG -DUSE_HAL_DRIVER -DSTM32F429xx -c -I../Core/Inc -I../USB_HOST/App -I../USB_HOST/Target -I../Drivers/STM32F4xx_HAL_Driver/Inc -I../Drivers/STM32F4xx_HAL_Driver/Inc/Legacy -I../Middlewares/Third_Party/FreeRTOS/Source/include -I../Middlewares/Third_Party/FreeRTOS/Source/CMSIS_RTOS -I../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F -I../Middlewares/ST/STM32_USB_Host_Library/Core/Inc -I../Middlewares/ST/STM32_USB_Host_Library/Class/CDC/Inc -I../Drivers/CMSIS/Device/ST/STM32F4xx/Include -I../Drivers/CMSIS/Include -O0 -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"Core/Src/main.d" -MT"Core/Src/main.o" --specs=nano.specs -mfpu=fpv4-sp-d16 -mfloat-abi=hard -mthumb -o "Core/Src/main.o"
+arm-none-eabi-gcc "../Core/Src/breadboard.c" -mcpu=cortex-m4 -std=gnu11 -g3 -DDEBUG -DUSE_HAL_DRIVER -DSTM32F429xx -c -I../Core/Inc -I../USB_HOST/App -I../USB_HOST/Target -I../Drivers/STM32F4xx_HAL_Driver/Inc -I../Drivers/STM32F4xx_HAL_Driver/Inc/Legacy -I../Middlewares/Third_Party/FreeRTOS/Source/include -I../Middlewares/Third_Party/FreeRTOS/Source/CMSIS_RTOS -I../Middlewares/Third_Party/FreeRTOS/Source/portable/GCC/ARM_CM4F -I../Middlewares/ST/STM32_USB_Host_Library/Core/Inc -I../Middlewares/ST/STM32_USB_Host_Library/Class/CDC/Inc -I../Drivers/CMSIS/Device/ST/STM32F4xx/Include -I../Drivers/CMSIS/Include -O0 -ffunction-sections -fdata-sections -Wall -fstack-usage -fcyclomatic-complexity -MMD -MP -MF"Core/Src/breadboard.d" -MT"Core/Src/breadboard.o" --specs=nano.specs -mfpu=fpv4-sp-d16 -mfloat-abi=hard -mthumb -o "Core/Src/breadboard.o"
arm-none-eabi-gcc -o "TrafficLightsPlus.elf" @"objects.list" -mcpu=cortex-m4 -T"/home/ja/st/Home/TrafficLightsPlus/STM32F429ZITX_FLASH.ld" --specs=nosys.specs -Wl,-Map="TrafficLightsPlus.map" -Wl,--gc-sections -static --specs=nano.specs -mfpu=fpv4-sp-d16 -mfloat-abi=hard -mthumb -Wl,--start-group -lc -lm -Wl,--end-group
Finished building target: TrafficLightsPlus.elf
arm-none-eabi-size TrafficLightsPlus.elf
arm-none-eabi-objdump -h -S TrafficLightsPlus.elf > "TrafficLightsPlus.list"
text data bss dec hex filename
- 32528 16 3480 36024 8cb8 TrafficLightsPlus.elf
+ 32576 16 3480 36072 8ce8 TrafficLightsPlus.elf
Finished building: default.size.stdout
Finished building: TrafficLightsPlus.list
diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/17/907865b45996001013e892f2240cdbac b/.metadata/.plugins/org.eclipse.core.resources/.history/17/907865b45996001013e892f2240cdbac
new file mode 100644
index 0000000..b5652eb
--- /dev/null
+++ b/.metadata/.plugins/org.eclipse.core.resources/.history/17/907865b45996001013e892f2240cdbac
@@ -0,0 +1,50 @@
+/*
+ * breadboard.c
+ *
+ * Created on: Sep 17, 2025
+ * Author: ja
+ */
+
+/*
+ * #define RedLight_Pin GPIO_PIN_2
+ * #define RedLight_GPIO_Port GPIOE
+ *
+ * #define YellowLight_Pin GPIO_PIN_3
+ * #define YellowLight_GPIO_Port GPIOE
+ *
+ * #define GreenLight_Pin GPIO_PIN_4
+ * #define GreenLight_GPIO_Port GPIOE
+ *
+ * RedLight: PE2
+ * YellowLight: PE3
+ * GreenLight: PE4
+ */
+
+#include "main.h"
+#include "breadboard.h"
+
+// HAL_GPIO_WritePin(LED_EXT_GPIO_Port, LED_EXT_Pin, GPIO_PIN_RESET);
+void
+breadboard(int traffSPD)
+{
+ // Traffic Light
+ /*
+ HAL_GPIO_WritePin(GreenLight_GPIO_Port, RedLight_Pin, GPIO_PIN_RESET);
+ HAL_GPIO_WritePin(RedLight_GPIO_Port, RedLight_Pin, GPIO_PIN_SET);
+ HAL_Delay(traffSPD);
+
+ HAL_GPIO_WritePin(RedLight_GPIO_Port, YellowLight_Pin, GPIO_PIN_RESET);
+ HAL_GPIO_WritePin(YellowLight_GPIO_Port, YellowLight_Pin, GPIO_PIN_SET);
+ HAL_Delay(traffSPD);
+
+ HAL_GPIO_WritePin(YellowLight_GPIO_Port, GreenLight_Pin, GPIO_PIN_RESET);
+ HAL_GPIO_WritePin(GreenLight_GPIO_Port, GreenLight_Pin, GPIO_PIN_SET);
+ HAL_Delay(traffSPD);
+ */
+
+
+
+ // Walk signal
+
+ // Light dimmer
+}
diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/43/006932455a96001013e892f2240cdbac b/.metadata/.plugins/org.eclipse.core.resources/.history/43/006932455a96001013e892f2240cdbac
new file mode 100644
index 0000000..cb8094b
--- /dev/null
+++ b/.metadata/.plugins/org.eclipse.core.resources/.history/43/006932455a96001013e892f2240cdbac
@@ -0,0 +1,69 @@
+/*
+ * breadboard.c
+ *
+ * Created on: Sep 17, 2025
+ * Author: ja
+ */
+
+/*
+ * #define RedLight_Pin GPIO_PIN_2
+ * #define RedLight_GPIO_Port GPIOE
+ *
+ * #define YellowLight_Pin GPIO_PIN_3
+ * #define YellowLight_GPIO_Port GPIOE
+ *
+ * #define GreenLight_Pin GPIO_PIN_4
+ * #define GreenLight_GPIO_Port GPIOE
+ *
+ * RedLight: PE2
+ * YellowLight: PE3
+ * GreenLight: PE4
+ */
+
+#include "main.h"
+#include "breadboard.h"
+
+#define R_Pin RedLight_Pin
+#define Y_Pin YellowLight_Pin
+#define G_Pin GreenLight_Pin
+
+#define R_Prt RedLight_GPIO_Port
+#define Y_Prt YellowLight_GPIO_Port
+#define G_Prt GreenLight_GPIO_Port
+
+// HAL_GPIO_WritePin(LED_EXT_GPIO_Port, LED_EXT_Pin, GPIO_PIN_RESET);
+void
+breadboard(int traffSPD)
+{
+ // Traffic Light
+ /*
+ HAL_GPIO_WritePin(GreenLight_GPIO_Port, RedLight_Pin, GPIO_PIN_RESET);
+ HAL_GPIO_WritePin(RedLight_GPIO_Port, RedLight_Pin, GPIO_PIN_SET);
+ HAL_Delay(traffSPD);
+
+ HAL_GPIO_WritePin(RedLight_GPIO_Port, YellowLight_Pin, GPIO_PIN_RESET);
+ HAL_GPIO_WritePin(YellowLight_GPIO_Port, YellowLight_Pin, GPIO_PIN_SET);
+ HAL_Delay(traffSPD);
+
+ HAL_GPIO_WritePin(YellowLight_GPIO_Port, GreenLight_Pin, GPIO_PIN_RESET);
+ HAL_GPIO_WritePin(GreenLight_GPIO_Port, GreenLight_Pin, GPIO_PIN_SET);
+ HAL_Delay(traffSPD);
+ */
+
+ HAL_GPIO_TogglePin(R_Prt, R_Pin);
+ HAL_Delay(traffSPD);
+ HAL_GPIO_TogglePin(R_Prt, R_Pin);
+
+ HAL_GPIO_TogglePin(Y_Prt, Y_Pin);
+ HAL_Delay(traffSPD);
+ HAL_GPIO_TogglePin(Y_Prt, Y_Pin);
+
+ HAL_GPIO_TogglePin(G_Prt, G_Pin);
+ HAL_Delay(traffSPD);
+ HAL_GPIO_TogglePin(G_Prt, G_Pin);
+
+
+ // Walk signal
+
+ // Light dimmer
+}
diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/54/20001d5e5996001013e892f2240cdbac b/.metadata/.plugins/org.eclipse.core.resources/.history/54/20001d5e5996001013e892f2240cdbac
new file mode 100644
index 0000000..f9a0e43
--- /dev/null
+++ b/.metadata/.plugins/org.eclipse.core.resources/.history/54/20001d5e5996001013e892f2240cdbac
@@ -0,0 +1,46 @@
+/*
+ * breadboard.c
+ *
+ * Created on: Sep 17, 2025
+ * Author: ja
+ */
+
+/*
+ * #define RedLight_Pin GPIO_PIN_2
+ * #define RedLight_GPIO_Port GPIOE
+ *
+ * #define YellowLight_Pin GPIO_PIN_3
+ * #define YellowLight_GPIO_Port GPIOE
+ *
+ * #define GreenLight_Pin GPIO_PIN_4
+ * #define GreenLight_GPIO_Port GPIOE
+ *
+ * RedLight: PE2
+ * YellowLight: PE3
+ * GreenLight: PE4
+ */
+
+#include "main.h"
+#include "breadboard.h"
+
+// HAL_GPIO_WritePin(LED_EXT_GPIO_Port, LED_EXT_Pin, GPIO_PIN_RESET);
+void
+breadboard(int traffSPD)
+{
+ // Traffic Light
+ HAL_GPIO_WritePin(GreenLight_GPIO_Port, RedLight_Pin, GPIO_PIN_RESET);
+ HAL_GPIO_WritePin(RedLight_GPIO_Port, RedLight_Pin, GPIO_PIN_SET);
+ HAL_Delay(traffSPD);
+
+ HAL_GPIO_WritePin(RedLight_GPIO_Port, YellowLight_Pin, GPIO_PIN_RESET);
+ HAL_GPIO_WritePin(YellowLight_GPIO_Port, YellowLight_Pin, GPIO_PIN_SET);
+ HAL_Delay(traffSPD);
+
+ HAL_GPIO_WritePin(YellowLight_GPIO_Port, GreenLight_Pin, GPIO_PIN_RESET);
+ HAL_GPIO_WritePin(GreenLight_GPIO_Port, GreenLight_Pin, GPIO_PIN_SET);
+ HAL_Delay(traffSPD);
+
+ // Walk signal
+
+ // Light dimmer
+}
diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/55/f0c14c4b5a96001013e892f2240cdbac b/.metadata/.plugins/org.eclipse.core.resources/.history/55/f0c14c4b5a96001013e892f2240cdbac
new file mode 100644
index 0000000..6bbfd85
--- /dev/null
+++ b/.metadata/.plugins/org.eclipse.core.resources/.history/55/f0c14c4b5a96001013e892f2240cdbac
@@ -0,0 +1,56 @@
+/*
+ * breadboard.c
+ *
+ * Created on: Sep 17, 2025
+ * Author: ja
+ */
+
+/*
+ * #define RedLight_Pin GPIO_PIN_2
+ * #define RedLight_GPIO_Port GPIOE
+ *
+ * #define YellowLight_Pin GPIO_PIN_3
+ * #define YellowLight_GPIO_Port GPIOE
+ *
+ * #define GreenLight_Pin GPIO_PIN_4
+ * #define GreenLight_GPIO_Port GPIOE
+ *
+ * RedLight: PE2
+ * YellowLight: PE3
+ * GreenLight: PE4
+ */
+
+#include "main.h"
+#include "breadboard.h"
+
+#define R_Pin RedLight_Pin
+#define Y_Pin YellowLight_Pin
+#define G_Pin GreenLight_Pin
+
+#define R_Prt RedLight_GPIO_Port
+#define Y_Prt YellowLight_GPIO_Port
+#define G_Prt GreenLight_GPIO_Port
+
+// HAL_GPIO_WritePin(LED_EXT_GPIO_Port, LED_EXT_Pin, GPIO_PIN_RESET);
+void
+breadboard(int traffSPD)
+{
+ // Traffic Light
+
+ HAL_GPIO_TogglePin(R_Prt, R_Pin);
+ HAL_Delay(traffSPD);
+ HAL_GPIO_TogglePin(R_Prt, R_Pin);
+
+ HAL_GPIO_TogglePin(Y_Prt, Y_Pin);
+ HAL_Delay(traffSPD);
+ HAL_GPIO_TogglePin(Y_Prt, Y_Pin);
+
+ HAL_GPIO_TogglePin(G_Prt, G_Pin);
+ HAL_Delay(traffSPD);
+ HAL_GPIO_TogglePin(G_Prt, G_Pin);
+
+
+ // Walk signal
+
+ // Light dimmer
+}
diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/6/303219ca5996001013e892f2240cdbac b/.metadata/.plugins/org.eclipse.core.resources/.history/6/303219ca5996001013e892f2240cdbac
new file mode 100644
index 0000000..313bde0
--- /dev/null
+++ b/.metadata/.plugins/org.eclipse.core.resources/.history/6/303219ca5996001013e892f2240cdbac
@@ -0,0 +1,59 @@
+/*
+ * breadboard.c
+ *
+ * Created on: Sep 17, 2025
+ * Author: ja
+ */
+
+/*
+ * #define RedLight_Pin GPIO_PIN_2
+ * #define RedLight_GPIO_Port GPIOE
+ *
+ * #define YellowLight_Pin GPIO_PIN_3
+ * #define YellowLight_GPIO_Port GPIOE
+ *
+ * #define GreenLight_Pin GPIO_PIN_4
+ * #define GreenLight_GPIO_Port GPIOE
+ *
+ * RedLight: PE2
+ * YellowLight: PE3
+ * GreenLight: PE4
+ */
+
+#include "main.h"
+#include "breadboard.h"
+
+#define R_Pin RedLight_Pin
+#define Y_Pin YellowLight_Pin
+#define G_Pin GreenLight_Pin
+
+#define R_Prt RedLight_GPIO_Port
+#define Y_Prt YellowLight_GPIO_Port
+#define G_Prt GreenLight_GPIO_Port
+
+// HAL_GPIO_WritePin(LED_EXT_GPIO_Port, LED_EXT_Pin, GPIO_PIN_RESET);
+void
+breadboard(int traffSPD)
+{
+ // Traffic Light
+ /*
+ HAL_GPIO_WritePin(GreenLight_GPIO_Port, RedLight_Pin, GPIO_PIN_RESET);
+ HAL_GPIO_WritePin(RedLight_GPIO_Port, RedLight_Pin, GPIO_PIN_SET);
+ HAL_Delay(traffSPD);
+
+ HAL_GPIO_WritePin(RedLight_GPIO_Port, YellowLight_Pin, GPIO_PIN_RESET);
+ HAL_GPIO_WritePin(YellowLight_GPIO_Port, YellowLight_Pin, GPIO_PIN_SET);
+ HAL_Delay(traffSPD);
+
+ HAL_GPIO_WritePin(YellowLight_GPIO_Port, GreenLight_Pin, GPIO_PIN_RESET);
+ HAL_GPIO_WritePin(GreenLight_GPIO_Port, GreenLight_Pin, GPIO_PIN_SET);
+ HAL_Delay(traffSPD);
+ */
+
+ HAL_GPIO_TogglePin()
+
+
+ // Walk signal
+
+ // Light dimmer
+}
diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/66/800224035a96001013e892f2240cdbac b/.metadata/.plugins/org.eclipse.core.resources/.history/66/800224035a96001013e892f2240cdbac
new file mode 100644
index 0000000..752203c
--- /dev/null
+++ b/.metadata/.plugins/org.eclipse.core.resources/.history/66/800224035a96001013e892f2240cdbac
@@ -0,0 +1,61 @@
+/*
+ * breadboard.c
+ *
+ * Created on: Sep 17, 2025
+ * Author: ja
+ */
+
+/*
+ * #define RedLight_Pin GPIO_PIN_2
+ * #define RedLight_GPIO_Port GPIOE
+ *
+ * #define YellowLight_Pin GPIO_PIN_3
+ * #define YellowLight_GPIO_Port GPIOE
+ *
+ * #define GreenLight_Pin GPIO_PIN_4
+ * #define GreenLight_GPIO_Port GPIOE
+ *
+ * RedLight: PE2
+ * YellowLight: PE3
+ * GreenLight: PE4
+ */
+
+#include "main.h"
+#include "breadboard.h"
+
+#define R_Pin RedLight_Pin
+#define Y_Pin YellowLight_Pin
+#define G_Pin GreenLight_Pin
+
+#define R_Prt RedLight_GPIO_Port
+#define Y_Prt YellowLight_GPIO_Port
+#define G_Prt GreenLight_GPIO_Port
+
+// HAL_GPIO_WritePin(LED_EXT_GPIO_Port, LED_EXT_Pin, GPIO_PIN_RESET);
+void
+breadboard(int traffSPD)
+{
+ // Traffic Light
+ /*
+ HAL_GPIO_WritePin(GreenLight_GPIO_Port, RedLight_Pin, GPIO_PIN_RESET);
+ HAL_GPIO_WritePin(RedLight_GPIO_Port, RedLight_Pin, GPIO_PIN_SET);
+ HAL_Delay(traffSPD);
+
+ HAL_GPIO_WritePin(RedLight_GPIO_Port, YellowLight_Pin, GPIO_PIN_RESET);
+ HAL_GPIO_WritePin(YellowLight_GPIO_Port, YellowLight_Pin, GPIO_PIN_SET);
+ HAL_Delay(traffSPD);
+
+ HAL_GPIO_WritePin(YellowLight_GPIO_Port, GreenLight_Pin, GPIO_PIN_RESET);
+ HAL_GPIO_WritePin(GreenLight_GPIO_Port, GreenLight_Pin, GPIO_PIN_SET);
+ HAL_Delay(traffSPD);
+ */
+
+ HAL_GPIO_TogglePin(R_Port, R_Pin);
+ HAL_Delay(traffSPD);
+ HAL_GPIO_TogglePin(R_Port, R_Pin);
+
+
+ // Walk signal
+
+ // Light dimmer
+}
diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/c1/40d5070f5a96001013e892f2240cdbac b/.metadata/.plugins/org.eclipse.core.resources/.history/c1/40d5070f5a96001013e892f2240cdbac
new file mode 100644
index 0000000..6b0eb2e
--- /dev/null
+++ b/.metadata/.plugins/org.eclipse.core.resources/.history/c1/40d5070f5a96001013e892f2240cdbac
@@ -0,0 +1,69 @@
+/*
+ * breadboard.c
+ *
+ * Created on: Sep 17, 2025
+ * Author: ja
+ */
+
+/*
+ * #define RedLight_Pin GPIO_PIN_2
+ * #define RedLight_GPIO_Port GPIOE
+ *
+ * #define YellowLight_Pin GPIO_PIN_3
+ * #define YellowLight_GPIO_Port GPIOE
+ *
+ * #define GreenLight_Pin GPIO_PIN_4
+ * #define GreenLight_GPIO_Port GPIOE
+ *
+ * RedLight: PE2
+ * YellowLight: PE3
+ * GreenLight: PE4
+ */
+
+#include "main.h"
+#include "breadboard.h"
+
+#define R_Pin RedLight_Pin
+#define Y_Pin YellowLight_Pin
+#define G_Pin GreenLight_Pin
+
+#define R_Prt RedLight_GPIO_Port
+#define Y_Prt YellowLight_GPIO_Port
+#define G_Prt GreenLight_GPIO_Port
+
+// HAL_GPIO_WritePin(LED_EXT_GPIO_Port, LED_EXT_Pin, GPIO_PIN_RESET);
+void
+breadboard(int traffSPD)
+{
+ // Traffic Light
+ /*
+ HAL_GPIO_WritePin(GreenLight_GPIO_Port, RedLight_Pin, GPIO_PIN_RESET);
+ HAL_GPIO_WritePin(RedLight_GPIO_Port, RedLight_Pin, GPIO_PIN_SET);
+ HAL_Delay(traffSPD);
+
+ HAL_GPIO_WritePin(RedLight_GPIO_Port, YellowLight_Pin, GPIO_PIN_RESET);
+ HAL_GPIO_WritePin(YellowLight_GPIO_Port, YellowLight_Pin, GPIO_PIN_SET);
+ HAL_Delay(traffSPD);
+
+ HAL_GPIO_WritePin(YellowLight_GPIO_Port, GreenLight_Pin, GPIO_PIN_RESET);
+ HAL_GPIO_WritePin(GreenLight_GPIO_Port, GreenLight_Pin, GPIO_PIN_SET);
+ HAL_Delay(traffSPD);
+ */
+
+ HAL_GPIO_TogglePin(R_Port, R_Pin);
+ HAL_Delay(traffSPD);
+ HAL_GPIO_TogglePin(R_Port, R_Pin);
+
+ HAL_GPIO_TogglePin(Y_Port, Y_Pin);
+ HAL_Delay(traffSPD);
+ HAL_GPIO_TogglePin(Y_Port, Y_Pin);
+
+ HAL_GPIO_TogglePin(G_Port, G_Pin);
+ HAL_Delay(traffSPD);
+ HAL_GPIO_TogglePin(G_Port, G_Pin);
+
+
+ // Walk signal
+
+ // Light dimmer
+}
diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/e0/f0d64bd85996001013e892f2240cdbac b/.metadata/.plugins/org.eclipse.core.resources/.history/e0/f0d64bd85996001013e892f2240cdbac
new file mode 100644
index 0000000..7e42a71
--- /dev/null
+++ b/.metadata/.plugins/org.eclipse.core.resources/.history/e0/f0d64bd85996001013e892f2240cdbac
@@ -0,0 +1,60 @@
+/*
+ * breadboard.c
+ *
+ * Created on: Sep 17, 2025
+ * Author: ja
+ */
+
+/*
+ * #define RedLight_Pin GPIO_PIN_2
+ * #define RedLight_GPIO_Port GPIOE
+ *
+ * #define YellowLight_Pin GPIO_PIN_3
+ * #define YellowLight_GPIO_Port GPIOE
+ *
+ * #define GreenLight_Pin GPIO_PIN_4
+ * #define GreenLight_GPIO_Port GPIOE
+ *
+ * RedLight: PE2
+ * YellowLight: PE3
+ * GreenLight: PE4
+ */
+
+#include "main.h"
+#include "breadboard.h"
+
+#define R_Pin RedLight_Pin
+#define Y_Pin YellowLight_Pin
+#define G_Pin GreenLight_Pin
+
+#define R_Prt RedLight_GPIO_Port
+#define Y_Prt YellowLight_GPIO_Port
+#define G_Prt GreenLight_GPIO_Port
+
+// HAL_GPIO_WritePin(LED_EXT_GPIO_Port, LED_EXT_Pin, GPIO_PIN_RESET);
+void
+breadboard(int traffSPD)
+{
+ // Traffic Light
+ /*
+ HAL_GPIO_WritePin(GreenLight_GPIO_Port, RedLight_Pin, GPIO_PIN_RESET);
+ HAL_GPIO_WritePin(RedLight_GPIO_Port, RedLight_Pin, GPIO_PIN_SET);
+ HAL_Delay(traffSPD);
+
+ HAL_GPIO_WritePin(RedLight_GPIO_Port, YellowLight_Pin, GPIO_PIN_RESET);
+ HAL_GPIO_WritePin(YellowLight_GPIO_Port, YellowLight_Pin, GPIO_PIN_SET);
+ HAL_Delay(traffSPD);
+
+ HAL_GPIO_WritePin(YellowLight_GPIO_Port, GreenLight_Pin, GPIO_PIN_RESET);
+ HAL_GPIO_WritePin(GreenLight_GPIO_Port, GreenLight_Pin, GPIO_PIN_SET);
+ HAL_Delay(traffSPD);
+ */
+
+ HAL_GPIO_TogglePin(R_Port, R_Pin);
+ HAL_Delay(traffSPD);
+
+
+ // Walk signal
+
+ // Light dimmer
+}
diff --git a/.metadata/.plugins/org.eclipse.core.resources/.history/f3/d025cad05996001013e892f2240cdbac b/.metadata/.plugins/org.eclipse.core.resources/.history/f3/d025cad05996001013e892f2240cdbac
new file mode 100644
index 0000000..a57fdd3
--- /dev/null
+++ b/.metadata/.plugins/org.eclipse.core.resources/.history/f3/d025cad05996001013e892f2240cdbac
@@ -0,0 +1,59 @@
+/*
+ * breadboard.c
+ *
+ * Created on: Sep 17, 2025
+ * Author: ja
+ */
+
+/*
+ * #define RedLight_Pin GPIO_PIN_2
+ * #define RedLight_GPIO_Port GPIOE
+ *
+ * #define YellowLight_Pin GPIO_PIN_3
+ * #define YellowLight_GPIO_Port GPIOE
+ *
+ * #define GreenLight_Pin GPIO_PIN_4
+ * #define GreenLight_GPIO_Port GPIOE
+ *
+ * RedLight: PE2
+ * YellowLight: PE3
+ * GreenLight: PE4
+ */
+
+#include "main.h"
+#include "breadboard.h"
+
+#define R_Pin RedLight_Pin
+#define Y_Pin YellowLight_Pin
+#define G_Pin GreenLight_Pin
+
+#define R_Prt RedLight_GPIO_Port
+#define Y_Prt YellowLight_GPIO_Port
+#define G_Prt GreenLight_GPIO_Port
+
+// HAL_GPIO_WritePin(LED_EXT_GPIO_Port, LED_EXT_Pin, GPIO_PIN_RESET);
+void
+breadboard(int traffSPD)
+{
+ // Traffic Light
+ /*
+ HAL_GPIO_WritePin(GreenLight_GPIO_Port, RedLight_Pin, GPIO_PIN_RESET);
+ HAL_GPIO_WritePin(RedLight_GPIO_Port, RedLight_Pin, GPIO_PIN_SET);
+ HAL_Delay(traffSPD);
+
+ HAL_GPIO_WritePin(RedLight_GPIO_Port, YellowLight_Pin, GPIO_PIN_RESET);
+ HAL_GPIO_WritePin(YellowLight_GPIO_Port, YellowLight_Pin, GPIO_PIN_SET);
+ HAL_Delay(traffSPD);
+
+ HAL_GPIO_WritePin(YellowLight_GPIO_Port, GreenLight_Pin, GPIO_PIN_RESET);
+ HAL_GPIO_WritePin(GreenLight_GPIO_Port, GreenLight_Pin, GPIO_PIN_SET);
+ HAL_Delay(traffSPD);
+ */
+
+ HAL_GPIO_TogglePin(R_Port, R_Pin);
+
+
+ // Walk signal
+
+ // Light dimmer
+}
diff --git a/.metadata/.plugins/org.eclipse.core.resources/.projects/Calc2/.markers.snap b/.metadata/.plugins/org.eclipse.core.resources/.projects/Calc2/.markers.snap
new file mode 100644
index 0000000..0b368ce
Binary files /dev/null and b/.metadata/.plugins/org.eclipse.core.resources/.projects/Calc2/.markers.snap differ
diff --git a/.metadata/.plugins/org.eclipse.core.resources/.projects/Calc2/.syncinfo.snap b/.metadata/.plugins/org.eclipse.core.resources/.projects/Calc2/.syncinfo.snap
new file mode 100644
index 0000000..0b368ce
Binary files /dev/null and b/.metadata/.plugins/org.eclipse.core.resources/.projects/Calc2/.syncinfo.snap differ
diff --git a/.metadata/.plugins/org.eclipse.core.resources/.projects/Calculator/.markers.snap b/.metadata/.plugins/org.eclipse.core.resources/.projects/Calculator/.markers.snap
new file mode 100644
index 0000000..0b368ce
Binary files /dev/null and b/.metadata/.plugins/org.eclipse.core.resources/.projects/Calculator/.markers.snap differ
diff --git a/.metadata/.plugins/org.eclipse.core.resources/.projects/Calculator/.syncinfo.snap b/.metadata/.plugins/org.eclipse.core.resources/.projects/Calculator/.syncinfo.snap
new file mode 100644
index 0000000..0b368ce
Binary files /dev/null and b/.metadata/.plugins/org.eclipse.core.resources/.projects/Calculator/.syncinfo.snap differ
diff --git a/.metadata/.plugins/org.eclipse.core.resources/.projects/MyNewProject/.markers.snap b/.metadata/.plugins/org.eclipse.core.resources/.projects/MyNewProject/.markers.snap
new file mode 100644
index 0000000..0b368ce
Binary files /dev/null and b/.metadata/.plugins/org.eclipse.core.resources/.projects/MyNewProject/.markers.snap differ
diff --git a/.metadata/.plugins/org.eclipse.core.resources/.projects/MyNewProject/.syncinfo.snap b/.metadata/.plugins/org.eclipse.core.resources/.projects/MyNewProject/.syncinfo.snap
new file mode 100644
index 0000000..0b368ce
Binary files /dev/null and b/.metadata/.plugins/org.eclipse.core.resources/.projects/MyNewProject/.syncinfo.snap differ
diff --git a/.metadata/.plugins/org.eclipse.core.resources/.projects/TrafficLightsPlus/.markers.snap b/.metadata/.plugins/org.eclipse.core.resources/.projects/TrafficLightsPlus/.markers.snap
new file mode 100644
index 0000000..0b368ce
Binary files /dev/null and b/.metadata/.plugins/org.eclipse.core.resources/.projects/TrafficLightsPlus/.markers.snap differ
diff --git a/.metadata/.plugins/org.eclipse.core.resources/.projects/TrafficLightsPlus/.syncinfo.snap b/.metadata/.plugins/org.eclipse.core.resources/.projects/TrafficLightsPlus/.syncinfo.snap
new file mode 100644
index 0000000..0b368ce
Binary files /dev/null and b/.metadata/.plugins/org.eclipse.core.resources/.projects/TrafficLightsPlus/.syncinfo.snap differ
diff --git a/.metadata/.plugins/org.eclipse.core.resources/.root/.markers.snap b/.metadata/.plugins/org.eclipse.core.resources/.root/.markers.snap
new file mode 100644
index 0000000..0b368ce
Binary files /dev/null and b/.metadata/.plugins/org.eclipse.core.resources/.root/.markers.snap differ
diff --git a/.metadata/.plugins/org.eclipse.core.resources/.safetable/org.eclipse.core.resources b/.metadata/.plugins/org.eclipse.core.resources/.safetable/org.eclipse.core.resources
index 7eb2952..a5ea2a7 100644
Binary files a/.metadata/.plugins/org.eclipse.core.resources/.safetable/org.eclipse.core.resources and b/.metadata/.plugins/org.eclipse.core.resources/.safetable/org.eclipse.core.resources differ
diff --git a/.metadata/.plugins/org.eclipse.core.resources/16.snap b/.metadata/.plugins/org.eclipse.core.resources/16.snap
new file mode 100644
index 0000000..baea677
Binary files /dev/null and b/.metadata/.plugins/org.eclipse.core.resources/16.snap differ
diff --git a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.debug.ui.prefs b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.debug.ui.prefs
index f205b55..bab427a 100644
--- a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.debug.ui.prefs
+++ b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.debug.ui.prefs
@@ -1,3 +1,12 @@
eclipse.preferences.version=1
+org.eclipse.debug.ui.MemoryHistoryKnownColor=235,235,235
+org.eclipse.debug.ui.MemoryHistoryUnknownColor=170,175,185
+org.eclipse.debug.ui.PREF_CHANGED_VALUE_BACKGROUND=150,80,115
org.eclipse.debug.ui.PREF_LAUNCH_PERSPECTIVES=\n\n
+org.eclipse.debug.ui.changedDebugElement=255,128,128
+org.eclipse.debug.ui.consoleBackground=53,53,53
+org.eclipse.debug.ui.errorColor=225,30,70
+org.eclipse.debug.ui.inColor=140,175,210
+org.eclipse.debug.ui.outColor=235,235,235
+overriddenByCSS=,org.eclipse.debug.ui.MemoryHistoryKnownColor,org.eclipse.debug.ui.MemoryHistoryUnknownColor,org.eclipse.debug.ui.PREF_CHANGED_VALUE_BACKGROUND,org.eclipse.debug.ui.changedDebugElement,org.eclipse.debug.ui.consoleBackground,org.eclipse.debug.ui.errorColor,org.eclipse.debug.ui.inColor,org.eclipse.debug.ui.outColor,
preferredTargets=org.eclipse.cdt.debug.ui.toggleCBreakpointTarget,org.eclipse.cdt.debug.ui.toggleCDynamicPrintfTarget\:org.eclipse.cdt.debug.ui.toggleCBreakpointTarget|
diff --git a/.metadata/.plugins/org.eclipse.e4.workbench/workbench.xmi b/.metadata/.plugins/org.eclipse.e4.workbench/workbench.xmi
index 4078e8d..185c902 100644
--- a/.metadata/.plugins/org.eclipse.e4.workbench/workbench.xmi
+++ b/.metadata/.plugins/org.eclipse.e4.workbench/workbench.xmi
@@ -1,8 +1,8 @@
-
-
+
+
activeSchemeId:org.eclipse.ui.defaultAcceleratorConfiguration
-
+
@@ -11,9 +11,9 @@
topLevel
shellMaximized
-
-
-
+
+
+
persp.actionSet:com.st.stm32cube.ide.mcu.informationcenter.actionSet3
persp.actionSet:org.eclipse.ui.cheatsheets.actionSet
@@ -70,68 +70,68 @@
persp.newWizSC:com.st.stm32cube.ide.cmake.newwizard
persp.viewSC:com.st.stm32cube.ide.mcu.cyclomaticcomplexity.view
persp.viewSC:com.st.stm32cube.ide.mcu.sfrview
-
-
-
+
+
+
View
categoryTag:General
-
+
View
categoryTag:C/C++
-
+
View
categoryTag:General
-
-
-
-
-
+
+
+
+
+
View
categoryTag:General
-
+
View
categoryTag:General
-
+
View
categoryTag:Make
-
-
-
+
+
+
View
categoryTag:General
-
+
View
categoryTag:General
-
+
View
categoryTag:General
-
+
View
categoryTag:General
-
-
+
+
View
categoryTag:C/C++
-
+
View
categoryTag:C/C++
-
+
View
categoryTag:C/C++
@@ -140,7 +140,7 @@
-
+
persp.actionSet:com.st.stm32cube.ide.mcu.informationcenter.actionSet3
persp.actionSet:org.eclipse.ui.cheatsheets.actionSet
@@ -158,19 +158,19 @@
persp.newWizSC:com.st.stm32cube.common.projectcreation.ui.stm32projectfromiocwizard
persp.newWizSC:com.st.stm32cube.ide.mpu.linux.projectcreation.ui.wizard.linuxprojectfromsourcewizard
persp.newWizSC:com.st.stm32cube.ide.cmake.newwizard
-
-
-
+
+
+
View
categoryTag:General
-
-
-
-
-
-
+
+
+
+
+
+
View
categoryTag:Device Configuration Tool
@@ -180,1854 +180,1844 @@
-
-
+
+
View
categoryTag:Help
-
+
View
categoryTag:General
-
+
View
categoryTag:Help
-
+
View
categoryTag:Help
-
+
View
categoryTag:General
-
+
ViewMenu
menuContribution:menu
-
+
-
+
View
categoryTag:Help
-
-
+
+
EditorStack
org.eclipse.e4.primaryDataStack
active
noFocus
-
-
- Editor
- removeOnHide
- org.eclipse.cdt.ui.editor.CEditor
-
-
-
+
+
Editor
removeOnHide
org.eclipse.cdt.ui.editor.CEditor
active
- activeOnClose
-
-
-
- Editor
- removeOnHide
- org.eclipse.cdt.ui.editor.CEditor
-
+
View
categoryTag:General
-
+
ViewMenu
menuContribution:menu
-
+
-
+
View
categoryTag:C/C++
-
+
View
categoryTag:General
-
+
-
+
View
categoryTag:General
-
+
ViewMenu
menuContribution:menu
-
+
-
+
View
categoryTag:General
-
+
ViewMenu
menuContribution:menu
-
+
-
+
View
categoryTag:General
-
+
ViewMenu
menuContribution:menu
-
+
-
+
View
categoryTag:General
-
+
ViewMenu
menuContribution:menu
-
+
-
+
View
categoryTag:General
-
+
ViewMenu
menuContribution:menu
-
+
-
+
View
categoryTag:General
-
+
View
categoryTag:Make
-
+
ViewMenu
menuContribution:menu
-
+
-
+
View
categoryTag:C/C++
-
+
ViewMenu
menuContribution:menu
-
+
-
+
View
categoryTag:C/C++
-
+
ViewMenu
menuContribution:menu
-
+
-
+
View
categoryTag:C/C++
-
+
ViewMenu
menuContribution:menu
-
+
-
+
View
categoryTag:Device Configuration Tool
-
-
+
+
toolbarSeparator
-
+
-
+
Draggable
-
+
-
+
toolbarSeparator
-
+
-
+
Draggable
-
-
+
+
-
+
toolbarSeparator
-
+
-
+
Draggable
-
+
Draggable
-
+
Draggable
-
+
Draggable
-
+
toolbarSeparator
-
+
-
+
Draggable
-
+
-
- toolbarSeparator
-
-
-
- toolbarSeparator
-
-
-
+
Draggable
-
+
+ toolbarSeparator
+
+
+
+ toolbarSeparator
+
+
+
+ Draggable
+
+
stretch
SHOW_RESTORE_MENU
-
+
Draggable
HIDEABLE
SHOW_RESTORE_MENU
-
-
+
+
stretch
-
+
Draggable
-
+
Draggable
-
-
+
+
TrimStack
Draggable
-
+
TrimStack
Draggable
-
+
TrimStack
Draggable
-
-
+
+
TrimStack
Draggable
-
+
TrimStack
Draggable
-
+
TrimStack
Draggable
-
+
TrimStack
Draggable
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
platform:gtk
-
-
-
-
+
+
+
+
platform:gtk
-
-
-
-
-
-
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
+
+
+
+
-
-
-
-
-
-
-
+
+
+
+
+
+
+
-
-
+
+
-
-
-
-
+
+
+
+
-
-
-
-
+
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
+
+
-
-
+
+
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
-
-
+
+
-
-
-
-
-
-
+
+
+
+
+
+
-
-
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
+
+
+
+
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
+
+
+
+
+
+
+
-
-
-
+
+
+
-
-
-
-
-
-
+
+
+
+
+
+
-
-
-
-
-
-
-
+
+
+
+
+
+
+
-
-
-
-
+
+
+
+
-
-
+
+
-
-
-
+
+
+
-
-
-
-
-
-
+
+
+
+
+
+
-
-
-
-
+
+
+
+
-
-
+
+
-
-
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
-
-
+
+
-
-
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Editor
removeOnHide
-
+
View
categoryTag:Device Configuration Tool
-
+
View
categoryTag:C/C++
-
+
View
categoryTag:C/C++
-
+
View
categoryTag:SWV
-
+
View
categoryTag:SWV
-
+
View
categoryTag:SWV
-
+
View
categoryTag:SWV
-
+
View
categoryTag:SWV
-
+
View
categoryTag:SWV
-
+
View
categoryTag:Debug
-
+
View
categoryTag:FreeRTOS
-
+
View
categoryTag:FreeRTOS
-
+
View
categoryTag:FreeRTOS
-
+
View
categoryTag:FreeRTOS
-
+
View
categoryTag:Debug
-
+
View
categoryTag:Debug
-
+
View
categoryTag:C/C++
-
+
View
categoryTag:Other
-
+
View
categoryTag:ThreadX
-
+
View
categoryTag:ThreadX
-
+
View
categoryTag:ThreadX
-
+
View
categoryTag:ThreadX
-
+
View
categoryTag:ThreadX
-
+
View
categoryTag:ThreadX
-
+
View
categoryTag:ThreadX
-
+
View
categoryTag:ThreadX
-
+
View
categoryTag:C/C++
-
+
View
categoryTag:C/C++
-
+
View
categoryTag:Debug
-
+
View
categoryTag:Debug
-
+
View
categoryTag:Debug
-
+
View
categoryTag:Debug
-
+
View
categoryTag:Debug
-
+
View
categoryTag:Debug
-
+
View
categoryTag:Debug
-
+
View
categoryTag:Debug
-
+
View
categoryTag:Make
-
+
View
categoryTag:C/C++
-
+
View
categoryTag:C/C++
-
+
View
categoryTag:C/C++
-
+
View
categoryTag:C/C++
-
+
View
categoryTag:C/C++
-
+
View
categoryTag:General
-
+
View
categoryTag:Debug
-
+
View
categoryTag:Debug
-
+
View
categoryTag:Debug
-
+
View
categoryTag:Debug
-
+
View
categoryTag:Debug
-
+
View
categoryTag:Debug
-
+
View
categoryTag:Debug
-
+
View
categoryTag:Debug
-
+
View
categoryTag:Help
-
+
View
categoryTag:Connections
-
+
View
categoryTag:General
-
+
View
categoryTag:Version Control (Team)
-
+
View
categoryTag:Version Control (Team)
-
+
View
categoryTag:General
-
+
View
categoryTag:General
-
+
View
categoryTag:Help
-
+
View
categoryTag:General
-
+
View
categoryTag:General
-
+
View
categoryTag:General
-
+
View
categoryTag:General
-
+
View
categoryTag:General
-
+
View
categoryTag:General
-
+
View
categoryTag:General
-
+
View
categoryTag:General
-
+
View
categoryTag:General
-
+
View
categoryTag:General
-
+
View
categoryTag:General
-
-
+
+
glue
move_after:PerspectiveSpacer
SHOW_RESTORE_MENU
-
+
move_after:Spacer Glue
HIDEABLE
SHOW_RESTORE_MENU
-
+
glue
move_after:SearchField
SHOW_RESTORE_MENU
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
+
+
+
-
-
-
-
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
+
+
+
+
-
-
-
-
-
-
-
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
+
+
+
+
-
-
-
-
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
+
+
+
-
-
+
+
-
-
-
-
-
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/.metadata/version.ini b/.metadata/version.ini
index ec5f08e..da1a4f1 100644
--- a/.metadata/version.ini
+++ b/.metadata/version.ini
@@ -1,3 +1,3 @@
-#Sat Sep 20 02:01:07 CDT 2025
+#Sat Sep 20 14:37:30 CDT 2025
org.eclipse.core.runtime=2
org.eclipse.platform=4.33.0.v20240903-0240
diff --git a/TrafficLightsPlus/Core/Src/breadboard.c b/TrafficLightsPlus/Core/Src/breadboard.c
index f9a0e43..0493565 100644
--- a/TrafficLightsPlus/Core/Src/breadboard.c
+++ b/TrafficLightsPlus/Core/Src/breadboard.c
@@ -23,22 +23,31 @@
#include "main.h"
#include "breadboard.h"
-// HAL_GPIO_WritePin(LED_EXT_GPIO_Port, LED_EXT_Pin, GPIO_PIN_RESET);
+#define R_Pin RedLight_Pin
+#define Y_Pin YellowLight_Pin
+#define G_Pin GreenLight_Pin
+
+#define R_Prt RedLight_GPIO_Port
+#define Y_Prt YellowLight_GPIO_Port
+#define G_Prt GreenLight_GPIO_Port
+
void
breadboard(int traffSPD)
{
// Traffic Light
- HAL_GPIO_WritePin(GreenLight_GPIO_Port, RedLight_Pin, GPIO_PIN_RESET);
- HAL_GPIO_WritePin(RedLight_GPIO_Port, RedLight_Pin, GPIO_PIN_SET);
- HAL_Delay(traffSPD);
- HAL_GPIO_WritePin(RedLight_GPIO_Port, YellowLight_Pin, GPIO_PIN_RESET);
- HAL_GPIO_WritePin(YellowLight_GPIO_Port, YellowLight_Pin, GPIO_PIN_SET);
+ HAL_GPIO_TogglePin(R_Prt, R_Pin);
HAL_Delay(traffSPD);
+ HAL_GPIO_TogglePin(R_Prt, R_Pin);
- HAL_GPIO_WritePin(YellowLight_GPIO_Port, GreenLight_Pin, GPIO_PIN_RESET);
- HAL_GPIO_WritePin(GreenLight_GPIO_Port, GreenLight_Pin, GPIO_PIN_SET);
+ HAL_GPIO_TogglePin(Y_Prt, Y_Pin);
HAL_Delay(traffSPD);
+ HAL_GPIO_TogglePin(Y_Prt, Y_Pin);
+
+ HAL_GPIO_TogglePin(G_Prt, G_Pin);
+ HAL_Delay(traffSPD);
+ HAL_GPIO_TogglePin(G_Prt, G_Pin);
+
// Walk signal
diff --git a/TrafficLightsPlus/Debug/Core/Src/breadboard.cyclo b/TrafficLightsPlus/Debug/Core/Src/breadboard.cyclo
index 3dae6ac..f4fec1a 100644
--- a/TrafficLightsPlus/Debug/Core/Src/breadboard.cyclo
+++ b/TrafficLightsPlus/Debug/Core/Src/breadboard.cyclo
@@ -1 +1 @@
-../Core/Src/breadboard.c:28:1:breadboard 1
+../Core/Src/breadboard.c:36:1:breadboard 1
diff --git a/TrafficLightsPlus/Debug/Core/Src/breadboard.o b/TrafficLightsPlus/Debug/Core/Src/breadboard.o
index 4dfc96d..e867997 100644
Binary files a/TrafficLightsPlus/Debug/Core/Src/breadboard.o and b/TrafficLightsPlus/Debug/Core/Src/breadboard.o differ
diff --git a/TrafficLightsPlus/Debug/Core/Src/breadboard.su b/TrafficLightsPlus/Debug/Core/Src/breadboard.su
index a8b9852..7ec1a7f 100644
--- a/TrafficLightsPlus/Debug/Core/Src/breadboard.su
+++ b/TrafficLightsPlus/Debug/Core/Src/breadboard.su
@@ -1 +1 @@
-../Core/Src/breadboard.c:28:1:breadboard 16 static
+../Core/Src/breadboard.c:36:1:breadboard 16 static
diff --git a/TrafficLightsPlus/Debug/TrafficLightsPlus.elf b/TrafficLightsPlus/Debug/TrafficLightsPlus.elf
index 6f2852d..24dc337 100755
Binary files a/TrafficLightsPlus/Debug/TrafficLightsPlus.elf and b/TrafficLightsPlus/Debug/TrafficLightsPlus.elf differ
diff --git a/TrafficLightsPlus/Debug/TrafficLightsPlus.list b/TrafficLightsPlus/Debug/TrafficLightsPlus.list
index 978ca2f..1d962e6 100644
--- a/TrafficLightsPlus/Debug/TrafficLightsPlus.list
+++ b/TrafficLightsPlus/Debug/TrafficLightsPlus.list
@@ -5,21 +5,21 @@ Sections:
Idx Name Size VMA LMA File off Algn
0 .isr_vector 000001ac 08000000 08000000 00001000 2**0
CONTENTS, ALLOC, LOAD, READONLY, DATA
- 1 .text 00007d3c 080001b0 080001b0 000011b0 2**4
+ 1 .text 00007d6c 080001b0 080001b0 000011b0 2**4
CONTENTS, ALLOC, LOAD, READONLY, CODE
- 2 .rodata 00000018 08007eec 08007eec 00008eec 2**2
+ 2 .rodata 00000018 08007f1c 08007f1c 00008f1c 2**2
CONTENTS, ALLOC, LOAD, READONLY, DATA
- 3 .ARM.extab 00000000 08007f04 08007f04 00009010 2**0
+ 3 .ARM.extab 00000000 08007f34 08007f34 00009010 2**0
CONTENTS, READONLY
- 4 .ARM 00000008 08007f04 08007f04 00008f04 2**2
+ 4 .ARM 00000008 08007f34 08007f34 00008f34 2**2
CONTENTS, ALLOC, LOAD, READONLY, DATA
- 5 .preinit_array 00000000 08007f0c 08007f0c 00009010 2**0
+ 5 .preinit_array 00000000 08007f3c 08007f3c 00009010 2**0
CONTENTS, ALLOC, LOAD, DATA
- 6 .init_array 00000004 08007f0c 08007f0c 00008f0c 2**2
+ 6 .init_array 00000004 08007f3c 08007f3c 00008f3c 2**2
CONTENTS, ALLOC, LOAD, READONLY, DATA
- 7 .fini_array 00000004 08007f10 08007f10 00008f10 2**2
+ 7 .fini_array 00000004 08007f40 08007f40 00008f40 2**2
CONTENTS, ALLOC, LOAD, READONLY, DATA
- 8 .data 00000010 20000000 08007f14 00009000 2**2
+ 8 .data 00000010 20000000 08007f44 00009000 2**2
CONTENTS, ALLOC, LOAD, DATA
9 .ccmram 00000000 10000000 10000000 00009010 2**0
CONTENTS
@@ -29,25 +29,25 @@ Idx Name Size VMA LMA File off Algn
ALLOC
12 .ARM.attributes 00000030 00000000 00000000 00009010 2**0
CONTENTS, READONLY
- 13 .debug_info 00024ff9 00000000 00000000 00009040 2**0
+ 13 .debug_info 00024fcd 00000000 00000000 00009040 2**0
CONTENTS, READONLY, DEBUGGING, OCTETS
- 14 .debug_abbrev 00004e61 00000000 00000000 0002e039 2**0
+ 14 .debug_abbrev 00004e45 00000000 00000000 0002e00d 2**0
CONTENTS, READONLY, DEBUGGING, OCTETS
- 15 .debug_aranges 00002090 00000000 00000000 00032ea0 2**3
+ 15 .debug_aranges 00002090 00000000 00000000 00032e58 2**3
CONTENTS, READONLY, DEBUGGING, OCTETS
- 16 .debug_rnglists 00001956 00000000 00000000 00034f30 2**0
+ 16 .debug_rnglists 00001956 00000000 00000000 00034ee8 2**0
CONTENTS, READONLY, DEBUGGING, OCTETS
- 17 .debug_macro 00028e0e 00000000 00000000 00036886 2**0
+ 17 .debug_macro 00028e32 00000000 00000000 0003683e 2**0
CONTENTS, READONLY, DEBUGGING, OCTETS
- 18 .debug_line 00025432 00000000 00000000 0005f694 2**0
+ 18 .debug_line 00025434 00000000 00000000 0005f670 2**0
CONTENTS, READONLY, DEBUGGING, OCTETS
- 19 .debug_str 000f4153 00000000 00000000 00084ac6 2**0
+ 19 .debug_str 000f41e1 00000000 00000000 00084aa4 2**0
CONTENTS, READONLY, DEBUGGING, OCTETS
- 20 .comment 00000043 00000000 00000000 00178c19 2**0
+ 20 .comment 00000043 00000000 00000000 00178c85 2**0
CONTENTS, READONLY
- 21 .debug_frame 00008bf0 00000000 00000000 00178c5c 2**2
+ 21 .debug_frame 00008bf0 00000000 00000000 00178cc8 2**2
CONTENTS, READONLY, DEBUGGING, OCTETS
- 22 .debug_line_str 00000051 00000000 00000000 0018184c 2**0
+ 22 .debug_line_str 00000051 00000000 00000000 001818b8 2**0
CONTENTS, READONLY, DEBUGGING, OCTETS
Disassembly of section .text:
@@ -66,7 +66,7 @@ Disassembly of section .text:
80001c6: bd10 pop {r4, pc}
80001c8: 20000010 .word 0x20000010
80001cc: 00000000 .word 0x00000000
- 80001d0: 08007ed4 .word 0x08007ed4
+ 80001d0: 08007f04 .word 0x08007f04
080001d4 :
80001d4: b508 push {r3, lr}
@@ -78,7 +78,7 @@ Disassembly of section .text:
80001e2: bd08 pop {r3, pc}
80001e4: 00000000 .word 0x00000000
80001e8: 20000014 .word 0x20000014
- 80001ec: 08007ed4 .word 0x08007ed4
+ 80001ec: 08007f04 .word 0x08007f04
080001f0 <__aeabi_uldivmod>:
80001f0: b953 cbnz r3, 8000208 <__aeabi_uldivmod+0x18>
@@ -372,7 +372,7 @@ Disassembly of section .text:
800051a: bf00 nop
0800051c :
-#include "breadboard.h"
+#define G_Prt GreenLight_GPIO_Port
// HAL_GPIO_WritePin(LED_EXT_GPIO_Port, LED_EXT_Pin, GPIO_PIN_RESET);
void
@@ -382,6384 +382,6403 @@ breadboard(int traffSPD)
800051e: b082 sub sp, #8
8000520: af00 add r7, sp, #0
8000522: 6078 str r0, [r7, #4]
- // Traffic Light
- HAL_GPIO_WritePin(GreenLight_GPIO_Port, RedLight_Pin, GPIO_PIN_RESET);
- 8000524: 2200 movs r2, #0
- 8000526: 2104 movs r1, #4
- 8000528: 4815 ldr r0, [pc, #84] @ (8000580 )
- 800052a: f001 fd55 bl 8001fd8
- HAL_GPIO_WritePin(RedLight_GPIO_Port, RedLight_Pin, GPIO_PIN_SET);
- 800052e: 2201 movs r2, #1
- 8000530: 2104 movs r1, #4
- 8000532: 4813 ldr r0, [pc, #76] @ (8000580 )
- 8000534: f001 fd50 bl 8001fd8
- HAL_Delay(traffSPD);
- 8000538: 687b ldr r3, [r7, #4]
- 800053a: 4618 mov r0, r3
- 800053c: f001 f892 bl 8001664
-
- HAL_GPIO_WritePin(RedLight_GPIO_Port, YellowLight_Pin, GPIO_PIN_RESET);
- 8000540: 2200 movs r2, #0
- 8000542: 2108 movs r1, #8
- 8000544: 480e ldr r0, [pc, #56] @ (8000580 )
- 8000546: f001 fd47 bl 8001fd8
- HAL_GPIO_WritePin(YellowLight_GPIO_Port, YellowLight_Pin, GPIO_PIN_SET);
- 800054a: 2201 movs r2, #1
- 800054c: 2108 movs r1, #8
- 800054e: 480c ldr r0, [pc, #48] @ (8000580 )
- 8000550: f001 fd42 bl 8001fd8
- HAL_Delay(traffSPD);
- 8000554: 687b ldr r3, [r7, #4]
- 8000556: 4618 mov r0, r3
- 8000558: f001 f884 bl 8001664
-
HAL_GPIO_WritePin(YellowLight_GPIO_Port, GreenLight_Pin, GPIO_PIN_RESET);
- 800055c: 2200 movs r2, #0
- 800055e: 2110 movs r1, #16
- 8000560: 4807 ldr r0, [pc, #28] @ (8000580 )
- 8000562: f001 fd39 bl 8001fd8
HAL_GPIO_WritePin(GreenLight_GPIO_Port, GreenLight_Pin, GPIO_PIN_SET);
- 8000566: 2201 movs r2, #1
- 8000568: 2110 movs r1, #16
- 800056a: 4805 ldr r0, [pc, #20] @ (8000580 )
- 800056c: f001 fd34 bl 8001fd8
HAL_Delay(traffSPD);
- 8000570: 687b ldr r3, [r7, #4]
- 8000572: 4618 mov r0, r3
- 8000574: f001 f876 bl 8001664
+ */
+
+ HAL_GPIO_TogglePin(R_Prt, R_Pin);
+ 8000524: 2104 movs r1, #4
+ 8000526: 4813 ldr r0, [pc, #76] @ (8000574 )
+ 8000528: f001 fd69 bl 8001ffe
+ HAL_Delay(traffSPD);
+ 800052c: 687b ldr r3, [r7, #4]
+ 800052e: 4618 mov r0, r3
+ 8000530: f001 f892 bl 8001658
+ HAL_GPIO_TogglePin(R_Prt, R_Pin);
+ 8000534: 2104 movs r1, #4
+ 8000536: 480f ldr r0, [pc, #60] @ (8000574 )
+ 8000538: f001 fd61 bl 8001ffe
+
+ HAL_GPIO_TogglePin(Y_Prt, Y_Pin);
+ 800053c: 2108 movs r1, #8
+ 800053e: 480d ldr r0, [pc, #52] @ (8000574 )
+ 8000540: f001 fd5d bl 8001ffe
+ HAL_Delay(traffSPD);
+ 8000544: 687b ldr r3, [r7, #4]
+ 8000546: 4618 mov r0, r3
+ 8000548: f001 f886 bl 8001658
+ HAL_GPIO_TogglePin(Y_Prt, Y_Pin);
+ 800054c: 2108 movs r1, #8
+ 800054e: 4809 ldr r0, [pc, #36] @ (8000574 )
+ 8000550: f001 fd55 bl 8001ffe
+
+ HAL_GPIO_TogglePin(G_Prt, G_Pin);
+ 8000554: 2110 movs r1, #16
+ 8000556: 4807 ldr r0, [pc, #28] @ (8000574 )
+ 8000558: f001 fd51 bl 8001ffe
+ HAL_Delay(traffSPD);
+ 800055c: 687b ldr r3, [r7, #4]
+ 800055e: 4618 mov r0, r3
+ 8000560: f001 f87a bl 8001658
+ HAL_GPIO_TogglePin(G_Prt, G_Pin);
+ 8000564: 2110 movs r1, #16
+ 8000566: 4803 ldr r0, [pc, #12] @ (8000574 )
+ 8000568: f001 fd49 bl 8001ffe
+
// Walk signal
// Light dimmer
}
- 8000578: bf00 nop
- 800057a: 3708 adds r7, #8
- 800057c: 46bd mov sp, r7
- 800057e: bd80 pop {r7, pc}
- 8000580: 40021000 .word 0x40021000
+ 800056c: bf00 nop
+ 800056e: 3708 adds r7, #8
+ 8000570: 46bd mov sp, r7
+ 8000572: bd80 pop {r7, pc}
+ 8000574: 40021000 .word 0x40021000
-08000584 :
+08000578 :
}
/* USER CODE END 2 */
/* USER CODE BEGIN 4 */
__weak void vApplicationStackOverflowHook(xTaskHandle xTask, signed char *pcTaskName)
{
- 8000584: b480 push {r7}
- 8000586: b083 sub sp, #12
- 8000588: af00 add r7, sp, #0
- 800058a: 6078 str r0, [r7, #4]
- 800058c: 6039 str r1, [r7, #0]
+ 8000578: b480 push {r7}
+ 800057a: b083 sub sp, #12
+ 800057c: af00 add r7, sp, #0
+ 800057e: 6078 str r0, [r7, #4]
+ 8000580: 6039 str r1, [r7, #0]
/* Run time stack overflow checking is performed if
configCHECK_FOR_STACK_OVERFLOW is defined to 1 or 2. This hook function is
called if a stack overflow is detected. */
}
- 800058e: bf00 nop
- 8000590: 370c adds r7, #12
- 8000592: 46bd mov sp, r7
- 8000594: f85d 7b04 ldr.w r7, [sp], #4
- 8000598: 4770 bx lr
+ 8000582: bf00 nop
+ 8000584: 370c adds r7, #12
+ 8000586: 46bd mov sp, r7
+ 8000588: f85d 7b04 ldr.w r7, [sp], #4
+ 800058c: 4770 bx lr
-0800059a :
+0800058e :
/**
* @brief The application entry point.
* @retval int
*/
int main(void)
{
- 800059a: b580 push {r7, lr}
- 800059c: af00 add r7, sp, #0
+ 800058e: b580 push {r7, lr}
+ 8000590: af00 add r7, sp, #0
/* USER CODE END 1 */
/* MCU Configuration--------------------------------------------------------*/
/* Reset of all peripherals, Initializes the Flash interface and the Systick. */
HAL_Init();
- 800059e: f001 f81f bl 80015e0
+ 8000592: f001 f81f bl 80015d4
/* USER CODE BEGIN Init */
/* USER CODE END Init */
/* Configure the system clock */
SystemClock_Config();
- 80005a2: f000 f817 bl 80005d4
+ 8000596: f000 f817 bl 80005c8
/* USER CODE BEGIN SysInit */
/* USER CODE END SysInit */
/* Initialize all configured peripherals */
MX_GPIO_Init();
- 80005a6: f000 fa85 bl 8000ab4
+ 800059a: f000 fa85 bl 8000aa8
MX_CRC_Init();
- 80005aa: f000 f87d bl 80006a8
+ 800059e: f000 f87d bl 800069c
MX_DMA2D_Init();
- 80005ae: f000 f88f bl 80006d0
+ 80005a2: f000 f88f bl 80006c4
MX_FMC_Init();
- 80005b2: f000 fa2f bl 8000a14
+ 80005a6: f000 fa2f bl 8000a08
MX_I2C3_Init();
- 80005b6: f000 f8bd bl 8000734
+ 80005aa: f000 f8bd bl 8000728
MX_LTDC_Init();
- 80005ba: f000 f8fb bl 80007b4
+ 80005ae: f000 f8fb bl 80007a8
MX_SPI5_Init();
- 80005be: f000 f979 bl 80008b4
+ 80005b2: f000 f979 bl 80008a8
MX_TIM1_Init();
- 80005c2: f000 f9ad bl 8000920
+ 80005b6: f000 f9ad bl 8000914
MX_USART1_UART_Init();
- 80005c6: f000 f9fb bl 80009c0
+ 80005ba: f000 f9fb bl 80009b4
/* Infinite loop */
/* USER CODE BEGIN WHILE */
while (1)
{
breadboard(333);
- 80005ca: f240 104d movw r0, #333 @ 0x14d
- 80005ce: f7ff ffa5 bl 800051c
- 80005d2: e7fa b.n 80005ca
+ 80005be: f240 104d movw r0, #333 @ 0x14d
+ 80005c2: f7ff ffab bl 800051c
+ 80005c6: e7fa b.n 80005be
-080005d4 :
+080005c8 :
/**
* @brief System Clock Configuration
* @retval None
*/
void SystemClock_Config(void)
{
- 80005d4: b580 push {r7, lr}
- 80005d6: b094 sub sp, #80 @ 0x50
- 80005d8: af00 add r7, sp, #0
+ 80005c8: b580 push {r7, lr}
+ 80005ca: b094 sub sp, #80 @ 0x50
+ 80005cc: af00 add r7, sp, #0
RCC_OscInitTypeDef RCC_OscInitStruct = {0};
- 80005da: f107 0320 add.w r3, r7, #32
- 80005de: 2230 movs r2, #48 @ 0x30
- 80005e0: 2100 movs r1, #0
- 80005e2: 4618 mov r0, r3
- 80005e4: f007 fc3c bl 8007e60
+ 80005ce: f107 0320 add.w r3, r7, #32
+ 80005d2: 2230 movs r2, #48 @ 0x30
+ 80005d4: 2100 movs r1, #0
+ 80005d6: 4618 mov r0, r3
+ 80005d8: f007 fc5a bl 8007e90
RCC_ClkInitTypeDef RCC_ClkInitStruct = {0};
- 80005e8: f107 030c add.w r3, r7, #12
- 80005ec: 2200 movs r2, #0
- 80005ee: 601a str r2, [r3, #0]
- 80005f0: 605a str r2, [r3, #4]
- 80005f2: 609a str r2, [r3, #8]
- 80005f4: 60da str r2, [r3, #12]
- 80005f6: 611a str r2, [r3, #16]
+ 80005dc: f107 030c add.w r3, r7, #12
+ 80005e0: 2200 movs r2, #0
+ 80005e2: 601a str r2, [r3, #0]
+ 80005e4: 605a str r2, [r3, #4]
+ 80005e6: 609a str r2, [r3, #8]
+ 80005e8: 60da str r2, [r3, #12]
+ 80005ea: 611a str r2, [r3, #16]
/** Configure the main internal regulator output voltage
*/
__HAL_RCC_PWR_CLK_ENABLE();
- 80005f8: 2300 movs r3, #0
- 80005fa: 60bb str r3, [r7, #8]
- 80005fc: 4b28 ldr r3, [pc, #160] @ (80006a0 )
+ 80005ec: 2300 movs r3, #0
+ 80005ee: 60bb str r3, [r7, #8]
+ 80005f0: 4b28 ldr r3, [pc, #160] @ (8000694 )
+ 80005f2: 6c1b ldr r3, [r3, #64] @ 0x40
+ 80005f4: 4a27 ldr r2, [pc, #156] @ (8000694 )
+ 80005f6: f043 5380 orr.w r3, r3, #268435456 @ 0x10000000
+ 80005fa: 6413 str r3, [r2, #64] @ 0x40
+ 80005fc: 4b25 ldr r3, [pc, #148] @ (8000694 )
80005fe: 6c1b ldr r3, [r3, #64] @ 0x40
- 8000600: 4a27 ldr r2, [pc, #156] @ (80006a0 )
- 8000602: f043 5380 orr.w r3, r3, #268435456 @ 0x10000000
- 8000606: 6413 str r3, [r2, #64] @ 0x40
- 8000608: 4b25 ldr r3, [pc, #148] @ (80006a0 )
- 800060a: 6c1b ldr r3, [r3, #64] @ 0x40
- 800060c: f003 5380 and.w r3, r3, #268435456 @ 0x10000000
- 8000610: 60bb str r3, [r7, #8]
- 8000612: 68bb ldr r3, [r7, #8]
+ 8000600: f003 5380 and.w r3, r3, #268435456 @ 0x10000000
+ 8000604: 60bb str r3, [r7, #8]
+ 8000606: 68bb ldr r3, [r7, #8]
__HAL_PWR_VOLTAGESCALING_CONFIG(PWR_REGULATOR_VOLTAGE_SCALE3);
- 8000614: 2300 movs r3, #0
- 8000616: 607b str r3, [r7, #4]
- 8000618: 4b22 ldr r3, [pc, #136] @ (80006a4 )
- 800061a: 681b ldr r3, [r3, #0]
- 800061c: f423 4340 bic.w r3, r3, #49152 @ 0xc000
- 8000620: 4a20 ldr r2, [pc, #128] @ (80006a4 )
- 8000622: f443 4380 orr.w r3, r3, #16384 @ 0x4000
- 8000626: 6013 str r3, [r2, #0]
- 8000628: 4b1e ldr r3, [pc, #120] @ (80006a4 )
- 800062a: 681b ldr r3, [r3, #0]
- 800062c: f403 4340 and.w r3, r3, #49152 @ 0xc000
- 8000630: 607b str r3, [r7, #4]
- 8000632: 687b ldr r3, [r7, #4]
+ 8000608: 2300 movs r3, #0
+ 800060a: 607b str r3, [r7, #4]
+ 800060c: 4b22 ldr r3, [pc, #136] @ (8000698 )
+ 800060e: 681b ldr r3, [r3, #0]
+ 8000610: f423 4340 bic.w r3, r3, #49152 @ 0xc000
+ 8000614: 4a20 ldr r2, [pc, #128] @ (8000698 )
+ 8000616: f443 4380 orr.w r3, r3, #16384 @ 0x4000
+ 800061a: 6013 str r3, [r2, #0]
+ 800061c: 4b1e ldr r3, [pc, #120] @ (8000698 )
+ 800061e: 681b ldr r3, [r3, #0]
+ 8000620: f403 4340 and.w r3, r3, #49152 @ 0xc000
+ 8000624: 607b str r3, [r7, #4]
+ 8000626: 687b ldr r3, [r7, #4]
/** Initializes the RCC Oscillators according to the specified parameters
* in the RCC_OscInitTypeDef structure.
*/
RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_HSE;
- 8000634: 2301 movs r3, #1
- 8000636: 623b str r3, [r7, #32]
+ 8000628: 2301 movs r3, #1
+ 800062a: 623b str r3, [r7, #32]
RCC_OscInitStruct.HSEState = RCC_HSE_ON;
- 8000638: f44f 3380 mov.w r3, #65536 @ 0x10000
- 800063c: 627b str r3, [r7, #36] @ 0x24
+ 800062c: f44f 3380 mov.w r3, #65536 @ 0x10000
+ 8000630: 627b str r3, [r7, #36] @ 0x24
RCC_OscInitStruct.PLL.PLLState = RCC_PLL_ON;
- 800063e: 2302 movs r3, #2
- 8000640: 63bb str r3, [r7, #56] @ 0x38
+ 8000632: 2302 movs r3, #2
+ 8000634: 63bb str r3, [r7, #56] @ 0x38
RCC_OscInitStruct.PLL.PLLSource = RCC_PLLSOURCE_HSE;
- 8000642: f44f 0380 mov.w r3, #4194304 @ 0x400000
- 8000646: 63fb str r3, [r7, #60] @ 0x3c
+ 8000636: f44f 0380 mov.w r3, #4194304 @ 0x400000
+ 800063a: 63fb str r3, [r7, #60] @ 0x3c
RCC_OscInitStruct.PLL.PLLM = 4;
- 8000648: 2304 movs r3, #4
- 800064a: 643b str r3, [r7, #64] @ 0x40
+ 800063c: 2304 movs r3, #4
+ 800063e: 643b str r3, [r7, #64] @ 0x40
RCC_OscInitStruct.PLL.PLLN = 72;
- 800064c: 2348 movs r3, #72 @ 0x48
- 800064e: 647b str r3, [r7, #68] @ 0x44
+ 8000640: 2348 movs r3, #72 @ 0x48
+ 8000642: 647b str r3, [r7, #68] @ 0x44
RCC_OscInitStruct.PLL.PLLP = RCC_PLLP_DIV2;
- 8000650: 2302 movs r3, #2
- 8000652: 64bb str r3, [r7, #72] @ 0x48
+ 8000644: 2302 movs r3, #2
+ 8000646: 64bb str r3, [r7, #72] @ 0x48
RCC_OscInitStruct.PLL.PLLQ = 3;
- 8000654: 2303 movs r3, #3
- 8000656: 64fb str r3, [r7, #76] @ 0x4c
+ 8000648: 2303 movs r3, #3
+ 800064a: 64fb str r3, [r7, #76] @ 0x4c
if (HAL_RCC_OscConfig(&RCC_OscInitStruct) != HAL_OK)
- 8000658: f107 0320 add.w r3, r7, #32
- 800065c: 4618 mov r0, r3
- 800065e: f003 ff4b bl 80044f8
- 8000662: 4603 mov r3, r0
- 8000664: 2b00 cmp r3, #0
- 8000666: d001 beq.n 800066c
+ 800064c: f107 0320 add.w r3, r7, #32
+ 8000650: 4618 mov r0, r3
+ 8000652: f003 ff65 bl 8004520
+ 8000656: 4603 mov r3, r0
+ 8000658: 2b00 cmp r3, #0
+ 800065a: d001 beq.n 8000660
{
Error_Handler();
- 8000668: f000 fb5a bl 8000d20
+ 800065c: f000 fb5a bl 8000d14
}
/** Initializes the CPU, AHB and APB buses clocks
*/
RCC_ClkInitStruct.ClockType = RCC_CLOCKTYPE_HCLK|RCC_CLOCKTYPE_SYSCLK
- 800066c: 230f movs r3, #15
- 800066e: 60fb str r3, [r7, #12]
+ 8000660: 230f movs r3, #15
+ 8000662: 60fb str r3, [r7, #12]
|RCC_CLOCKTYPE_PCLK1|RCC_CLOCKTYPE_PCLK2;
RCC_ClkInitStruct.SYSCLKSource = RCC_SYSCLKSOURCE_PLLCLK;
- 8000670: 2302 movs r3, #2
- 8000672: 613b str r3, [r7, #16]
+ 8000664: 2302 movs r3, #2
+ 8000666: 613b str r3, [r7, #16]
RCC_ClkInitStruct.AHBCLKDivider = RCC_SYSCLK_DIV1;
- 8000674: 2300 movs r3, #0
- 8000676: 617b str r3, [r7, #20]
+ 8000668: 2300 movs r3, #0
+ 800066a: 617b str r3, [r7, #20]
RCC_ClkInitStruct.APB1CLKDivider = RCC_HCLK_DIV2;
- 8000678: f44f 5380 mov.w r3, #4096 @ 0x1000
- 800067c: 61bb str r3, [r7, #24]
+ 800066c: f44f 5380 mov.w r3, #4096 @ 0x1000
+ 8000670: 61bb str r3, [r7, #24]
RCC_ClkInitStruct.APB2CLKDivider = RCC_HCLK_DIV1;
- 800067e: 2300 movs r3, #0
- 8000680: 61fb str r3, [r7, #28]
+ 8000672: 2300 movs r3, #0
+ 8000674: 61fb str r3, [r7, #28]
if (HAL_RCC_ClockConfig(&RCC_ClkInitStruct, FLASH_LATENCY_2) != HAL_OK)
- 8000682: f107 030c add.w r3, r7, #12
- 8000686: 2102 movs r1, #2
- 8000688: 4618 mov r0, r3
- 800068a: f004 f9ad bl 80049e8
- 800068e: 4603 mov r3, r0
- 8000690: 2b00 cmp r3, #0
- 8000692: d001 beq.n 8000698
+ 8000676: f107 030c add.w r3, r7, #12
+ 800067a: 2102 movs r1, #2
+ 800067c: 4618 mov r0, r3
+ 800067e: f004 f9c7 bl 8004a10
+ 8000682: 4603 mov r3, r0
+ 8000684: 2b00 cmp r3, #0
+ 8000686: d001 beq.n 800068c
{
Error_Handler();
- 8000694: f000 fb44 bl 8000d20
+ 8000688: f000 fb44 bl 8000d14
}
}
- 8000698: bf00 nop
- 800069a: 3750 adds r7, #80 @ 0x50
- 800069c: 46bd mov sp, r7
- 800069e: bd80 pop {r7, pc}
- 80006a0: 40023800 .word 0x40023800
- 80006a4: 40007000 .word 0x40007000
+ 800068c: bf00 nop
+ 800068e: 3750 adds r7, #80 @ 0x50
+ 8000690: 46bd mov sp, r7
+ 8000692: bd80 pop {r7, pc}
+ 8000694: 40023800 .word 0x40023800
+ 8000698: 40007000 .word 0x40007000
-080006a8 :
+0800069c :
* @brief CRC Initialization Function
* @param None
* @retval None
*/
static void MX_CRC_Init(void)
{
- 80006a8: b580 push {r7, lr}
- 80006aa: af00 add r7, sp, #0
+ 800069c: b580 push {r7, lr}
+ 800069e: af00 add r7, sp, #0
/* USER CODE END CRC_Init 0 */
/* USER CODE BEGIN CRC_Init 1 */
/* USER CODE END CRC_Init 1 */
hcrc.Instance = CRC;
- 80006ac: 4b06 ldr r3, [pc, #24] @ (80006c8 )
- 80006ae: 4a07 ldr r2, [pc, #28] @ (80006cc )
- 80006b0: 601a str r2, [r3, #0]
+ 80006a0: 4b06 ldr r3, [pc, #24] @ (80006bc )
+ 80006a2: 4a07 ldr r2, [pc, #28] @ (80006c0 )
+ 80006a4: 601a str r2, [r3, #0]
if (HAL_CRC_Init(&hcrc) != HAL_OK)
- 80006b2: 4805 ldr r0, [pc, #20] @ (80006c8 )
- 80006b4: f001 f8dc bl 8001870
- 80006b8: 4603 mov r3, r0
- 80006ba: 2b00 cmp r3, #0
- 80006bc: d001 beq.n 80006c2
+ 80006a6: 4805 ldr r0, [pc, #20] @ (80006bc )
+ 80006a8: f001 f8dc bl 8001864
+ 80006ac: 4603 mov r3, r0
+ 80006ae: 2b00 cmp r3, #0
+ 80006b0: d001 beq.n 80006b6
{
Error_Handler();
- 80006be: f000 fb2f bl 8000d20
+ 80006b2: f000 fb2f bl 8000d14
}
/* USER CODE BEGIN CRC_Init 2 */
/* USER CODE END CRC_Init 2 */
}
- 80006c2: bf00 nop
- 80006c4: bd80 pop {r7, pc}
- 80006c6: bf00 nop
- 80006c8: 2000002c .word 0x2000002c
- 80006cc: 40023000 .word 0x40023000
+ 80006b6: bf00 nop
+ 80006b8: bd80 pop {r7, pc}
+ 80006ba: bf00 nop
+ 80006bc: 2000002c .word 0x2000002c
+ 80006c0: 40023000 .word 0x40023000
-080006d0 :
+080006c4 :
* @brief DMA2D Initialization Function
* @param None
* @retval None
*/
static void MX_DMA2D_Init(void)
{
- 80006d0: b580 push {r7, lr}
- 80006d2: af00 add r7, sp, #0
+ 80006c4: b580 push {r7, lr}
+ 80006c6: af00 add r7, sp, #0
/* USER CODE END DMA2D_Init 0 */
/* USER CODE BEGIN DMA2D_Init 1 */
/* USER CODE END DMA2D_Init 1 */
hdma2d.Instance = DMA2D;
- 80006d4: 4b15 ldr r3, [pc, #84] @ (800072c )
- 80006d6: 4a16 ldr r2, [pc, #88] @ (8000730 )
- 80006d8: 601a str r2, [r3, #0]
+ 80006c8: 4b15 ldr r3, [pc, #84] @ (8000720 )
+ 80006ca: 4a16 ldr r2, [pc, #88] @ (8000724 )
+ 80006cc: 601a str r2, [r3, #0]
hdma2d.Init.Mode = DMA2D_M2M;
- 80006da: 4b14 ldr r3, [pc, #80] @ (800072c )
- 80006dc: 2200 movs r2, #0
- 80006de: 605a str r2, [r3, #4]
+ 80006ce: 4b14 ldr r3, [pc, #80] @ (8000720 )
+ 80006d0: 2200 movs r2, #0
+ 80006d2: 605a str r2, [r3, #4]
hdma2d.Init.ColorMode = DMA2D_OUTPUT_ARGB8888;
- 80006e0: 4b12 ldr r3, [pc, #72] @ (800072c )
- 80006e2: 2200 movs r2, #0
- 80006e4: 609a str r2, [r3, #8]
+ 80006d4: 4b12 ldr r3, [pc, #72] @ (8000720 )
+ 80006d6: 2200 movs r2, #0
+ 80006d8: 609a str r2, [r3, #8]
hdma2d.Init.OutputOffset = 0;
- 80006e6: 4b11 ldr r3, [pc, #68] @ (800072c )
- 80006e8: 2200 movs r2, #0
- 80006ea: 60da str r2, [r3, #12]
+ 80006da: 4b11 ldr r3, [pc, #68] @ (8000720 )
+ 80006dc: 2200 movs r2, #0
+ 80006de: 60da str r2, [r3, #12]
hdma2d.LayerCfg[1].InputOffset = 0;
- 80006ec: 4b0f ldr r3, [pc, #60] @ (800072c )
- 80006ee: 2200 movs r2, #0
- 80006f0: 629a str r2, [r3, #40] @ 0x28
+ 80006e0: 4b0f ldr r3, [pc, #60] @ (8000720 )
+ 80006e2: 2200 movs r2, #0
+ 80006e4: 629a str r2, [r3, #40] @ 0x28
hdma2d.LayerCfg[1].InputColorMode = DMA2D_INPUT_ARGB8888;
- 80006f2: 4b0e ldr r3, [pc, #56] @ (800072c )
- 80006f4: 2200 movs r2, #0
- 80006f6: 62da str r2, [r3, #44] @ 0x2c
+ 80006e6: 4b0e ldr r3, [pc, #56] @ (8000720 )
+ 80006e8: 2200 movs r2, #0
+ 80006ea: 62da str r2, [r3, #44] @ 0x2c
hdma2d.LayerCfg[1].AlphaMode = DMA2D_NO_MODIF_ALPHA;
- 80006f8: 4b0c ldr r3, [pc, #48] @ (800072c )
- 80006fa: 2200 movs r2, #0
- 80006fc: 631a str r2, [r3, #48] @ 0x30
+ 80006ec: 4b0c ldr r3, [pc, #48] @ (8000720 )
+ 80006ee: 2200 movs r2, #0
+ 80006f0: 631a str r2, [r3, #48] @ 0x30
hdma2d.LayerCfg[1].InputAlpha = 0;
- 80006fe: 4b0b ldr r3, [pc, #44] @ (800072c )
- 8000700: 2200 movs r2, #0
- 8000702: 635a str r2, [r3, #52] @ 0x34
+ 80006f2: 4b0b ldr r3, [pc, #44] @ (8000720 )
+ 80006f4: 2200 movs r2, #0
+ 80006f6: 635a str r2, [r3, #52] @ 0x34
if (HAL_DMA2D_Init(&hdma2d) != HAL_OK)
- 8000704: 4809 ldr r0, [pc, #36] @ (800072c )
- 8000706: f001 f8cf bl 80018a8
- 800070a: 4603 mov r3, r0
- 800070c: 2b00 cmp r3, #0
- 800070e: d001 beq.n 8000714
+ 80006f8: 4809 ldr r0, [pc, #36] @ (8000720 )
+ 80006fa: f001 f8cf bl 800189c
+ 80006fe: 4603 mov r3, r0
+ 8000700: 2b00 cmp r3, #0
+ 8000702: d001 beq.n 8000708
{
Error_Handler();
- 8000710: f000 fb06 bl 8000d20
+ 8000704: f000 fb06 bl 8000d14
}
if (HAL_DMA2D_ConfigLayer(&hdma2d, 1) != HAL_OK)
- 8000714: 2101 movs r1, #1
- 8000716: 4805 ldr r0, [pc, #20] @ (800072c )
- 8000718: f001 fa20 bl 8001b5c
- 800071c: 4603 mov r3, r0
- 800071e: 2b00 cmp r3, #0
- 8000720: d001 beq.n 8000726
+ 8000708: 2101 movs r1, #1
+ 800070a: 4805 ldr r0, [pc, #20] @ (8000720 )
+ 800070c: f001 fa20 bl 8001b50
+ 8000710: 4603 mov r3, r0
+ 8000712: 2b00 cmp r3, #0
+ 8000714: d001 beq.n 800071a
{
Error_Handler();
- 8000722: f000 fafd bl 8000d20
+ 8000716: f000 fafd bl 8000d14
}
/* USER CODE BEGIN DMA2D_Init 2 */
/* USER CODE END DMA2D_Init 2 */
}
- 8000726: bf00 nop
- 8000728: bd80 pop {r7, pc}
- 800072a: bf00 nop
- 800072c: 20000034 .word 0x20000034
- 8000730: 4002b000 .word 0x4002b000
+ 800071a: bf00 nop
+ 800071c: bd80 pop {r7, pc}
+ 800071e: bf00 nop
+ 8000720: 20000034 .word 0x20000034
+ 8000724: 4002b000 .word 0x4002b000
-08000734 :
+08000728 :
* @brief I2C3 Initialization Function
* @param None
* @retval None
*/
static void MX_I2C3_Init(void)
{
- 8000734: b580 push {r7, lr}
- 8000736: af00 add r7, sp, #0
+ 8000728: b580 push {r7, lr}
+ 800072a: af00 add r7, sp, #0
/* USER CODE END I2C3_Init 0 */
/* USER CODE BEGIN I2C3_Init 1 */
/* USER CODE END I2C3_Init 1 */
hi2c3.Instance = I2C3;
- 8000738: 4b1b ldr r3, [pc, #108] @ (80007a8 )
- 800073a: 4a1c ldr r2, [pc, #112] @ (80007ac )
- 800073c: 601a str r2, [r3, #0]
+ 800072c: 4b1b ldr r3, [pc, #108] @ (800079c )
+ 800072e: 4a1c ldr r2, [pc, #112] @ (80007a0 )
+ 8000730: 601a str r2, [r3, #0]
hi2c3.Init.ClockSpeed = 100000;
- 800073e: 4b1a ldr r3, [pc, #104] @ (80007a8 )
- 8000740: 4a1b ldr r2, [pc, #108] @ (80007b0 )
- 8000742: 605a str r2, [r3, #4]
+ 8000732: 4b1a ldr r3, [pc, #104] @ (800079c )
+ 8000734: 4a1b ldr r2, [pc, #108] @ (80007a4 )
+ 8000736: 605a str r2, [r3, #4]
hi2c3.Init.DutyCycle = I2C_DUTYCYCLE_2;
- 8000744: 4b18 ldr r3, [pc, #96] @ (80007a8 )
- 8000746: 2200 movs r2, #0
- 8000748: 609a str r2, [r3, #8]
+ 8000738: 4b18 ldr r3, [pc, #96] @ (800079c )
+ 800073a: 2200 movs r2, #0
+ 800073c: 609a str r2, [r3, #8]
hi2c3.Init.OwnAddress1 = 0;
- 800074a: 4b17 ldr r3, [pc, #92] @ (80007a8 )
- 800074c: 2200 movs r2, #0
- 800074e: 60da str r2, [r3, #12]
+ 800073e: 4b17 ldr r3, [pc, #92] @ (800079c )
+ 8000740: 2200 movs r2, #0
+ 8000742: 60da str r2, [r3, #12]
hi2c3.Init.AddressingMode = I2C_ADDRESSINGMODE_7BIT;
- 8000750: 4b15 ldr r3, [pc, #84] @ (80007a8 )
- 8000752: f44f 4280 mov.w r2, #16384 @ 0x4000
- 8000756: 611a str r2, [r3, #16]
+ 8000744: 4b15 ldr r3, [pc, #84] @ (800079c )
+ 8000746: f44f 4280 mov.w r2, #16384 @ 0x4000
+ 800074a: 611a str r2, [r3, #16]
hi2c3.Init.DualAddressMode = I2C_DUALADDRESS_DISABLE;
- 8000758: 4b13 ldr r3, [pc, #76] @ (80007a8 )
- 800075a: 2200 movs r2, #0
- 800075c: 615a str r2, [r3, #20]
+ 800074c: 4b13 ldr r3, [pc, #76] @ (800079c )
+ 800074e: 2200 movs r2, #0
+ 8000750: 615a str r2, [r3, #20]
hi2c3.Init.OwnAddress2 = 0;
- 800075e: 4b12 ldr r3, [pc, #72] @ (80007a8 )
- 8000760: 2200 movs r2, #0
- 8000762: 619a str r2, [r3, #24]
+ 8000752: 4b12 ldr r3, [pc, #72] @ (800079c )
+ 8000754: 2200 movs r2, #0
+ 8000756: 619a str r2, [r3, #24]
hi2c3.Init.GeneralCallMode = I2C_GENERALCALL_DISABLE;
- 8000764: 4b10 ldr r3, [pc, #64] @ (80007a8 )
- 8000766: 2200 movs r2, #0
- 8000768: 61da str r2, [r3, #28]
+ 8000758: 4b10 ldr r3, [pc, #64] @ (800079c )
+ 800075a: 2200 movs r2, #0
+ 800075c: 61da str r2, [r3, #28]
hi2c3.Init.NoStretchMode = I2C_NOSTRETCH_DISABLE;
- 800076a: 4b0f ldr r3, [pc, #60] @ (80007a8 )
- 800076c: 2200 movs r2, #0
- 800076e: 621a str r2, [r3, #32]
+ 800075e: 4b0f ldr r3, [pc, #60] @ (800079c )
+ 8000760: 2200 movs r2, #0
+ 8000762: 621a str r2, [r3, #32]
if (HAL_I2C_Init(&hi2c3) != HAL_OK)
- 8000770: 480d ldr r0, [pc, #52] @ (80007a8 )
- 8000772: f003 f9f1 bl 8003b58
- 8000776: 4603 mov r3, r0
- 8000778: 2b00 cmp r3, #0
- 800077a: d001 beq.n 8000780
+ 8000764: 480d ldr r0, [pc, #52] @ (800079c )
+ 8000766: f003 fa0b bl 8003b80
+ 800076a: 4603 mov r3, r0
+ 800076c: 2b00 cmp r3, #0
+ 800076e: d001 beq.n 8000774
{
Error_Handler();
- 800077c: f000 fad0 bl 8000d20
+ 8000770: f000 fad0 bl 8000d14
}
/** Configure Analogue filter
*/
if (HAL_I2CEx_ConfigAnalogFilter(&hi2c3, I2C_ANALOGFILTER_ENABLE) != HAL_OK)
- 8000780: 2100 movs r1, #0
- 8000782: 4809 ldr r0, [pc, #36] @ (80007a8 )
- 8000784: f003 fb2c bl 8003de0
- 8000788: 4603 mov r3, r0
- 800078a: 2b00 cmp r3, #0
- 800078c: d001 beq.n 8000792
+ 8000774: 2100 movs r1, #0
+ 8000776: 4809 ldr r0, [pc, #36] @ (800079c )
+ 8000778: f003 fb46 bl 8003e08
+ 800077c: 4603 mov r3, r0
+ 800077e: 2b00 cmp r3, #0
+ 8000780: d001 beq.n 8000786
{
Error_Handler();
- 800078e: f000 fac7 bl 8000d20
+ 8000782: f000 fac7 bl 8000d14
}
/** Configure Digital filter
*/
if (HAL_I2CEx_ConfigDigitalFilter(&hi2c3, 0) != HAL_OK)
- 8000792: 2100 movs r1, #0
- 8000794: 4804 ldr r0, [pc, #16] @ (80007a8 )
- 8000796: f003 fb5f bl 8003e58
- 800079a: 4603 mov r3, r0
- 800079c: 2b00 cmp r3, #0
- 800079e: d001 beq.n 80007a4
+ 8000786: 2100 movs r1, #0
+ 8000788: 4804 ldr r0, [pc, #16] @ (800079c )
+ 800078a: f003 fb79 bl 8003e80
+ 800078e: 4603 mov r3, r0
+ 8000790: 2b00 cmp r3, #0
+ 8000792: d001 beq.n 8000798
{
Error_Handler();
- 80007a0: f000 fabe bl 8000d20
+ 8000794: f000 fabe bl 8000d14
}
/* USER CODE BEGIN I2C3_Init 2 */
/* USER CODE END I2C3_Init 2 */
}
- 80007a4: bf00 nop
- 80007a6: bd80 pop {r7, pc}
- 80007a8: 20000074 .word 0x20000074
- 80007ac: 40005c00 .word 0x40005c00
- 80007b0: 000186a0 .word 0x000186a0
+ 8000798: bf00 nop
+ 800079a: bd80 pop {r7, pc}
+ 800079c: 20000074 .word 0x20000074
+ 80007a0: 40005c00 .word 0x40005c00
+ 80007a4: 000186a0 .word 0x000186a0
-080007b4 :
+080007a8 :
* @brief LTDC Initialization Function
* @param None
* @retval None
*/
static void MX_LTDC_Init(void)
{
- 80007b4: b580 push {r7, lr}
- 80007b6: b08e sub sp, #56 @ 0x38
- 80007b8: af00 add r7, sp, #0
+ 80007a8: b580 push {r7, lr}
+ 80007aa: b08e sub sp, #56 @ 0x38
+ 80007ac: af00 add r7, sp, #0
/* USER CODE BEGIN LTDC_Init 0 */
/* USER CODE END LTDC_Init 0 */
LTDC_LayerCfgTypeDef pLayerCfg = {0};
- 80007ba: 1d3b adds r3, r7, #4
- 80007bc: 2234 movs r2, #52 @ 0x34
- 80007be: 2100 movs r1, #0
- 80007c0: 4618 mov r0, r3
- 80007c2: f007 fb4d bl 8007e60
+ 80007ae: 1d3b adds r3, r7, #4
+ 80007b0: 2234 movs r2, #52 @ 0x34
+ 80007b2: 2100 movs r1, #0
+ 80007b4: 4618 mov r0, r3
+ 80007b6: f007 fb6b bl 8007e90
/* USER CODE BEGIN LTDC_Init 1 */
/* USER CODE END LTDC_Init 1 */
hltdc.Instance = LTDC;
- 80007c6: 4b39 ldr r3, [pc, #228] @ (80008ac )
- 80007c8: 4a39 ldr r2, [pc, #228] @ (80008b0 )
- 80007ca: 601a str r2, [r3, #0]
+ 80007ba: 4b39 ldr r3, [pc, #228] @ (80008a0 )
+ 80007bc: 4a39 ldr r2, [pc, #228] @ (80008a4 )
+ 80007be: 601a str r2, [r3, #0]
hltdc.Init.HSPolarity = LTDC_HSPOLARITY_AL;
- 80007cc: 4b37 ldr r3, [pc, #220] @ (80008ac )
- 80007ce: 2200 movs r2, #0
- 80007d0: 605a str r2, [r3, #4]
+ 80007c0: 4b37 ldr r3, [pc, #220] @ (80008a0 )
+ 80007c2: 2200 movs r2, #0
+ 80007c4: 605a str r2, [r3, #4]
hltdc.Init.VSPolarity = LTDC_VSPOLARITY_AL;
- 80007d2: 4b36 ldr r3, [pc, #216] @ (80008ac )
- 80007d4: 2200 movs r2, #0
- 80007d6: 609a str r2, [r3, #8]
+ 80007c6: 4b36 ldr r3, [pc, #216] @ (80008a0 )
+ 80007c8: 2200 movs r2, #0
+ 80007ca: 609a str r2, [r3, #8]
hltdc.Init.DEPolarity = LTDC_DEPOLARITY_AL;
- 80007d8: 4b34 ldr r3, [pc, #208] @ (80008ac )
- 80007da: 2200 movs r2, #0
- 80007dc: 60da str r2, [r3, #12]
+ 80007cc: 4b34 ldr r3, [pc, #208] @ (80008a0 )
+ 80007ce: 2200 movs r2, #0
+ 80007d0: 60da str r2, [r3, #12]
hltdc.Init.PCPolarity = LTDC_PCPOLARITY_IPC;
- 80007de: 4b33 ldr r3, [pc, #204] @ (80008ac )
- 80007e0: 2200 movs r2, #0
- 80007e2: 611a str r2, [r3, #16]
+ 80007d2: 4b33 ldr r3, [pc, #204] @ (80008a0 )
+ 80007d4: 2200 movs r2, #0
+ 80007d6: 611a str r2, [r3, #16]
hltdc.Init.HorizontalSync = 9;
- 80007e4: 4b31 ldr r3, [pc, #196] @ (80008ac )
- 80007e6: 2209 movs r2, #9
- 80007e8: 615a str r2, [r3, #20]
+ 80007d8: 4b31 ldr r3, [pc, #196] @ (80008a0 )
+ 80007da: 2209 movs r2, #9
+ 80007dc: 615a str r2, [r3, #20]
hltdc.Init.VerticalSync = 1;
- 80007ea: 4b30 ldr r3, [pc, #192] @ (80008ac )
- 80007ec: 2201 movs r2, #1
- 80007ee: 619a str r2, [r3, #24]
+ 80007de: 4b30 ldr r3, [pc, #192] @ (80008a0 )
+ 80007e0: 2201 movs r2, #1
+ 80007e2: 619a str r2, [r3, #24]
hltdc.Init.AccumulatedHBP = 29;
- 80007f0: 4b2e ldr r3, [pc, #184] @ (80008ac )
- 80007f2: 221d movs r2, #29
- 80007f4: 61da str r2, [r3, #28]
+ 80007e4: 4b2e ldr r3, [pc, #184] @ (80008a0 )
+ 80007e6: 221d movs r2, #29
+ 80007e8: 61da str r2, [r3, #28]
hltdc.Init.AccumulatedVBP = 3;
- 80007f6: 4b2d ldr r3, [pc, #180] @ (80008ac )
- 80007f8: 2203 movs r2, #3
- 80007fa: 621a str r2, [r3, #32]
+ 80007ea: 4b2d ldr r3, [pc, #180] @ (80008a0 )
+ 80007ec: 2203 movs r2, #3
+ 80007ee: 621a str r2, [r3, #32]
hltdc.Init.AccumulatedActiveW = 269;
- 80007fc: 4b2b ldr r3, [pc, #172] @ (80008ac )
- 80007fe: f240 120d movw r2, #269 @ 0x10d
- 8000802: 625a str r2, [r3, #36] @ 0x24
+ 80007f0: 4b2b ldr r3, [pc, #172] @ (80008a0 )
+ 80007f2: f240 120d movw r2, #269 @ 0x10d
+ 80007f6: 625a str r2, [r3, #36] @ 0x24
hltdc.Init.AccumulatedActiveH = 323;
- 8000804: 4b29 ldr r3, [pc, #164] @ (80008ac )
- 8000806: f240 1243 movw r2, #323 @ 0x143
- 800080a: 629a str r2, [r3, #40] @ 0x28
+ 80007f8: 4b29 ldr r3, [pc, #164] @ (80008a0 )
+ 80007fa: f240 1243 movw r2, #323 @ 0x143
+ 80007fe: 629a str r2, [r3, #40] @ 0x28
hltdc.Init.TotalWidth = 279;
- 800080c: 4b27 ldr r3, [pc, #156] @ (80008ac )
- 800080e: f240 1217 movw r2, #279 @ 0x117
- 8000812: 62da str r2, [r3, #44] @ 0x2c
+ 8000800: 4b27 ldr r3, [pc, #156] @ (80008a0 )
+ 8000802: f240 1217 movw r2, #279 @ 0x117
+ 8000806: 62da str r2, [r3, #44] @ 0x2c
hltdc.Init.TotalHeigh = 327;
- 8000814: 4b25 ldr r3, [pc, #148] @ (80008ac )
- 8000816: f240 1247 movw r2, #327 @ 0x147
- 800081a: 631a str r2, [r3, #48] @ 0x30
+ 8000808: 4b25 ldr r3, [pc, #148] @ (80008a0 )
+ 800080a: f240 1247 movw r2, #327 @ 0x147
+ 800080e: 631a str r2, [r3, #48] @ 0x30
hltdc.Init.Backcolor.Blue = 0;
- 800081c: 4b23 ldr r3, [pc, #140] @ (80008ac )
- 800081e: 2200 movs r2, #0
- 8000820: f883 2034 strb.w r2, [r3, #52] @ 0x34
+ 8000810: 4b23 ldr r3, [pc, #140] @ (80008a0 )
+ 8000812: 2200 movs r2, #0
+ 8000814: f883 2034 strb.w r2, [r3, #52] @ 0x34
hltdc.Init.Backcolor.Green = 0;
- 8000824: 4b21 ldr r3, [pc, #132] @ (80008ac )
- 8000826: 2200 movs r2, #0
- 8000828: f883 2035 strb.w r2, [r3, #53] @ 0x35
+ 8000818: 4b21 ldr r3, [pc, #132] @ (80008a0 )
+ 800081a: 2200 movs r2, #0
+ 800081c: f883 2035 strb.w r2, [r3, #53] @ 0x35
hltdc.Init.Backcolor.Red = 0;
- 800082c: 4b1f ldr r3, [pc, #124] @ (80008ac )
- 800082e: 2200 movs r2, #0
- 8000830: f883 2036 strb.w r2, [r3, #54] @ 0x36
+ 8000820: 4b1f ldr r3, [pc, #124] @ (80008a0 )
+ 8000822: 2200 movs r2, #0
+ 8000824: f883 2036 strb.w r2, [r3, #54] @ 0x36
if (HAL_LTDC_Init(&hltdc) != HAL_OK)
- 8000834: 481d ldr r0, [pc, #116] @ (80008ac )
- 8000836: f003 fb4e bl 8003ed6
- 800083a: 4603 mov r3, r0
- 800083c: 2b00 cmp r3, #0
- 800083e: d001 beq.n 8000844
+ 8000828: 481d ldr r0, [pc, #116] @ (80008a0 )
+ 800082a: f003 fb68 bl 8003efe
+ 800082e: 4603 mov r3, r0
+ 8000830: 2b00 cmp r3, #0
+ 8000832: d001 beq.n 8000838
{
Error_Handler();
- 8000840: f000 fa6e bl 8000d20
+ 8000834: f000 fa6e bl 8000d14
}
pLayerCfg.WindowX0 = 0;
- 8000844: 2300 movs r3, #0
- 8000846: 607b str r3, [r7, #4]
+ 8000838: 2300 movs r3, #0
+ 800083a: 607b str r3, [r7, #4]
pLayerCfg.WindowX1 = 240;
- 8000848: 23f0 movs r3, #240 @ 0xf0
- 800084a: 60bb str r3, [r7, #8]
+ 800083c: 23f0 movs r3, #240 @ 0xf0
+ 800083e: 60bb str r3, [r7, #8]
pLayerCfg.WindowY0 = 0;
- 800084c: 2300 movs r3, #0
- 800084e: 60fb str r3, [r7, #12]
+ 8000840: 2300 movs r3, #0
+ 8000842: 60fb str r3, [r7, #12]
pLayerCfg.WindowY1 = 320;
- 8000850: f44f 73a0 mov.w r3, #320 @ 0x140
- 8000854: 613b str r3, [r7, #16]
+ 8000844: f44f 73a0 mov.w r3, #320 @ 0x140
+ 8000848: 613b str r3, [r7, #16]
pLayerCfg.PixelFormat = LTDC_PIXEL_FORMAT_RGB565;
- 8000856: 2302 movs r3, #2
- 8000858: 617b str r3, [r7, #20]
+ 800084a: 2302 movs r3, #2
+ 800084c: 617b str r3, [r7, #20]
pLayerCfg.Alpha = 255;
- 800085a: 23ff movs r3, #255 @ 0xff
- 800085c: 61bb str r3, [r7, #24]
+ 800084e: 23ff movs r3, #255 @ 0xff
+ 8000850: 61bb str r3, [r7, #24]
pLayerCfg.Alpha0 = 0;
- 800085e: 2300 movs r3, #0
- 8000860: 61fb str r3, [r7, #28]
+ 8000852: 2300 movs r3, #0
+ 8000854: 61fb str r3, [r7, #28]
pLayerCfg.BlendingFactor1 = LTDC_BLENDING_FACTOR1_PAxCA;
- 8000862: f44f 63c0 mov.w r3, #1536 @ 0x600
- 8000866: 623b str r3, [r7, #32]
+ 8000856: f44f 63c0 mov.w r3, #1536 @ 0x600
+ 800085a: 623b str r3, [r7, #32]
pLayerCfg.BlendingFactor2 = LTDC_BLENDING_FACTOR2_PAxCA;
- 8000868: 2307 movs r3, #7
- 800086a: 627b str r3, [r7, #36] @ 0x24
+ 800085c: 2307 movs r3, #7
+ 800085e: 627b str r3, [r7, #36] @ 0x24
pLayerCfg.FBStartAdress = 0xD0000000;
- 800086c: f04f 4350 mov.w r3, #3489660928 @ 0xd0000000
- 8000870: 62bb str r3, [r7, #40] @ 0x28
+ 8000860: f04f 4350 mov.w r3, #3489660928 @ 0xd0000000
+ 8000864: 62bb str r3, [r7, #40] @ 0x28
pLayerCfg.ImageWidth = 240;
- 8000872: 23f0 movs r3, #240 @ 0xf0
- 8000874: 62fb str r3, [r7, #44] @ 0x2c
+ 8000866: 23f0 movs r3, #240 @ 0xf0
+ 8000868: 62fb str r3, [r7, #44] @ 0x2c
pLayerCfg.ImageHeight = 320;
- 8000876: f44f 73a0 mov.w r3, #320 @ 0x140
- 800087a: 633b str r3, [r7, #48] @ 0x30
+ 800086a: f44f 73a0 mov.w r3, #320 @ 0x140
+ 800086e: 633b str r3, [r7, #48] @ 0x30
pLayerCfg.Backcolor.Blue = 0;
- 800087c: 2300 movs r3, #0
- 800087e: f887 3034 strb.w r3, [r7, #52] @ 0x34
+ 8000870: 2300 movs r3, #0
+ 8000872: f887 3034 strb.w r3, [r7, #52] @ 0x34
pLayerCfg.Backcolor.Green = 0;
- 8000882: 2300 movs r3, #0
- 8000884: f887 3035 strb.w r3, [r7, #53] @ 0x35
+ 8000876: 2300 movs r3, #0
+ 8000878: f887 3035 strb.w r3, [r7, #53] @ 0x35
pLayerCfg.Backcolor.Red = 0;
- 8000888: 2300 movs r3, #0
- 800088a: f887 3036 strb.w r3, [r7, #54] @ 0x36
+ 800087c: 2300 movs r3, #0
+ 800087e: f887 3036 strb.w r3, [r7, #54] @ 0x36
if (HAL_LTDC_ConfigLayer(&hltdc, &pLayerCfg, 0) != HAL_OK)
- 800088e: 1d3b adds r3, r7, #4
- 8000890: 2200 movs r2, #0
- 8000892: 4619 mov r1, r3
- 8000894: 4805 ldr r0, [pc, #20] @ (80008ac )
- 8000896: f003 fc7d bl 8004194
- 800089a: 4603 mov r3, r0
- 800089c: 2b00 cmp r3, #0
- 800089e: d001 beq.n 80008a4
+ 8000882: 1d3b adds r3, r7, #4
+ 8000884: 2200 movs r2, #0
+ 8000886: 4619 mov r1, r3
+ 8000888: 4805 ldr r0, [pc, #20] @ (80008a0 )
+ 800088a: f003 fc97 bl 80041bc
+ 800088e: 4603 mov r3, r0
+ 8000890: 2b00 cmp r3, #0
+ 8000892: d001 beq.n 8000898
{
Error_Handler();
- 80008a0: f000 fa3e bl 8000d20
+ 8000894: f000 fa3e bl 8000d14
}
/* USER CODE BEGIN LTDC_Init 2 */
/* USER CODE END LTDC_Init 2 */
}
- 80008a4: bf00 nop
- 80008a6: 3738 adds r7, #56 @ 0x38
- 80008a8: 46bd mov sp, r7
- 80008aa: bd80 pop {r7, pc}
- 80008ac: 200000c8 .word 0x200000c8
- 80008b0: 40016800 .word 0x40016800
+ 8000898: bf00 nop
+ 800089a: 3738 adds r7, #56 @ 0x38
+ 800089c: 46bd mov sp, r7
+ 800089e: bd80 pop {r7, pc}
+ 80008a0: 200000c8 .word 0x200000c8
+ 80008a4: 40016800 .word 0x40016800
-080008b4 :
+080008a8 :
* @brief SPI5 Initialization Function
* @param None
* @retval None
*/
static void MX_SPI5_Init(void)
{
- 80008b4: b580 push {r7, lr}
- 80008b6: af00 add r7, sp, #0
+ 80008a8: b580 push {r7, lr}
+ 80008aa: af00 add r7, sp, #0
/* USER CODE BEGIN SPI5_Init 1 */
/* USER CODE END SPI5_Init 1 */
/* SPI5 parameter configuration*/
hspi5.Instance = SPI5;
- 80008b8: 4b17 ldr r3, [pc, #92] @ (8000918 )
- 80008ba: 4a18 ldr r2, [pc, #96] @ (800091c )
- 80008bc: 601a str r2, [r3, #0]
+ 80008ac: 4b17 ldr r3, [pc, #92] @ (800090c )
+ 80008ae: 4a18 ldr r2, [pc, #96] @ (8000910 )
+ 80008b0: 601a str r2, [r3, #0]
hspi5.Init.Mode = SPI_MODE_MASTER;
- 80008be: 4b16 ldr r3, [pc, #88] @ (8000918 )
- 80008c0: f44f 7282 mov.w r2, #260 @ 0x104
- 80008c4: 605a str r2, [r3, #4]
+ 80008b2: 4b16 ldr r3, [pc, #88] @ (800090c )
+ 80008b4: f44f 7282 mov.w r2, #260 @ 0x104
+ 80008b8: 605a str r2, [r3, #4]
hspi5.Init.Direction = SPI_DIRECTION_2LINES;
- 80008c6: 4b14 ldr r3, [pc, #80] @ (8000918 )
- 80008c8: 2200 movs r2, #0
- 80008ca: 609a str r2, [r3, #8]
+ 80008ba: 4b14 ldr r3, [pc, #80] @ (800090c )
+ 80008bc: 2200 movs r2, #0
+ 80008be: 609a str r2, [r3, #8]
hspi5.Init.DataSize = SPI_DATASIZE_8BIT;
- 80008cc: 4b12 ldr r3, [pc, #72] @ (8000918 )
- 80008ce: 2200 movs r2, #0
- 80008d0: 60da str r2, [r3, #12]
+ 80008c0: 4b12 ldr r3, [pc, #72] @ (800090c