打印
[技术问答]

关于用IO口模拟pwm波如何实现频率和占空比可调的问题

[复制链接]
4062|13
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主


此程序是我实现的一部分,既可以实现通过参数决定模拟的占空比,但是修改模拟的pwm波的频率,却无从下手(本人不是开发高手),搞不懂这个模拟出来的pwm波的频率到底该跟哪个参数挂上勾?是与定时器的比较值和重载值有联系还是和定时器的中断频率有关?望有使用过模拟pwm的大神指点下,或者知道思路的大神望不吝赐教!!!实在不懂这个模拟出的pwm波的频率怎么理解,在示波器上怎么体现呢?还是与高低电平的时间有关呢?


沙发
heisexingqisi| | 2018-12-6 22:56 | 只看该作者
设置两个变量作为频率和占空比的参数。这两个变量作为全局变量,可以被按键操作。

使用特权

评论回复
板凳
heisexingqisi| | 2018-12-6 22:58 | 只看该作者
占空比是在频率基础上的。
你先搞定如何通过一个参数改变频率,然后占空比就是在该频率基础上实现高低电平按占空比分配。

使用特权

评论回复
地板
xinpian101| | 2018-12-6 23:50 | 只看该作者
周期和占空比设置成非连续的比较容易。比如占空比的变化是1%,这很容易实现,如果是连续的需要计算,另外中断要每次都修改计数

使用特权

评论回复
5
xinpian101| | 2018-12-6 23:51 | 只看该作者
周期和占空比设置成非连续的比较容易。比如占空比的变化是1%,这很容易实现,如果是连续的需要计算,另外中断要每次都修改计数

使用特权

评论回复
6
haunghua|  楼主 | 2018-12-7 00:22 | 只看该作者
xinpian101 发表于 2018-12-6 23:51
周期和占空比设置成非连续的比较容易。比如占空比的变化是1%,这很容易实现,如果是连续的需要计算,另外中 ...

很容易实现??怎么我还是听不懂啊。。。。。。。。

使用特权

评论回复
7
haunghua|  楼主 | 2018-12-7 00:23 | 只看该作者
heisexingqisi 发表于 2018-12-6 22:58
占空比是在频率基础上的。
你先搞定如何通过一个参数改变频率,然后占空比就是在该频率基础上实现高低电平 ...

这个频率怎么理解,在示波器上能从波形看出来吗?

使用特权

评论回复
8
huangcunxiake| | 2018-12-7 08:56 | 只看该作者
肯定可以看出波形的。
你应该是一个周期两个中断,每个中断里修改定时器时间,来控制下一个状态是多长。

使用特权

评论回复
9
huangcunxiake| | 2018-12-7 08:57 | 只看该作者
比如当前是高电平,到时间了,进入中断,先判断是高电平,然后下面肯定是设置低电平的时间长度。

使用特权

评论回复
10
haunghua|  楼主 | 2018-12-7 10:13 | 只看该作者
我写出来了!根据PWM波频率的定义:每秒钟由高电平到低电平,再回到高电平的次数,也就是1s内的周期数!占空比改法还是我截图的,经过用示波器测,模拟的PWM波的频率=进中断的频率÷100,也就是想要得到100HZ的PWM波,那么就要100×100=10000Hz进一次中断(1000HZ=1ms)

使用特权

评论回复
11
yiyigirl2014| | 2018-12-7 19:25 | 只看该作者
是的,知道什么是周期,什么是占空比,就慢慢摸索,等搞定了,就玩熟了。

使用特权

评论回复
12
callhgd| | 2018-12-8 09:14 | 只看该作者
周期直接影响频率,占空比是频率一定的情况下,高低电平的比例。

使用特权

评论回复
13
callhgd| | 2018-12-8 09:14 | 只看该作者
周期直接影响频率,占空比是频率一定的情况下,高低电平的比例。

使用特权

评论回复
14
qinlu123| | 2018-12-8 11:25 | 只看该作者
IO模拟PWM频率很难上去吧,你输出1K占空比0-100可调的话中断就得开到10us

使用特权

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

本版积分规则

24

主题

72

帖子

0

粉丝