本文將介紹通過使用通用定時器的輸入捕獲功能來記錄按鍵按下的時間,并通過串口調試工具打印出按鍵按下的時間;
芯片:STM32F407
編譯調試工具:keil、cubemx
①使用STM32CUBEMX配置工程文件
②代碼實現
①使用STM32CUBEMX配置工程文件
Step1:配置TIM2,選擇內部時鐘掛載在APB1總線上、選擇通道1、選擇輸入捕獲、輸入預分頻數、設置計數值;設置輸入捕獲為下降沿捕獲


Step2:使能RCC時鐘,選擇外部晶振;配置時鐘樹


Step3:設置優先級分組、設置優先級

Step4:配置串口USART3、用于調試打印日志

Step5:生成工程文件


②代碼實現
Step1:輸出重定向、添加頭文件


Step2:從啟動文件一層一層尋找輸入捕獲的中斷服務函數
進入啟動文件找到TIM2的中斷向量地址:

Goto define of TIM2_IRQHandler ......:

Goto define of HAL_TIM_IRQHandler......:

Step3:重定義輸入捕獲函數對應的中斷服務函數
HAL_TIM_IC_CaptureCallback:

Step4:重定義計數器溢出對應的中斷服務函數

Step5:在主函數中啟動定時器和輸入捕獲:

Step6:編譯運行

-
晶振
+關注
關注
35文章
3564瀏覽量
73448 -
時鐘
+關注
關注
11文章
1971瀏覽量
135000 -
定時器
+關注
關注
23文章
3368瀏覽量
123631 -
串口
+關注
關注
15文章
1619瀏覽量
82827 -
stm32cubemx
+關注
關注
5文章
290瀏覽量
17362
發布評論請先 登錄
STM32 --通用定時器輸入捕獲功能 精選資料推薦
stm32定時器輸入捕獲
stm32定時器輸入捕獲配置步驟及實例筆記
使用通用定時器的輸入捕獲實例
評論