发新帖我要提问
12
返回列表
[STM32F1]

如何有效使用STM32的PWM产生如图所示的PWM

[复制链接]
楼主: hjl2832
手机看帖
扫描二维码
随时随地手机跟帖
god9987| | 2020-9-27 21:07 | 显示全部楼层
固定60K HZ 是载波?

然后通过乘法器与信号进行相乘??????

或者加法器进行混频???

使用特权

评论回复
god9987| | 2020-9-27 21:07 | 显示全部楼层
感觉 T1 T2 进行配合 比较好!

使用特权

评论回复
ADZ2016| | 2020-9-27 21:10 | 显示全部楼层
类似于 38K 或者红外编码啊!

使用特权

评论回复
powermaker2568| | 2020-9-27 21:13 | 显示全部楼层
学习学习!

不明白 什么意思!

使用特权

评论回复
carefull3357dc| | 2020-9-27 21:18 | 显示全部楼层
学习学习!不明觉厉

使用特权

评论回复
oufuqiang| | 2020-9-27 21:45 | 显示全部楼层
两路设置为OD,直接并联在一起。或者两个二极管做简单与门。

使用特权

评论回复
binoo7| | 2020-9-28 11:01 | 显示全部楼层
可以通过输出比较翻转模式,自己计数,想怎么输出就怎么输出

使用特权

评论回复
cry1109| | 2020-9-28 12:21 | 显示全部楼层
hjl2832 发表于 2020-9-26 10:34
我试过PWm中断,打开后因为中断时间间隔太小(uS级),严重影响单片机的其它程序运行。资源全部被这个PWM中 ...

不会吧,我F1最大输出75kHz的PWM脉冲,在中断里对脉冲个数计数程序正常运行,精度很高,再跑个定时中断串口中断啥的完全没压力。

使用特权

评论回复
hjl2832|  楼主 | 2020-9-28 13:20 | 显示全部楼层
本帖最后由 hjl2832 于 2020-9-28 13:22 编辑

感谢大家的回复,其实,我的想法是用这种PWM来做数字电源控制,60KHz左右的基频是不变的,我想要不改变T1,只改变T2的方式,来降低电源的静态功耗,当然,T1也可能根据实际的输出电压调整范围进行小量的改变。但我的思路是尽量不改变T1的前提下完成输出电压的调节。另外,此方法的PWM是只用一个IO口来实现。就类似电源管理芯片,用另一个IO来监测输出电压形成闭环控制。

使用特权

评论回复
hjl2832|  楼主 | 2020-9-28 13:23 | 显示全部楼层
cry1109 发表于 2020-9-28 12:21
不会吧,我F1最大输出75kHz的PWM脉冲,在中断里对脉冲个数计数程序正常运行,精度很高,再跑个定时中断串 ...

我现在调试是用的STM8S005,实际测试开了PWM中断后,其它所有功能都影响严重。

使用特权

评论回复
ufbycd| | 2020-9-28 17:22 | 显示全部楼层
hjl2832 发表于 2020-9-26 12:15
那样没法保证每一个T1时刻都是同步的

可以同步。
假设pwm1是60kHz载波、pwm2是调制波,使能pwm2的计数器溢出中断,在中断内复位pwm1的计数值即可。

使用特权

评论回复
ufbycd| | 2020-9-28 17:29 | 显示全部楼层
hjl2832 发表于 2020-9-28 13:23
我现在调试是用的STM8S005,实际测试开了PWM中断后,其它所有功能都影响严重。 ...

那明显说明STM8算力不能支撑你这个项目

使用特权

评论回复
jimsboy| | 2020-9-28 17:51 | 显示全部楼层
见过这种模式的.而且是一个很便宜的MCU.

使用特权

评论回复
zj1037157350| | 2020-9-28 20:48 | 显示全部楼层

怎么可以

使用特权

评论回复
a511484095| | 2020-9-29 09:52 | 显示全部楼层
定时器1中断,中断写对应的IO脉冲不就好了,如果对时序要求非常严格当我没说。
你如果不用中断想达到如图效果你可能得慢慢改变延时开启定时器的时间,达到步序一致,而且可能还会达不到。
这种情况我应该还是会用中断,尽量减少外循环单次处理的步骤,不影响交互功能就行。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则