前兩日調(diào)試EXTI 中斷程序,程序很簡單抄了網(wǎng)上的范例,起初調(diào)試正常,可以正常運行,但我在程序中加入另外的代碼后問題出現(xiàn),表現(xiàn)為中斷莫名其妙的開始響應(yīng)!檢查自己的程序,未發(fā)現(xiàn)異常,中斷部分的設(shè)置也沒有為題。逐步屏蔽后加入的代碼,依據(jù)屏蔽的代碼不同,單步運行后從不同的位置跳入中斷。怪哉怪哉....反復(fù)調(diào)試若干遍,花費時間2天有余...
百思不得其解之際,又檢查了自己的板子,看到BOOT1懸空,心中一動,當(dāng)初圖省事,空了此腳,難不成問題在此?
找了調(diào)帽裝上,一切正常,吐血....
.....(心里活動省略200字)
原來
雖然boot0置0了,但是boot1還是不能懸空的呀!
---------------------------------------------------
另外一個小技巧:調(diào)試程序后進入中斷,未清除中斷退出debug模式,再次debug的時候因為iar 5.20 debug 的復(fù)位功能并未自動清除中斷,所以此時程序會自行進入中斷,對調(diào)試造成困擾,解決方法是在main中第一句就放入中斷清除語句。運行 復(fù)位 運行 就正常了,就不用再手動去按板子上的reset了。