OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 7006|回复: 9

51单片机怎样用多个管脚输出相同频率不同占空比可调的PWM

[复制链接]

332

主题

495

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1547
金钱
1547
注册时间
2014-7-11
在线时间
256 小时
发表于 2020-3-24 08:53:57 | 显示全部楼层 |阅读模式
2金钱
51单片机怎样用多个管脚输出相同频率不同占空比可调的PWM

比如51的P0,P1,P2,P3同时输出频率相同,占空比可调的PWM来

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

332

主题

495

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1547
金钱
1547
注册时间
2014-7-11
在线时间
256 小时
 楼主| 发表于 2020-3-24 09:00:20 | 显示全部楼层
就是频率相同,占空比不同,且可调的PWM
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165309
金钱
165309
注册时间
2010-12-1
在线时间
2108 小时
发表于 2020-3-25 01:06:10 | 显示全部楼层
没有硬件就是麻烦, 用中断咯,不过得频繁中断,完全不适合频率高的情况。
回复

使用道具 举报

2

主题

42

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
297
金钱
297
注册时间
2019-4-24
在线时间
78 小时
发表于 2020-3-25 12:14:06 来自手机 | 显示全部楼层
假设周期1ms,定时器10uS进一次中断,中断中一个变量假设为a累加,a大于100归0,至此完成了周期的设置。控制p00.p01.p02使用三个变量假设是Tp0.Tp1.tp2.为这三个变量赋值与a进行比较,小于输出1大于输出0。例如Tp0为20,a由0开始累加,在小于20时输出1,大于20输出0,,直到a再次归0,又开始一个循环,如此反复,其他相同原理。如果要改变占空比修改Tp0这些数值就可以
回复

使用道具 举报

0

主题

1

帖子

0

精华

新手入门

积分
2
金钱
2
注册时间
2020-4-24
在线时间
0 小时
发表于 2020-4-24 18:45:09 | 显示全部楼层
有技术顾问嘛?哈哈哈
回复

使用道具 举报

50

主题

1805

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
6661
金钱
6661
注册时间
2016-5-29
在线时间
909 小时
发表于 2020-4-25 16:38:23 | 显示全部楼层
本帖最后由 操作系统 于 2020-4-25 16:40 编辑

开启定时器 100 微秒中断.或者 50微秒 中断..在中断程序里面模拟  PWM,频率不会太高..可以同时输出.至少4 路PWM.我做过 8路PWM的.可以胜任.
PWM ++
    IF PWM < MAXV ELSE PWM = 0
    LEDR = PWM < PWMR
    LEDG = PWM < PWMG
    LEDB = PWM < PWMB

这是三路PWM 的代码..中断里的部分.不怎么占用空间.
回复

使用道具 举报

332

主题

495

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1547
金钱
1547
注册时间
2014-7-11
在线时间
256 小时
 楼主| 发表于 2020-4-25 21:50:13 | 显示全部楼层
可以这么理解吧,LEDR = PWM < 50
    LEDG = PWM < 40
    LEDB = PWM < 30
是这样吧
就是一个计数器,管脚在什么时候置零置一
回复

使用道具 举报

1

主题

22

帖子

0

精华

新手上路

积分
42
金钱
42
注册时间
2020-4-25
在线时间
5 小时
发表于 2020-5-4 13:05:11 | 显示全部楼层
用中断比较省事 中断计数到设定值统一翻转频率相同了然后计数过程中分别反转一次占空比不同且分别控制
回复

使用道具 举报

0

主题

3

帖子

0

精华

新手入门

积分
12
金钱
12
注册时间
2020-5-4
在线时间
2 小时
发表于 2020-5-4 15:29:02 | 显示全部楼层
本帖最后由 snakeeamail 于 2020-5-4 15:30 编辑

定时器做,不过老是会中断,太多了。现在都有硬件PWM模块了,最好硬件做。 另外你最好把具体的要求写出来。 频率,周期,占空比要求多少?
回复

使用道具 举报

13

主题

166

帖子

0

精华

高级会员

Rank: 4

积分
791
金钱
791
注册时间
2018-12-19
在线时间
163 小时
发表于 2020-6-2 23:48:20 | 显示全部楼层
现在带硬件PWM的单片机太多了,想找个不带PWM的还真不好找。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-11-23 09:14

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表