• 正文
  • 推薦器件
  • 相關(guān)推薦
申請入駐 產(chǎn)業(yè)圖譜

踩坑記錄:32系列EXTI問題

2023/06/26
1774
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點資訊討論

在最近的一個項目中,用了多個外部中斷線,剛開始并沒有注意外部中斷的個數(shù),看資料認(rèn)為所有 10 口都可以配置為中斷,然后原理圖就直接連接 6 根外部中斷,后來發(fā)現(xiàn),PA0、PB0、PC0 這些共用一個外部中斷線,注意是共用,根本就不能同時存在,同一時間只能有一個中斷使用這個中斷線,初始化的時候,誰是最后初始化的,那么這根中斷線就分配給了誰。希望大家今后不要出現(xiàn)我這種錯誤。

這是我的引腳分配:但最終有效的中斷的是 BUTT3、BUTT4、BUTT5,而 BUTT1、BUTT2 中斷無效。

以下是資料截圖摘自《N32L40x 系列于 基于 32 位 位 ARM? Cortex?-M4F 微控制器用戶手冊 V2.0》,后經(jīng)查證 STM32 系列也是同樣的問題。

EXT10-4 中斷是這樣的, 每個中斷有一個外部中斷線

EXT19_5 和 EXT110_15 中斷也是那樣,只不過是共用的中斷函數(shù),而不是共用一個中斷線,這可以中斷之后查詢是哪根線觸發(fā)了。

當(dāng)然如果工程師明確知道 PA0 和 PB0 不會同時觸發(fā),并目觸發(fā)有相互依賴關(guān)系,可以通過分時設(shè)置 PA0 和 PB0 的外部中斷功能。但是在大多數(shù)情況下,外部中斷的觸發(fā)都是隨機的,那么在設(shè)計原理圖的時候就要考慮到這種情況,把用到的外部中斷管腳設(shè)置到后綴不同的管腳上,如 PA0,PA1,PB3,PC8,..PD12,PF16,在一個工程中最多能使用 16 個外部中斷,并且每個管腳的后綴不同。如果設(shè)計電路板沒有考慮到這種情況,則需要根據(jù)實際情況把觸發(fā)頻繁的設(shè)置為外部中斷,不頻繁的通過檢測管腳電平變化來判斷是否有觸發(fā)。

關(guān)注公眾號,掃碼加入嵌入式交流群:

推薦器件

更多器件
器件型號 數(shù)量 器件廠商 器件描述 數(shù)據(jù)手冊 ECAD模型 風(fēng)險等級 參考價格 更多信息
590BB120M000DGR 1 Silicon Laboratories Inc Oscillator
$49.09 查看
AT17F16A-30CU 1 Atmel Corporation Configuration Memory, 16MX1, Serial, CMOS, 6 X 6 MM, 1.04 MM HEIGHT, 1.27 MM PITCH, GREEN, LAP-8
$29.47 查看
AB-557-03-HCHC-F-L-C-T 1 Abracon Corporation PLL Based Clock Driver, 557 Series, 2 True Output(s), 2 Inverted Output(s), QFN-14

ECAD模型

下載ECAD模型
$15.58 查看

相關(guān)推薦

登錄即可解鎖
  • 海量技術(shù)文章
  • 設(shè)計資源下載
  • 產(chǎn)業(yè)鏈客戶資源
  • 寫文章/發(fā)需求
立即登錄

TopSemic,讓芯片使用更簡單。 專注分享:嵌入式,單片機,STM32,ARM,RTOS,Linux, 軟硬件,半導(dǎo)體,電子技術(shù)等相關(guān)內(nèi)容。