您的位置 首页 编程

AVR 定时器相位批改PWM 形式运用

相位修正PWM和快速PWM的区别在于,相位修正PWM在达到上限值后做减一操作,然后到达匹配值后端口再发生变化。其他特性和快速PWM基本一至。…

相位批改PWM和快速PWM的差异在于,相位批改PWM在抵达上限值后做减一操作,然后抵达匹配值后端口再发生变化。

其他特性和快速PWM根本一至。

相位批改PWM时序图

频率计算公式

参阅代码:

#include
void FreCorrectPWM(void)
{
DDRD_Bit4 = 1;// OC1B 管脚设置为输出
DDRD_Bit5 = 1;// OC1A 管脚设置为输出

TCCR1A=(0<// OC1A 作为上限值 电平取反 OC1B 作为比较值 比较匹配时清零,抵达上限值是置1
// TCCR1A ==> COM1A1 , COM1A0 , COM1B1 , COM1B0 , FOC1A , FOC1B , WGM11 , WGM10
// 0 1 1 0 无关 无关 1 1
TCCR1B=(1<// 波形发生形式11 , 64分频
// TCCR1B ==> ICNC1 , %&&&&&%ES1 , – , WGM13 , WGM12 , CS12 , CS11 , CS10
// 无关 无关 1 0 0 1 1

OCR1A=1727;// 晶振频率 11.0592MHz , 设定 100Hz PWM信号 , 64分频
OCR1B=345;// 为高电平持续时间
}

void main(void)
{
FreCorrectPWM();
}

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/fangan/biancheng/252178.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部