第1點(diǎn):
我們用戶編寫的代碼,必須放在 user code begin 和 end 之間;否則,當(dāng)我們修改stm32cubemx 項(xiàng)目的 配置時(shí),再次生成代碼,就會(huì)刪除之前的代碼;正確做法如下圖所示:
我們用戶編寫的代碼,必須放在 user code begin 和 end 之間
第2點(diǎn):
在proteus中,電源需要更改成3.3V,VDDA添加到電源VCC/GND中去;VSSA添加到GND中去;如下圖所示:
電源需要改成3.3V
第3點(diǎn):
HAL_Delay(__IO uint32_t Delay)延時(shí)函數(shù)在stm32f1xx_hal.c里面,該函數(shù)能實(shí)現(xiàn)ms級(jí)別的延時(shí);該函數(shù)體前面有一個(gè)關(guān)鍵字__weak,該關(guān)鍵字簡(jiǎn)單的說,表明該函數(shù)允許被重寫。
HAL_Delay(__IO uint32_t Delay)
第4點(diǎn):
在proteus中,由于proteus中 軟件的問題,導(dǎo)致程序中雖然IO口設(shè)置了內(nèi)部上拉,但在proteus仿真軟件中,卻是開漏的(也就是說IO口沒有高電平狀態(tài))。
而我們STM32單片機(jī)的外部中斷,需要IO口出現(xiàn)一個(gè)下降沿或者上升沿,才可以觸發(fā)中斷。所以我們?cè)贗O口外面加上拉電阻,便于產(chǎn)生跳邊沿,進(jìn)而觸發(fā)外部中斷;
下圖所示LED的限流電阻R1,不能設(shè)置過大,設(shè)置太大會(huì)導(dǎo)致流過LED的電流過小,LED不發(fā)光。本次我們?cè)O(shè)置成100Ω,讓實(shí)驗(yàn)現(xiàn)象更加明顯。
需要添加上拉電阻,限流電阻不能太大
第5點(diǎn):
下圖所示的這個(gè)按鍵稱為自鎖按鍵, 按下去之后是不會(huì)彈起來的,始終保持當(dāng)前狀態(tài);
我們?cè)谧鐾獠恐袛鄬?shí)驗(yàn)時(shí)需要輕觸按鍵,這種按鍵是按下去之后是會(huì)彈起來的,會(huì)恢復(fù)之前的狀態(tài)。
自鎖按鍵
輕觸按鍵
第6點(diǎn):
在keil軟件中,一定要勾選上Creat HEX File選項(xiàng),這樣項(xiàng)目編譯之后才會(huì)生成HEX文件,proteus軟件加載HEX文件,實(shí)現(xiàn)STM32單片機(jī)程序的仿真。
還有就是在keil代碼中,修改了代碼一定要重新編譯,然后再在proteus中去觀察實(shí)驗(yàn)現(xiàn)象。
最后
注意上述幾點(diǎn),就能將外部中斷實(shí)驗(yàn)成功的進(jìn)行下去了。
中斷回調(diào)函數(shù)代碼如下圖所示,實(shí)現(xiàn)兩個(gè)按鍵分別控制LED的亮和滅;
兩個(gè)按鍵分別控制LED的亮和滅;
實(shí)驗(yàn)現(xiàn)象
-
單片機(jī)
+關(guān)注
關(guān)注
6059文章
44828瀏覽量
645026 -
Proteus
+關(guān)注
關(guān)注
79文章
1692瀏覽量
107947 -
STM32
+關(guān)注
關(guān)注
2285文章
10987瀏覽量
361472 -
回調(diào)函數(shù)
+關(guān)注
關(guān)注
0文章
88瀏覽量
11795 -
stm32cubemx
+關(guān)注
關(guān)注
5文章
286瀏覽量
15883
發(fā)布評(píng)論請(qǐng)先 登錄
新手怎樣如何學(xué)習(xí)單片機(jī),有哪些注意事項(xiàng)?
Proteus仿真單片機(jī)串口的注意事項(xiàng)和實(shí)物調(diào)試注意事項(xiàng)
使用有ISP功能的單片機(jī)的注意事項(xiàng)

STM32單片機(jī)硬件關(guān)鍵基礎(chǔ)精華及注意事項(xiàng)
單片機(jī)系統(tǒng)設(shè)計(jì)與仿真 基于PROTEUS
51單片機(jī)怎么檢測(cè)輸入的高電平_檢測(cè)方法及注意事項(xiàng)
PIC低檔單片機(jī)使用注意事項(xiàng)

Proteus仿真STC51單片機(jī)流水燈注意事項(xiàng)

《電子DIY》之藍(lán)牙的使用,Proteus仿真單片機(jī)串口的注意事項(xiàng)和實(shí)物調(diào)試注意事項(xiàng)。玩轉(zhuǎn)單片機(jī)串口詳細(xì)零基礎(chǔ)版

華大單片機(jī)設(shè)計(jì)特別注意事項(xiàng)(上)
GD32單片機(jī)GPIO結(jié)構(gòu)及注意事項(xiàng)

評(píng)論