大家在進行MCU項目開發(fā)時是否碰到過EXTI外部中斷在錯誤的邊沿誤觸發(fā)的情況?比如EXTI配置的為下降沿觸發(fā),實際情況在個別上升沿的時候也被誤觸發(fā)了。
這個異常現(xiàn)象編者之前碰到過一次,期望上升沿觸發(fā)EXTI中斷,卻概率性的出現(xiàn)下降沿也被誤觸發(fā)了中斷,經過排查發(fā)現(xiàn),發(fā)生異常情況下的下降沿比較緩,且下降過程中有波動,類似下圖情況,該毛刺被MCU捕獲到,誤識別為一個上升沿進而誤觸發(fā)了EXTI中斷。
GD32 MCU的輸入高電平識別為高于0.7VDD,低電平識別為低于0.3VDD,在中間電平波動更容易被誤觸發(fā)中斷。

解決方法上,可以有以下選擇:1、硬件方式解決:增加濾波電容,濾除錯誤邊沿的毛刺;調整邊沿斜率,讓引腳電平更快跳變,減少在中間電平階段的時間;2、軟件方式解決:增加軟件濾波,進入中斷后延遲進行讀取引腳電平狀態(tài),如果為錯誤的電平狀態(tài),即可認為一個異常的毛刺干擾,丟棄當次狀態(tài)處理。
以上即為本期講解,如有問題或建議,歡迎評論區(qū)討論。
-
單片機
+關注
關注
6067文章
44997瀏覽量
650776 -
嵌入式
+關注
關注
5152文章
19678瀏覽量
317793
發(fā)布評論請先 登錄
STM32F0外部中斷容易誤觸發(fā)怎么解決?

EXTI重復配置兩次導致誤觸發(fā)中斷的問題
EXTI重復配置兩次導致誤觸發(fā)中斷的問題
【GD32 MCU 入門教程】GD32 MCU 常見外設介紹(4)EXTI 中斷介紹

評論