STM32F407-高级定时器输入捕获功能
要用到的函数如上图。
以捕获高电平为例,会出现上面两种情况:1、在一次溢出前高电平已经结束;2、在N次溢出后高电平才结束。
高电平持续时间的计算原理:以STM32F407的定时器1为例,定时器1的时钟为168MHZ,令Prescaler=168-1后,可算出捕获时间精度为1us/次,即CNT的值每增加一次就会经过1us。定时器的溢出时间为(Period+1)us。所以两种情况下的高电平时间为:1、高电平时间=CNT(单位:us);2、高电平时间=N*(Period+1)+CNT(单位:us)。
根据计算原理,我们需要使用输入捕获中断来处理捕获的事件,使用更新中断来记录溢出次数。
程序流程图如下
补:1、发生跳转时CCRx寄存器会保存当前CNT的值,获取当前CCRx的值的函数为:
HAL_TIM_ReadCapturedValue(TIM_HandleTypeDef *htim, uint32_t Channel)
2、清除CCER寄存器原来的设置的函数为:
TIM_RESET_CAPTUREPOLARITY(__HANDLE__, __CHANNEL__)
3、配置CCER寄存器的函数为:
TIM_SET_CAPTUREPOLARITY(__HANDLE__, __CHANNEL__, __POLARITY__)
第三个参数为TIM_ICPOLARITY_FALLING时下降沿捕获,为TIM_ICPOLARITY_RISING时上升沿捕获。
4、关闭、使能定时器函数为:
__HAL_TIM_DISABLE(__HANDLE__)
__HAL_TIM_ENABLE(__HANDLE__)
5、清零CNT的函数为:
__HAL_TIM_SET_COUNTER(__HANDLE__, __COUNTER__)
第二个参数为0时,清零。
STM32F407-高级定时器输入捕获功能相关推荐
- STM32笔记——定时器输入捕获功能(测量PWM的频率和占空比)
目录 一.概述 二.输入捕获功能 2.1 输入捕获简介 2.2 输入捕获通道 三.输入捕获功能测量PWM波的频率和占空比 3.1 测量频率的方法 3.2 测量过程 一.概述 主要介绍通用定时器的输入捕 ...
- STM32F103定时器输入捕获功能
STM32F103单片机的定时器不仅能输出PWM波,而且还能捕获输入的PWM波.可以通过定时器的捕获功能测量输入PWM波的周期和占空比.其中定时器的输入捕获功能如下: 在输入捕获模式下,当检测 ...
- STM32F407定时器输入捕获
STM32F407定时器一共有14个.其中分为基本定时器.通用定时器.高级定时器.具体功能如上图所示.下面介绍下输入捕获模式. 输入捕获:通过检测TIMx_CHx上的边沿信号,在边沿信号发生跳变的时候 ...
- 华大HC32-(05)-定时器输入捕获
一.开发环境及工具 HC32F003 / HC32F005 Keil uVision5 V5.33 / IAR For ARM 7.80.4 (J-Link) 此工程源码下载路径 : https:// ...
- STM32定时器输入捕获
5.STM32定时器输入捕获 前言: STM32定时器输入捕获简介 STM32的输入捕获可以用于捕获脉宽, 测量时间 . 例如超声波测距模块就是需要用输入捕获功能, 通过测量输入脉冲的高电平脉宽 , ...
- STM32 输入捕获功能
目录 01.STM32捕获功能 02.输入捕获过程 03.代码配置 本文将介绍通过STM32的定时器输入捕获,如果对定时器不太熟悉的同学可以看下之前的文章<STM32基础定时器详解>,关于 ...
- 【STM32】【STM32CubeMX】STM32CubeMX的使用之七:定时器输入捕获实现超声波测距
文章目录 0.前言 1.硬件设计 1.1.超声波模块 1.2.STM32L151 2.CubeMX配置 3.软件设计 下载工程文件: https://gitee.com/Joseph_Coop ...
- STM32-通用定时器-输入捕获
1.概述 前面,我们介绍了STM32F1的通用定时器作为PWM输出的使用方法,这一章我们向大家介绍通用定时器作为输入捕获的使用.在本章中,我们将用TIM5的通道的通道1(PA0)来做输入捕获, 捕获 ...
- STM32F4_定时器输入捕获详解
目录 1. 输入捕获简介 2. 输入捕获框图 3. 输入捕获模式 4. 相关寄存器 4.1 TIMx_ARR.TIMx_PSC 4.2 捕获/比较寄存器1:TIMx_CCMR1 4.3 捕获/比较使能 ...
最新文章
- 《大数据算法》一1.2 大数据算法
- java高并发(十三)并发容器J.U.C--AQS
- Facebook 上一位大佬发表的代码看法
- resnet18到resnet152模型pytorch实现
- java学习(32):巩固练习
- ip访问次数统计 nginx_Linux分析Nginx日志统计IP访问次数的shell脚本
- 理解图像配准中的LMeds、M-estimators与RANSAC算法
- c语言怎么算n以内素数,关于求N以内素数的一点小问题(N小于一亿)
- 数据预处理第1讲:标准化
- ArrayList LinkedList
- MDM主数据平台使用总结
- 【强烈建议收藏保存】70多个免费实用工具,数字激活、数据恢复、配置检测......
- Java PdfBox 提取指定PDF页面图片
- 大数据时代没有隐私,我们都在裸奔
- 打开计算机 显示不支持此接口,新装的电脑系统,打开图片提示不支持此接口!怎么解决!...
- 信创大事件 | 2022“国民云计算品牌”正式放榜
- 男孩女孩和他们的父母的有趣问题
- 北京将评估特定时段特定区域机动车单双号限行-单双号-限行
- python广州地图_手把手教你用Python+可视化工具制作漂亮地图
- OpenVAS破绽扫描根底教程之OpenVAS概述及安装及配置OpenVAS服务