微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > MCU和单片机设计讨论 > 51 双定时器输出PWM相互干扰,怎么解决

51 双定时器输出PWM相互干扰,怎么解决

时间:10-02 整理:3721RD 点击:
51单片机用T0,T1两个定时器输出PWM。
计数值都是1000时,PWM周期都是5.6ms
计数值都是2000时,PWM周期也都是5.6ms
计数值都是3000时,T0的PWM周期输出2.2ms,T1的PWM输出周期为4.2ms
以上结果用示波器测得。
是不是因为优先级造成的干扰呢?

不大可能吧!你用的是软件PWM啊,那就有可能是程序错误

嗯。我改进了一下,用一个定时器控制两路PWM,这就不会互相干扰了。

也遇到过类似问题  当时分析是中断优先级的问题   可以把两个定时器的中断周期设的不一样,可以解决

对,你说的我考虑到了,然后我改进了一下,用一个定时器控制两路PWM,这就不会互相干扰了。也节省了一个定时器。

两个定时器配合的话可以实现多路PWM波,程序设计合理的话可以达到很高的精度,我写这个写了四个晚上,终于很好的解决了51多路精确PWM输出了,而且是定时器,所以不会受main函数的影响哦,加油吧,

一路定时器不久能输出多路PWM了吗,精度可能稍微差一点,不过能节省一个定时器

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top