0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

使用通用定時器的輸入捕獲實例

CHANBAEK ? 來源:頭條號秋天滴風 ? 作者:頭條號秋天滴風 ? 2023-05-01 09:02 ? 次閱讀

本文將介紹通過使用通用定時器的輸入捕獲功能來記錄按鍵按下的時間,并通過串口調(diào)試工具打印出按鍵按下的時間;

芯片STM32F407

編譯調(diào)試工具:keil、cubemx

①使用STM32CUBEMX配置工程文件

②代碼實現(xiàn)

①使用STM32CUBEMX配置工程文件

Step1:配置TIM2,選擇內(nèi)部時鐘掛載在APB1總線上、選擇通道1、選擇輸入捕獲、輸入預(yù)分頻數(shù)、設(shè)置計數(shù)值;設(shè)置輸入捕獲為下降沿捕獲

wKgZomRGRaWAU8U7AAOV9ka1hmE152.jpg

wKgaomRGRaWAKu8KAAOmoKSFVqw664.jpg

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

wKgZomRGRaaACazyAAN3IKisCHQ706.jpg

wKgaomRGRaaAXyHaAALlaaY1M00944.jpg

Step3:設(shè)置優(yōu)先級分組、設(shè)置優(yōu)先級

wKgZomRGRaeAfukDAAN2IuS0v-s995.jpg

Step4:配置串口USART3、用于調(diào)試打印日志

wKgaomRGRaiANTs3AALWa4FurGQ689.jpg

Step5:生成工程文件

wKgZomRGRaiAJeCAAALSyewhqFw628.jpg

wKgaomRGRamAaOfTAAKzEiohKtY616.jpg

②代碼實現(xiàn)

Step1:輸出重定向、添加頭文件

wKgZomRGRamAez1qAACKlwaD93E592.jpg

wKgaomRGRaqAeYFVAACdZTHn0WI148.jpg

Step2:從啟動文件一層一層尋找輸入捕獲的中斷服務(wù)函數(shù)

進入啟動文件找到TIM2的中斷向量地址:

wKgZomRGRaqAe_jAAAC1OEuF05I006.jpg

Goto define of TIM2_IRQHandler ......:

wKgaomRGRauAJ3z9AACEVUegTVo077.jpg

Goto define of HAL_TIM_IRQHandler......:

wKgZomRGRauAY6GGAACJ64CaJKA366.jpg

Step3:重定義輸入捕獲函數(shù)對應(yīng)的中斷服務(wù)函數(shù)
HAL_TIM_IC_CaptureCallback:

wKgaomRGRayALFPwAAO03-CiJqU257.jpg

Step4:重定義計數(shù)器溢出對應(yīng)的中斷服務(wù)函數(shù)

wKgZomRGRa2Aa14CAAN5S0z0_80409.jpg

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

wKgaomRGRa2ANFwIAAMClqi4tOA147.jpg

Step6:編譯運行

wKgZomRGRa6AIUS8AAIUxhZ4esI571.jpg

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 晶振
    +關(guān)注

    關(guān)注

    34

    文章

    2866

    瀏覽量

    68036
  • 時鐘
    +關(guān)注

    關(guān)注

    10

    文章

    1733

    瀏覽量

    131480
  • 定時器
    +關(guān)注

    關(guān)注

    23

    文章

    3248

    瀏覽量

    114800
  • 串口
    +關(guān)注

    關(guān)注

    14

    文章

    1554

    瀏覽量

    76516
  • stm32cubemx
    +關(guān)注

    關(guān)注

    5

    文章

    283

    瀏覽量

    14809
收藏 人收藏

    評論

    相關(guān)推薦

    詳解STM32定時器捕獲功能

    STM32的定時器是支持信號輸入捕獲的,何為輸入捕獲?主要做什么應(yīng)用?
    的頭像 發(fā)表于 01-12 17:24 ?8473次閱讀
    詳解STM32<b class='flag-5'>定時器</b><b class='flag-5'>捕獲</b>功能

    STM32定時器(三)輸入捕獲

    STM32的定時器是支持信號輸入捕獲的,何為輸入捕獲?主要做什么應(yīng)用?
    的頭像 發(fā)表于 07-21 14:58 ?4376次閱讀
    STM32<b class='flag-5'>定時器</b>(三)<b class='flag-5'>輸入</b><b class='flag-5'>捕獲</b>

    STM32 --通用定時器輸入捕獲功能 精選資料推薦

    是通過定時器設(shè)置的定時溢出頻率來計算的(真心抽自己兩巴掌)。結(jié)果導致問題的發(fā)生。真的是這些東西最好是通過博客的方式記錄下來,方便自己,方便他人。現(xiàn)在然我們重新回顧一下這個功能:通用定時器
    發(fā)表于 08-19 06:34

    介紹通用定時器作為輸入捕獲的使用

    上一章介紹了通用定時器作為PWM輸出的使用方法,這一章,介紹通用定時器作為輸入捕獲的使用。用TI
    發(fā)表于 01-06 06:47

    如何對通用定時器輸入捕獲進行測試呢

    輸入捕獲模式有何作用?通用定時器輸入捕獲過程是怎樣的?如何對
    發(fā)表于 02-24 06:46

    stm32定時器輸入捕獲

    不同頻率、不同占空比的方波信號、PWM信號,同時做為輸入捕獲功能時,可以測量脈沖寬度、實現(xiàn)電容按鍵檢測等等。 一、輸入捕獲概念 輸入
    發(fā)表于 10-13 09:13 ?2.4w次閱讀
    stm32<b class='flag-5'>定時器</b><b class='flag-5'>輸入</b><b class='flag-5'>捕獲</b>

    基于STM32定時器輸入捕獲解析

    輸入捕獲模式可以用來測量脈沖寬度或者測量頻率。STM32的定時器,除了TIM6和TIM7,其他定時器都有輸入
    發(fā)表于 09-04 11:00 ?6020次閱讀

    stm32 定時器 捕獲

    輸入捕獲模式可以用來測量脈沖寬度或者測量頻率。STM32的定時器,除了TIM6和TIM7,其他定時器都有輸入
    發(fā)表于 09-08 17:07 ?2392次閱讀

    華大HC32-(05)-定時器輸入捕獲

    華大HC32-(05)-定時器輸入捕獲
    發(fā)表于 11-23 18:06 ?28次下載
    華大HC32-(05)-<b class='flag-5'>定時器</b><b class='flag-5'>輸入</b><b class='flag-5'>捕獲</b>

    stm32定時器輸入捕獲配置步驟及實例筆記

    輸入捕獲的一般配置步驟:初始化定時器和通道對應(yīng)IO的時鐘。初始化IO口,模式為輸入:GPIO_Init(); GPIO_InitStructure.GPIO_Mode = GPIO_M
    發(fā)表于 11-23 18:21 ?42次下載
    stm32<b class='flag-5'>定時器</b><b class='flag-5'>輸入</b><b class='flag-5'>捕獲</b>配置步驟及<b class='flag-5'>實例</b>筆記

    通用定時器的PWM輸入捕獲實驗

    通用定時器的PWM輸入捕獲實驗(寄存版本)PWM輸入捕獲
    發(fā)表于 11-24 09:21 ?21次下載
    <b class='flag-5'>通用</b><b class='flag-5'>定時器</b>的PWM<b class='flag-5'>輸入</b><b class='flag-5'>捕獲</b>實驗

    STM32CubeMX——定時器輸入捕獲

    通用定時器在基本定時器的基礎(chǔ)上增加了一個外部引腳,可以實現(xiàn)輸入捕獲與輸出比較等功能。高級定時器T
    發(fā)表于 12-02 14:06 ?9次下載
    STM32CubeMX——<b class='flag-5'>定時器</b><b class='flag-5'>輸入</b><b class='flag-5'>捕獲</b>

    STM32定時器輸入捕獲實驗

    概述輸入捕獲模式可以用來測量脈沖寬度或者測量頻率。STM32 的定時器,除了 TIM6 和 TIM7,其他定時器都有輸入
    發(fā)表于 12-14 18:58 ?20次下載
    STM32<b class='flag-5'>定時器</b><b class='flag-5'>輸入</b><b class='flag-5'>捕獲</b>實驗

    通用定時器輸入捕獲實驗

    文章目錄通用定時器輸入捕獲實驗(寄存版本)1、作用2、過程3、圖解4、測試方法5、代碼通用
    發(fā)表于 01-12 19:53 ?9次下載
    <b class='flag-5'>通用</b><b class='flag-5'>定時器</b>的<b class='flag-5'>輸入</b><b class='flag-5'>捕獲</b>實驗

    CW32定時器操作講解——輸入捕獲

    CW32定時器操作講解——輸入捕獲
    的頭像 發(fā)表于 09-27 16:06 ?1004次閱讀
    CW32<b class='flag-5'>定時器</b>操作講解——<b class='flag-5'>輸入</b><b class='flag-5'>捕獲</b>