0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

使用通用定时器的输入捕获实例

CHANBAEK 来源:头条号秋天滴风 作者:头条号秋天滴风 2023-05-01 09:02 次阅读

本文将介绍通过使用通用定时器的输入捕获功能来记录按键按下的时间,并通过串口调试工具打印出按键按下的时间;

芯片STM32F407

编译调试工具:keil、cubemx

①使用STM32CUBEMX配置工程文件

②代码实现

①使用STM32CUBEMX配置工程文件

Step1:配置TIM2,选择内部时钟挂载在APB1总线上、选择通道1、选择输入捕获、输入预分频数、设置计数值;设置输入捕获为下降沿捕获

wKgZomRGRaWAU8U7AAOV9ka1hmE152.jpg

wKgaomRGRaWAKu8KAAOmoKSFVqw664.jpg

Step2:使能RCC时钟,选择外部晶振;配置时钟树

wKgZomRGRaaACazyAAN3IKisCHQ706.jpg

wKgaomRGRaaAXyHaAALlaaY1M00944.jpg

Step3:设置优先级分组、设置优先级

wKgZomRGRaeAfukDAAN2IuS0v-s995.jpg

Step4:配置串口USART3、用于调试打印日志

wKgaomRGRaiANTs3AALWa4FurGQ689.jpg

Step5:生成工程文件

wKgZomRGRaiAJeCAAALSyewhqFw628.jpg

wKgaomRGRamAaOfTAAKzEiohKtY616.jpg

②代码实现

Step1:输出重定向、添加头文件

wKgZomRGRamAez1qAACKlwaD93E592.jpg

wKgaomRGRaqAeYFVAACdZTHn0WI148.jpg

Step2:从启动文件一层一层寻找输入捕获的中断服务函数

进入启动文件找到TIM2的中断向量地址:

wKgZomRGRaqAe_jAAAC1OEuF05I006.jpg

Goto define of TIM2_IRQHandler ......:

wKgaomRGRauAJ3z9AACEVUegTVo077.jpg

Goto define of HAL_TIM_IRQHandler......:

wKgZomRGRauAY6GGAACJ64CaJKA366.jpg

Step3:重定义输入捕获函数对应的中断服务函数
HAL_TIM_IC_CaptureCallback:

wKgaomRGRayALFPwAAO03-CiJqU257.jpg

Step4:重定义计数器溢出对应的中断服务函数

wKgZomRGRa2Aa14CAAN5S0z0_80409.jpg

Step5:在主函数中启动定时器和输入捕获:

wKgaomRGRa2ANFwIAAMClqi4tOA147.jpg

Step6:编译运行

wKgZomRGRa6AIUS8AAIUxhZ4esI571.jpg

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 晶振
    +关注

    关注

    32

    文章

    2477

    浏览量

    66856
  • 时钟
    +关注

    关注

    10

    文章

    1480

    浏览量

    130306
  • 定时器
    +关注

    关注

    23

    文章

    3148

    浏览量

    112048
  • 串口
    +关注

    关注

    14

    文章

    1483

    浏览量

    74525
  • stm32cubemx
    +关注

    关注

    5

    文章

    260

    浏览量

    14448
收藏 人收藏

    评论

    相关推荐

    STM32定时器(三)输入捕获

    STM32的定时器是支持信号输入捕获的,何为输入捕获?主要做什么应用?
    的头像 发表于 07-21 14:58 2717次阅读
    STM32<b class='flag-5'>定时器</b>(三)<b class='flag-5'>输入</b><b class='flag-5'>捕获</b>

    通用定时器输入捕获如何实现捕获低电平时间?

    主控芯片是STM32F103RBT6,使用通用定时器输入捕获功能捕获板载按键的低电平时间。按键按下时为低电平,四个板载按键分别为PC0,P
    发表于 03-11 06:54

    STM32 --通用定时器输入捕获功能 精选资料推荐

    是通过定时器设置的定时溢出频率来计算的(真心抽自己两巴掌)。结果导致问题的发生。真的是这些东西最好是通过博客的方式记录下来,方便自己,方便他人。现在然我们重新回顾一下这个功能:通用定时器
    发表于 08-19 06:34

    STM32通用定时器输入捕获功能是什么?

    STM32通用定时器输入捕获功能是什么?
    发表于 11-24 07:39

    定时器输入捕获实验概述

    定时器输入捕获实验通用定时器输入捕获概述常用库函数和
    发表于 01-06 08:21

    介绍通用定时器作为输入捕获的使用

    上一章介绍了通用定时器作为PWM输出的使用方法,这一章,介绍通用定时器作为输入捕获的使用。用TI
    发表于 01-06 06:47

    如何对通用定时器输入捕获进行测试呢

    输入捕获模式有何作用?通用定时器输入捕获过程是怎样的?如何对
    发表于 02-24 06:46

    stm32定时器输入捕获

    不同频率、不同占空比的方波信号、PWM信号,同时做为输入捕获功能时,可以测量脉冲宽度、实现电容按键检测等等。 一、输入捕获概念 输入
    发表于 10-13 09:13 2.3w次阅读
    stm32<b class='flag-5'>定时器</b><b class='flag-5'>输入</b><b class='flag-5'>捕获</b>

    基于STM32定时器输入捕获解析

    输入捕获模式可以用来测量脉冲宽度或者测量频率。STM32的定时器,除了TIM6和TIM7,其他定时器都有输入
    发表于 09-04 11:00 5744次阅读

    stm32 定时器 捕获

    输入捕获模式可以用来测量脉冲宽度或者测量频率。STM32的定时器,除了TIM6和TIM7,其他定时器都有输入
    发表于 09-08 17:07 2185次阅读

    华大HC32-(05)-定时器输入捕获

    华大HC32-(05)-定时器输入捕获
    发表于 11-23 18:06 27次下载
    华大HC32-(05)-<b class='flag-5'>定时器</b><b class='flag-5'>输入</b><b class='flag-5'>捕获</b>

    stm32定时器输入捕获配置步骤及实例笔记

    输入捕获的一般配置步骤:初始化定时器和通道对应IO的时钟。初始化IO口,模式为输入:GPIO_Init(); GPIO_InitStructure.GPIO_Mode = GPIO_M
    发表于 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输入捕获模式是
    发表于 11-24 09:21 20次下载
    <b class='flag-5'>通用</b><b class='flag-5'>定时器</b>的PWM<b class='flag-5'>输入</b><b class='flag-5'>捕获</b>实验

    STM32CubeMX——定时器输入捕获

    通用定时器在基本定时器的基础上增加了一个外部引脚,可以实现输入捕获与输出比较等功能。高级定时器T
    发表于 12-02 14:06 9次下载
    STM32CubeMX——<b class='flag-5'>定时器</b><b class='flag-5'>输入</b><b class='flag-5'>捕获</b>

    通用定时器输入捕获实验

    文章目录通用定时器输入捕获实验(寄存器版本)1、作用2、过程3、图解4、测试方法5、代码通用定时器
    发表于 01-12 19:53 8次下载
    <b class='flag-5'>通用</b><b class='flag-5'>定时器</b>的<b class='flag-5'>输入</b><b class='flag-5'>捕获</b>实验