记录一下,我使用stm32实现pwm波输入,以及对频率和占空比的计算,同时通过串口输出(实现-重要)

1,首先看下半物理仿真

看下我的配置:
记录一下,我使用stm32实现pwm波输入,以及对频率和占空比的计算,同时通过串口输出(实现-重要)_第1张图片

看下计算方法以及matlab的仿真输出的数据:

记录一下,我使用stm32实现pwm波输入,以及对频率和占空比的计算,同时通过串口输出(实现-重要)_第2张图片

timer3的ch2是选择高电平,计算频率
timer3的ch1是选择的是低电平,用来计算周期
其中TemPIpre表示的是CH2输出的值,
TemPIpul表示的是CH1输出的值
记录一下,我使用stm32实现pwm波输入,以及对频率和占空比的计算,同时通过串口输出(实现-重要)_第3张图片
我们得到matlab的值来计算一下,看得到的值和我用pwm发射器发生的值是不是一样的。
频率:
我们得到1000 000/22180=45和我们实际的发射的值一样
周期:
我们得到18850*100/22180 = 84.98和我们实际得到的周期值一样

记录一下,我使用stm32实现pwm波输入,以及对频率和占空比的计算,同时通过串口输出(实现-重要)_第4张图片
2,参考学习链接:
实际配置也是按照这个链接配置的
使用Stm32CubeMx 完成PWM输入模式采集频率和占空比

注意事项:因为这里是有小小数点的输出,所以数据类型必须选择single
记录一下,我使用stm32实现pwm波输入,以及对频率和占空比的计算,同时通过串口输出(实现-重要)_第5张图片

3.我们看下用串口输出
参参见我另外一篇,做了串口的输出以及unit16位和unit8位的对比,如果你的频率很高,那么就需要选择uint16,因为unint8只有0-255
链接如下:https://blog.csdn.net/pvmsmfchcs/article/details/136103807

你可能感兴趣的:(smt3-simulink,stm32电机控制,stm32,嵌入式硬件,单片机)