資料介紹
一、實驗目的
理解中斷的基本概念。
掌握STM32的中斷源及中斷優先級。
掌握STM32外部中斷技術的基本使用方法。
掌握STM32中斷處理程序的編程方法。
硬件設計原理圖如下圖1所示:LED的連接在上一節已經介紹過了,在STM32開發板上的按鍵KEY0是接在PE4上,KEY1是接在PE3上的,KEY2是連在PE2上,WK_UP接在PA0上。
實驗預備知識
中斷對于開發嵌入式系統來講的地位絕對是毋庸置疑的,在C51單片機時代,一共只有5個中斷,其中2個外部中斷,2個定時/ 計數器中斷和一個串口中斷,但是在STM32中,中斷數量大大增加,而且中斷的設置也更加復雜。今天就將來探討一下關于 STM32中的中斷系統。
ARM Coetex-M3內核共支持256個中斷,其中16個內部中斷,240個外部中斷和可編程的256級中斷優先級的設置。STM32目前支持的中斷共84個(16個內部+68個外部),還有16級可編程的中斷優先級的設置,僅使用中斷優先級設置8bit中的高4 位。
STM32可支持68個中斷通道,已經固定分配給相應的外部設備,每個中斷通道都具備自己的中斷優先級控制字節PRI_n(8 位,但是STM32中只使用4位,高4位有效),每4個通道的8位中斷優先級控制字構成一個32位的優先級寄存器。68個通道的優先級控制字至少構成17個32位的優先級寄存器。
STM32的每個IO口都可以作為中斷輸入,這點很好用。要把IO口作為外部中斷輸入,有以下幾個步驟:
1)初始化IO口為輸入。這一步設置你要作為外部中斷輸入的IO口的狀態,可以設置為上拉/下拉輸入,也可以設置為浮空輸入,但浮空的時候外部一定要帶上拉,或者下拉電阻。否則可能導致中斷不停的觸發。在干擾較大的地方,就算使用了上拉/下拉,也建議使用外部上拉/下拉電阻,這樣可以一定程度防止外部干擾帶來的影響。
2)開啟IO口復用時鐘,設置IO口與中斷線的映射關系。 STM32的IO口與中斷線的對應關系需要配置外部中斷配置寄存器EXTICR,這樣我們要先開啟復用時鐘,然后配置IO口與中斷線的對應關系。才能把外部中斷與中斷線連接起來。
3)開啟與該IO口相對的線上中斷/事件,設置觸發條件。這一步,我們要配置中斷產生的條件,STM32可以配置成上升沿觸發,下降沿觸發,或者任意電平變化觸發,但是不能配置成高電平觸發和低電平觸發。這里根據自己的實際情況來配置。同時要開啟中斷線上的中斷,這里需要注意的是:如果使用外部中斷,并設置該中斷的EMR位的話,會引起軟件仿真不能跳到中斷,而硬件上是可以的。而不設置EMR,軟件仿真就可以進入中斷服務函數,并且硬件上也是可以的。建議不要配置EMR位。
4)配置中斷分組(NVIC),并使能中斷。這一步,我們就是配置中斷的分組,以及使能,對STM32的中斷來說,只有配置了NVIC的設置,并開啟才能被執行,否則是不會執行到中斷服務函數里面去的。關于NVIC的詳細介紹,請參考前面章節。
5)編寫中斷服務函數。這是中斷設置的最后一步,中斷服務函數,是必不可少的,如果在代碼里面開啟了中斷,但是沒編寫中斷服務函數,就可能引起硬件錯誤,從而導致程序崩潰!所以在開啟了某個中斷后,一定要記得為該中斷編寫服務函數。在中斷服務函數里面編寫你要執行的中斷后的操作。通過以上幾個步驟的設置,我們就可以正常使用外部中斷了。
- Keil 51單片機IO端口實驗的詳細資料說明 17次下載
- 使用STM32F103單片機實現定時器實驗的詳細資料說明 5次下載
- 使用STM32F103RB單片機實現外部中斷實驗的資料詳細說明 0次下載
- 使用STM32F103RB單片機實現串口實驗的詳細資料說明 7次下載
- 使用STM32F103RB單片機實現蜂鳴器實驗的詳細資料說明 4次下載
- STM32單片機的外部中斷實驗詳細資料說明 1次下載
- 80C51單片機的中斷系統和系統結構的詳細資料說明
- 使用51單片機的計時器和中斷的詳細資料說明
- 使用51單片機進行中斷和軟件仿真的詳細資料說明
- 使用51單片機進行中斷設置的詳細資料說明
- 51單片機的中斷系統詳細資料說明
- 使用單片機進行驅動蜂鳴器實驗的詳細資料說明
- 使用STM32單片機實現IAP的詳細資料說明
- 基于STM32單片機進行PWM輸出實驗的詳細資料說明 18次下載
- 51單片機的中斷系統詳細資料總結 3次下載
- 什么是中斷?單片機中斷處理過程詳解 4342次閱讀
- 單片機外部中斷的好處 1919次閱讀
- STM32的IO外部中斷EXTI的使用 1658次閱讀
- PIC系列單片機的詳細資料說明 5350次閱讀
- AT89S51單片機實驗板的詳細資料簡介 4614次閱讀
- 如何進行PLC控制程序的設計詳細資料PPT說明 5753次閱讀
- 如何利用51單片機對protues進行仿真擴展 2958次閱讀
- 單片機中的堆棧詳細資料說明 4646次閱讀
- 51單片機的外部中斷實驗設計 1.1w次閱讀
- 如何對51單片機進行外部擴展 1.5w次閱讀
- 51單片機的中斷體系結構_中斷的響應過程 1.9w次閱讀
- 關于單片機的中斷系統的詳細介紹 3.1w次閱讀
- 單片機中斷系統介紹_51單片機中斷系統結構 1.2w次閱讀
- 詳細的STM32單片機學習筆記 1.4w次閱讀
- 51單片機的擴展中斷方法 1184次閱讀
下載排行
本周
- 1TC358743XBG評估板參考手冊
- 1.36 MB | 330次下載 | 免費
- 2開關電源基礎知識
- 5.73 MB | 6次下載 | 免費
- 3100W短波放大電路圖
- 0.05 MB | 4次下載 | 3 積分
- 4嵌入式linux-聊天程序設計
- 0.60 MB | 3次下載 | 免費
- 5基于FPGA的光纖通信系統的設計與實現
- 0.61 MB | 2次下載 | 免費
- 651單片機窗簾控制器仿真程序
- 1.93 MB | 2次下載 | 免費
- 751單片機大棚環境控制器仿真程序
- 1.10 MB | 2次下載 | 免費
- 8基于51單片機的RGB調色燈程序仿真
- 0.86 MB | 2次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 2555集成電路應用800例(新編版)
- 0.00 MB | 33564次下載 | 免費
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費
- 4開關電源設計實例指南
- 未知 | 21549次下載 | 免費
- 5電氣工程師手冊免費下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費
- 6數字電路基礎pdf(下載)
- 未知 | 13750次下載 | 免費
- 7電子制作實例集錦 下載
- 未知 | 8113次下載 | 免費
- 8《LED驅動電路設計》 溫德爾著
- 0.00 MB | 6653次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費
- 2protel99se軟件下載(可英文版轉中文版)
- 78.1 MB | 537796次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420026次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191185次下載 | 免費
- 7十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183279次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138040次下載 | 免費
評論
查看更多