STM32小项目总结4:TIM输入捕获测频率+占空比

简介: STM32小项目总结4:TIM输入捕获测频率+占空比

TIM输入捕获


1.输入捕获模式测频率:


捕获事件:首先设置为上升沿捕获,每来一个上升沿,CNT转运CCR一次,且CNT的值是两个上升沿之间的间隔,即CNT=周期,所以用来计时,也就是T。CCR的捕获的值是计数值N。


通道选择时,第一个通道选择上升沿触发,用于捕获周期。第二个通道选择下降沿触发,用于捕获占空比。


推荐封装函数为IC_Init();


思路:


1.开启RCC的TIM3的GPIOA时钟+2.选择内部时钟TIM_IntertnalClockConfig(); 初始化时基单元TIM_TimeBaseInit();+3.GPIO初始化GPIO_Init();+4.输入捕获单元TIM_ICInit();+5.设置TRGI为TI1FP1.+6.配置从模式为ReSet+7.开Tim_Cmd();+8.自定义频率函数,推荐为uint8_t IC_GetFreq


2.输入捕获模式测频率和占空比:


思路与输入捕获模式测频率基本相同,只是需要单独测占空比,因此,需要测占空比的自定义函数。推荐自定义函数为uint16_t IC_GetDuty();


注意:频率和占空比之间存在转换关系,如下:Tim_GetCapture2(Tim3)+1*100/(Tim_GetCapture(Tim3)+1).


3.输入捕获模式Tim的库函数补充:


Tim_IcStructInit();给输入捕获模式结构体幅初值


Tim_InputTrigger();选择输入触发


Tim_OutputTrigger();选择输出触发


Tim_SelectSlaveMode();选从模式


Tim_GetCapture1();输出比较,CCR只读


Tim_SetCapture1();输出比较,CCR只写


相关文章
|
6月前
|
移动开发
技术好文:stm32寄存器版学习笔记06输入捕获(ETR脉冲计数)
技术好文:stm32寄存器版学习笔记06输入捕获(ETR脉冲计数)
299 0
|
7月前
|
缓存 网络协议 算法
[蓝桥杯嵌入式]hal库 stm32 PWM的使用(随时修改占空比,随时修改频率)
[蓝桥杯嵌入式]hal库 stm32 PWM的使用(随时修改占空比,随时修改频率)
[STM32F10x] 利用定时器测量频率
[STM32F10x] 利用定时器测量频率
158 2
STM32F103C8 TIM输入捕获
STM32F103C8 TIM输入捕获
108 0
STM32 输入捕获的脉冲宽度及频率计算
STM32 输入捕获的脉冲宽度及频率计算
232 0
STM32 PWM模式与输出比较模式的区别。PWM占空比不生效,在STM32CubeMX中配置PWM的两种模式——蓝桥杯嵌入式
STM32 PWM模式与输出比较模式的区别。PWM占空比不生效,在STM32CubeMX中配置PWM的两种模式——蓝桥杯嵌入式
1367 0
|
6月前
使用STM32F103标准库实现定时器控制LED点亮和关闭
通过这篇博客,我们学习了如何使用STM32F103标准库,通过定时器来控制LED的点亮和关闭。我们配置了定时器中断,并在中断处理函数中实现了LED状态的切换。这是一个基础且实用的例子,适合初学者了解STM32定时器和中断的使用。 希望这篇博客对你有所帮助。如果有任何问题或建议,欢迎在评论区留言。
488 2
|
5月前
stm32f407探索者开发板(十七)——串口寄存器库函数配置方法
stm32f407探索者开发板(十七)——串口寄存器库函数配置方法
817 0
|
7月前
|
传感器
STM32标准库ADC和DMA知识点总结-1
STM32标准库ADC和DMA知识点总结
|
6月前
|
IDE 开发工具
使用STM32F103标准库实现自定义键盘
通过本文,我们学习了如何使用STM32F103标准库实现一个简单的自定义键盘。我们首先初始化了GPIO引脚,然后实现了一个扫描函数来检测按键状态。这个项目不仅能够帮助我们理解STM32的GPIO配置和按键扫描原理,还可以作为进一步学习中断处理和低功耗设计的基础。希望本文对你有所帮助,祝你在嵌入式开发的道路上不断进步!
540 4