|
由于本人玩過(guò)STM32F103C8T6到STM32F103ZET6之間的各種芯片。平常只是套用自己的模板。不想?yún)s出現(xiàn)了問(wèn)題:Error 20:"TIM4_IRQn"未定義,自己查看了下頭文件,定時(shí)器4中斷確實(shí)從C8到ZE系列都有。于是向網(wǎng)上求助,眾說(shuō)紛紜但沒(méi)幾個(gè)能解決自己的問(wèn)題。
自己歸納了兩種解決方案:
1、懶人解決方案,既然TIM4_IRQn不能用,那就直接用它的中斷序號(hào)代替,比如查頭文件可知,TIM4_IRQn = 30,那么在配置定時(shí)器4中斷優(yōu)先級(jí)時(shí)直接“NVIC_InitStructure.NVIC_IRQChannel = 30;”
2、點(diǎn)擊魔法棒,找到C/C++選項(xiàng),修改Preprocessor...中的Diefine中的單片機(jī)內(nèi)存:根據(jù)自己的芯片選擇
其實(shí)更常用的是STM32F103:
STM32F10X_LD 對(duì)應(yīng)于 LowDensity ,即小容量的STM32F103、101
STM32F10X_MD 對(duì)應(yīng)于 MediumDensity ,即中等容量的STM32F103、101
STM32F10X_HD 對(duì)應(yīng)于 HighDensity ,即大容量的STM32F103、101
常用的做法是在 stm32f10x.h頭文件里,定義上面的1個(gè)芯片。
修改后,未定義的錯(cuò)誤就不出現(xiàn)了。
|
評(píng)分
-
查看全部評(píng)分
|