0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

外部中斷誤觸發(fā)的原因分析和解決方法

CHANBAEK ? 來源:撞上電子 ? 作者:墨竹公子 ? 2023-11-23 17:09 ? 次閱讀

今天在寫外部中斷的程序的時候,發(fā)現(xiàn)中斷特別容易受到干擾,我把手放在對應(yīng)的中斷引腳上,中斷就一直觸發(fā),沒有停過。經(jīng)過一天的學(xué)習(xí),找到了幾個解決方法,所以寫了這篇筆記。如果你的中斷也時不時會誤觸發(fā),可以對照找一下原因。

1,上下拉

中斷的外圍電路,該上拉的就上拉,該下拉就下拉,如下圖:

圖片

圖中的BAT6_#CHRG和BAT6_#DONE是連接到MCU的2個中斷引腳,其中R183已經(jīng)是上拉3.3V了,D63和D64用于指示,并沒有任何作用。除了上圖的上拉,還需要一個對地的電容下拉,接到GND,這樣就可以讓信號沒有毛刺。

2,中斷延遲檢測

在觸發(fā)中斷之后,延遲一段時間,然后去處理。個人認(rèn)為不好,中斷的好處就是實時性和優(yōu)先級,現(xiàn)在在中斷里面加Delay函數(shù),不是和中斷的初衷相悖嗎?

圖片

3,清除中斷標(biāo)志位或者開關(guān)中斷源

網(wǎng)上有部分人也說,清除中斷或者開關(guān)中斷源,這樣就可以釋放中斷,把中斷“趕”出去,等下次中斷,再讓它“進(jìn)”來,但是STM32的Cortex-M內(nèi)核有一個問題,中斷標(biāo)志位清除之后,并不是馬上清除,而是要等一會,這就導(dǎo)致清除標(biāo)志位的方法不太可行,只能去開關(guān)中斷源了。

圖片

4,施密特滯留器

這是網(wǎng)上上比較靠譜的一種方法,將施密特接到中斷之后,MCU之前,保證進(jìn)入中斷的信號都是經(jīng)過“滯留”的。施密特觸發(fā)器分為兩種類型,即反相施密特觸發(fā)器和同相施密特觸發(fā)器。反相施密特觸發(fā)器可以定義為一個輸出元件連接到運算放大器的正端。類似地,同相施密特觸發(fā)器可以定義為輸入信號在運算放大器的負(fù)端給出。

下圖是反向施密特觸發(fā)器的輸入和輸出的電壓波形關(guān)系,其中輸入也不一定是正弦函數(shù),有可能是三角波甚至是方波,反正輸出的電壓是通過閾值來判斷的。

圖片

使用NE555的施密特觸發(fā)器電路圖如下所示,下面的電路可以用基本的電子元件組成,但NE555是這個電路中必不可少的元件。NE555的兩個引腳(例如引腳4和引腳8)都與VCC電源相連。兩腳(如引腳2和引腳6)短接,通過電容將輸入相提供給這些腳。

圖片

在上圖中,電阻R1和R2形成的分壓器提供外部偏置電壓(VCC/2) ,閾值為1/3VCC和2/3VCC。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 引腳
    +關(guān)注

    關(guān)注

    16

    文章

    1196

    瀏覽量

    50486
  • 程序
    +關(guān)注

    關(guān)注

    117

    文章

    3787

    瀏覽量

    81049
  • 觸發(fā)器
    +關(guān)注

    關(guān)注

    14

    文章

    2000

    瀏覽量

    61158
  • 外圍電路
    +關(guān)注

    關(guān)注

    7

    文章

    74

    瀏覽量

    33333
  • 外部中斷
    +關(guān)注

    關(guān)注

    1

    文章

    131

    瀏覽量

    15826
收藏 人收藏

    評論

    相關(guān)推薦

    鴻蒙OpenHarmony:【常見編譯問題和解決方法

    常見編譯問題和解決方法
    的頭像 發(fā)表于 05-11 16:09 ?2209次閱讀

    STM32F0外部中斷容易誤觸發(fā)怎么解決?

    STM32F0的外部中斷抗干擾能力太差了,經(jīng)常誤觸發(fā)。旁邊電烙鐵開關(guān)按鈕只要切換一次都會引起誤觸發(fā),當(dāng)然外部
    發(fā)表于 05-06 06:33

    EXTI重復(fù)配置兩次導(dǎo)致誤觸發(fā)中斷的問題

    最近在調(diào)試按鍵作為外部中斷exti進(jìn)行觸發(fā)動作,發(fā)現(xiàn)每次按鍵按下和按鍵抬起都會多次進(jìn)入中斷函數(shù),造成程序不穩(wěn)定,經(jīng)過反復(fù)調(diào)試和查閱資料,最后終于已經(jīng)把這個問題解決,現(xiàn)在總結(jié)一下:1、E
    發(fā)表于 08-13 07:03

    STM32F103外部中斷容易誤觸發(fā)原因及辦法

    在脈沖群的干擾下,STM32F103外部中斷容易誤觸發(fā),可以在外部中斷引腳放置RC濾波器,減少干擾。
    發(fā)表于 08-13 07:48

    EXIT外部中斷按鍵的誤觸發(fā)問題

    EXIT外部中斷 按鍵的誤觸發(fā)問題最近在調(diào)試按鍵作為外部中斷exti進(jìn)行觸發(fā)動作,發(fā)現(xiàn)每次...
    發(fā)表于 08-16 06:46

    在脈沖群的干擾下STM32F103外部中斷容易誤觸發(fā)怎么解決?

    在脈沖群的干擾下STM32F103外部中斷容易誤觸發(fā)怎么解決?
    發(fā)表于 11-16 07:11

    外部中斷0電平觸發(fā)

    外部中斷0電平觸發(fā) C51單片機源碼,KEIL源文件,C語言編寫
    發(fā)表于 06-20 16:36 ?9次下載

    外部中斷1電平觸發(fā)

    外部中斷1電平觸發(fā) C51單片機源碼,KEIL源文件,C語言編寫
    發(fā)表于 06-20 16:36 ?5次下載

    假焊的原因和解決方法

    在電子原件焊接過程中,焊點表面上好像焊接成功,但實際上并沒有焊住,有時用手一撥,引線就可以從焊接點中撥出,這種現(xiàn)象稱為假焊。假焊的原因和解決方法說明如下
    發(fā)表于 04-30 15:18 ?3.2w次閱讀

    STM32外部中斷解決方法

    01 單片機外部中斷簡介 所謂外部中斷,就是通過外部信號所引起的中斷,如單片機引腳上的電平變化(
    的頭像 發(fā)表于 10-20 17:43 ?9011次閱讀
    STM32<b class='flag-5'>外部</b><b class='flag-5'>中斷</b><b class='flag-5'>解決方法</b>

    STM32外部中斷邊沿觸發(fā)存在延時問題

    STM32外部中斷時延問題概括:通過軟件調(diào)試,示波器觀察的方式,來分析外部中斷存在時延的原因。在
    發(fā)表于 12-27 18:27 ?20次下載
    STM32<b class='flag-5'>外部</b><b class='flag-5'>中斷</b>邊沿<b class='flag-5'>觸發(fā)</b>存在延時問題

    變頻器過熱的故障原因和解決方法

    變頻器過熱的故障原因和解決方法
    的頭像 發(fā)表于 10-24 10:09 ?5749次閱讀

    外部中斷為什么會誤觸發(fā)?

    今天在寫外部中斷的程序的時候,發(fā)現(xiàn)中斷特別容易受到干擾,我把手放在對應(yīng)的中斷引腳上,中斷就一直觸發(fā)
    的頭像 發(fā)表于 11-23 08:00 ?1252次閱讀
    <b class='flag-5'>外部</b><b class='flag-5'>中斷</b>為什么會<b class='flag-5'>誤觸發(fā)</b>?

    單片機中的外部中斷低電平觸發(fā)和下降沿觸發(fā)有什么區(qū)別

    單片機中的外部中斷低電平觸發(fā)和下降沿觸發(fā)有什么區(qū)別? 外部中斷是單片機中的一種功能,在特定條件下
    的頭像 發(fā)表于 01-31 10:32 ?3656次閱讀

    EXTI外部中斷在錯誤的邊沿誤觸發(fā)可能什么原因

    大家在進(jìn)行MCU項目開發(fā)時是否碰到過EXTI外部中斷在錯誤的邊沿誤觸發(fā)的情況?比如EXTI配置的為下降沿觸發(fā),實際情況在個別上升沿的時候也被誤觸發(fā)
    的頭像 發(fā)表于 02-03 09:48 ?775次閱讀
    EXTI<b class='flag-5'>外部</b><b class='flag-5'>中斷</b>在錯誤的邊沿<b class='flag-5'>誤觸發(fā)</b>可能什么<b class='flag-5'>原因</b>?