本文將介紹通過使用通用定時器的輸入捕獲功能來記錄按鍵按下的時間,并通過串口調(diào)試工具打印出按鍵按下的時間;
編譯調(diào)試工具:keil、cubemx
①使用STM32CUBEMX配置工程文件
②代碼實現(xiàn)
①使用STM32CUBEMX配置工程文件
Step1:配置TIM2,選擇內(nèi)部時鐘掛載在APB1總線上、選擇通道1、選擇輸入捕獲、輸入預分頻數(shù)、設(shè)置計數(shù)值;設(shè)置輸入捕獲為下降沿捕獲
Step2:使能RCC時鐘,選擇外部晶振;配置時鐘樹
Step3:設(shè)置優(yōu)先級分組、設(shè)置優(yōu)先級
Step4:配置串口USART3、用于調(diào)試打印日志
Step5:生成工程文件
②代碼實現(xiàn)
Step1:輸出重定向、添加頭文件
Step2:從啟動文件一層一層尋找輸入捕獲的中斷服務函數(shù)
進入啟動文件找到TIM2的中斷向量地址:
Goto define of TIM2_IRQHandler ......:
Goto define of HAL_TIM_IRQHandler......:
Step3:重定義輸入捕獲函數(shù)對應的中斷服務函數(shù)
HAL_TIM_IC_CaptureCallback:
Step4:重定義計數(shù)器溢出對應的中斷服務函數(shù)
Step5:在主函數(shù)中啟動定時器和輸入捕獲:
Step6:編譯運行
-
晶振
+關(guān)注
關(guān)注
33文章
2796瀏覽量
67832 -
時鐘
+關(guān)注
關(guān)注
10瀏覽量
131274 -
定時器
+關(guān)注
關(guān)注
23文章
3231瀏覽量
114327 -
串口
+關(guān)注
關(guān)注
14文章
1540瀏覽量
76060 -
stm32cubemx
+關(guān)注
關(guān)注
5文章
280瀏覽量
14713
發(fā)布評論請先 登錄
相關(guān)推薦
評論