深夜(ARM)隨筆
下面圖的這顆STM32F411CEU6最小系統(tǒng)板,一言難盡,當(dāng)成是隨筆吧。
大三的學(xué)期總結(jié)寫了1000個(gè)單詞蹩腳的英語(yǔ),就不放到這里了。
右邊的ST-Link核心是顆小的國(guó)產(chǎn)ARM芯片,已經(jīng)刷成jlink了。

STM32F411CEU6雖然比STM32F103C8T6和STM32G070CBT6的SRAM和FLASH稍微大些,外設(shè)稍微多些,M4核心有單精度FPU而且要快一丟丟(也就20MHz多吧)甚至沒有樹莓派pico的雙核125M快
然后48腳就有些尷尬了,引腳數(shù)量實(shí)在太有限了。
寫了個(gè)程序,從STM32H743VIT6移植過去的,目標(biāo)是“讓配置全型號(hào)STM32環(huán)境有手就行”,似乎并非易事。。
現(xiàn)在給5種不同型號(hào)的STM32寫過代碼,如果用HAL庫(kù),不同型號(hào)之間的程序當(dāng)然不能拿來(lái)直接用的,但是程序的邏輯是類似的,而且移植起來(lái)是很方便。
就是注意啟動(dòng)文件,時(shí)鐘樹,中斷號(hào)和中斷處理函數(shù)的差別,HAL的MSP初始化函數(shù)必須根據(jù)原理圖和引腳復(fù)用重新寫一個(gè)去適配硬件,改到0 error即可。
再考慮其他型號(hào)的ARM板子,微機(jī)專業(yè)課上學(xué)的ARM7TDMI太老了,配置起來(lái)基本上就是直接操作寄存器,性能也不行,因?yàn)闆]有SysTick而且定時(shí)器用著也不方便,移植程序比較費(fèi)勁。樹莓派pico相對(duì)新一些,但是現(xiàn)在對(duì)他的C/C++的SDK研究的不徹底,沒有STM32容易搞,因?yàn)槎嗪诵模{(diào)試起來(lái)稍微麻煩些。樹莓派我當(dāng)計(jì)算機(jī)用的,對(duì)于GPIO擴(kuò)展什么的還需要再試錯(cuò)。