找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 5415|回复: 0
收起左侧

AVR定时器1快速PWM模式设置

[复制链接]
ID:65608 发表于 2014-9-1 00:55 | 显示全部楼层 |阅读模式
简单归纳一下:
快速PWM,是由匹配值和TOP 值决定的。而TOP值可以是固定的(方波产生模式5,6,7),又或者可编程(方波产生模式14,15)。方波产生模式5,6,7 分别对应0x00ff,0x01ff,0x03ff 的TOP 值,而模式14,15 的TOP 值分别为1CR1,和OCR1A 来决定。从视频教程中我们知道模式15 需要牺牲OC1A 作为代价,(OC1A=PD5)OCR1A 决定了PWM 输出的频率,而OCR1B 决定了PWM 不同的占空比输出。换一句话说,OCR1A 是OCR1B 求出占空比的参考值。(上一页有详细的介绍),虽然OC1A 被牺牲了,但是,OC1A 还可以很合理的设置依然可以工作于近似CTC 模式(勉强算是吧)。这里打上小小的补充:如果方波产生的模式是5,6,7,仅要稍微修改一下概念就可以了。
在编程的时候需要如下的步骤:
1.设置PD4~5 为输出(默认为低电平)。DDRD|=BIT(4)|BIT(5);
2.决定方波产生模式,试验中为15。OCR1A|=BIT(0)|BIT(1); OCR1B|=BIT(3)|BIT(4);
3.决定OC1A,和OC1B 的工作方式,试验中快速PWM,OC1A 作为牺牲,工作近似CTC 模式。OC1B,却是匹配时清零,TOP 时置一。OCR1A|=BIT(5)|BIT(6);
4.决定频率,OCR1A 设初值。
5.决定PWM 输出占空比,OCR1B 设初值。
回复

使用道具 举报

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

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

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