当前位置:   article > 正文

STM32输入捕获,cubemx设置,测量一路PWM的频率和占空比。_stm32cube的pwm捕获

stm32cube的pwm捕获

今天给大家带来STM32输入捕获应该配置的代码编写,我用的是STM32G431的开发板,之前参加蓝桥杯的板子,如图

首先查看数据手册定时器有哪些引脚支持pwm输出和输入捕获。采用的PA1的TIM2_CH2做为PWM输出,PA7的TIM3_CH2作为输入捕获,

接着对cubeMX进行配置如图,先设置pwm输出,先勾选PA1引脚为TIM2_CH2,内部时钟,通道二设置成输出PWM模式,预分配是80-1,(我板子的主频是80M,不同板子不一样自行设置),自动重装置值是1000-1,pulse设置为400,占空比设置成40%,(80 000 000/80)/1000=1000hz

 然后进行配置输入捕获,先勾选PA7的TIM3_CH2,同样也是内部时钟,通道二设置成输入捕获模式,设置预分配是80-1(不同板子不一样自行设置),自动重装置值65535,设置上升沿触发,这里需要打开中断,在NVC settings中开中断,基本就配置好点击生成代码。

 先编写定时器中断函数如图,上升沿捕获一次,下降沿捕获一次,然后再次捕获一次上升沿,代码有注释很详细。

 编写一个捕获的函数,用来 处理和计算捕获的数值如图

 在mian.c中打开定时器,最可以将数据打印到LCD上进行显示(这里没写LCD 的代码),运行下载到板子,同时需要用杜邦线将PA1和PA7引脚相连如图所示。

 得到频率1000hz,占空比40%(一点点不准哈哈哈)。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/盐析白兔/article/detail/1018224
推荐阅读
相关标签
  

闽ICP备14008679号