第一節(jié)原理解讀
打算寫一下中斷,又忍不住想說一下中斷的概念,去書上翻一翻,或者自己在搜索引擎上搜一下,都可以找到一大堆,包括本文寫的這個外部中斷也不例外。如果要寫光是中斷就可以單獨寫一篇了,所以本文直入主題,對于STM32的外部中斷進行詳細的剖析。下圖來自《STM32參考手冊》,從整個架構圖可以知道,外部中斷的功能可以配置六個寄存器。

2,選擇按鍵的引腳,配置成外部中斷。如下圖:
3,配置PC15引腳(也就是開發(fā)板上LD5的引腳)為輸出模式。
4,選中GPIO,選擇PC14,并且將GPIO的模式配置為外部中斷下降沿有效。如下圖:
5,使能中斷。如下圖。
6,設置時鐘樹,項目路徑,項目名稱等等信息將不再闡述。配置完后生成項目即可。
第三節(jié)編寫代碼
1,大家先看看stm32l0xx_it.c的這個函數(shù),這個是一個中斷函數(shù),中斷服務函數(shù)里面就調用了GPIO外部中斷處理函數(shù)HAL_GPIO_EXTI_IRQHandler(),參數(shù)為GPIO_PIN_14,即EXTI14中斷。
2,詳細看看這個函數(shù),GPIO外部中斷處理函數(shù)主要就是清除中斷標識位,然后調用中斷回調函數(shù)HAL_GPIO_EXTI_Callback()。我們只需重構中斷回調函數(shù),在函數(shù)里面添加我們的應用代碼即可。
3,于是,在main.c中添加回調函數(shù),如下:
4,配置下載器等就不再重復闡述了。
第四節(jié) 實驗現(xiàn)象
實驗注意事項:
1,程序語句需要位于程序的BEGIN與END之間。
2,利用USB線將電腦USB口與開發(fā)板USB1口連接。
3,CN4所有撥碼開關必須選擇ON DP檔,否則無法下載程序。
實驗現(xiàn)象:
LD1,LD4常亮。LD5上電長量,按下USER按鍵,LD5翻轉。
宗旨:
免費的服務,永遠的開源
說明:
1.本教程免費,開源,禁止用于任何商業(yè)用途,違者必究。
2.本教程版權所屬為東莞市東城墨竹公子電子工作室,盜版必究。
-
STM32
+關注
關注
2291文章
11022瀏覽量
363530
發(fā)布評論請先 登錄
Commvault邀您相約IMC 2025第八屆智造數(shù)字科技大會
第八章 啟動文件詳解

評論