大家在進(jìn)行MCU項(xiàng)目開(kāi)發(fā)時(shí)是否碰到過(guò)EXTI外部中斷在錯(cuò)誤的邊沿誤觸發(fā)的情況?比如EXTI配置的為下降沿觸發(fā),實(shí)際情況在個(gè)別上升沿的時(shí)候也被誤觸發(fā)了。
這個(gè)異?,F(xiàn)象編者之前碰到過(guò)一次,期望上升沿觸發(fā)EXTI中斷,卻概率性的出現(xiàn)下降沿也被誤觸發(fā)了中斷,經(jīng)過(guò)排查發(fā)現(xiàn),發(fā)生異常情況下的下降沿比較緩,且下降過(guò)程中有波動(dòng),類(lèi)似下圖情況,該毛刺被MCU捕獲到,誤識(shí)別為一個(gè)上升沿進(jìn)而誤觸發(fā)了EXTI中斷。
GD32 MCU的輸入高電平識(shí)別為高于0.7VDD,低電平識(shí)別為低于0.3VDD,在中間電平波動(dòng)更容易被誤觸發(fā)中斷。
解決方法上,可以有以下選擇:1、硬件方式解決:增加濾波電容,濾除錯(cuò)誤邊沿的毛刺;調(diào)整邊沿斜率,讓引腳電平更快跳變,減少在中間電平階段的時(shí)間;2、軟件方式解決:增加軟件濾波,進(jìn)入中斷后延遲進(jìn)行讀取引腳電平狀態(tài),如果為錯(cuò)誤的電平狀態(tài),即可認(rèn)為一個(gè)異常的毛刺干擾,丟棄當(dāng)次狀態(tài)處理。
以上即為本期講解,如有問(wèn)題或建議,歡迎評(píng)論區(qū)討論。
-
單片機(jī)
+關(guān)注
關(guān)注
6037文章
44558瀏覽量
635355 -
嵌入式
+關(guān)注
關(guān)注
5082文章
19126瀏覽量
305243
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論