[AVR单片机] 关于atmega16的T/C1输出2路PWM

[复制链接]
 楼主| zuiai 发表于 2009-12-18 10:53 | 显示全部楼层 |阅读模式
能不能使用atmega16的T/C1同时输出频率相同、占空比为50%、相位相差90度的2路PWM?比如使用其相频修正PWM模式。谢谢!
huamunv 发表于 2009-12-18 22:59 | 显示全部楼层
AVR 的T/C1除具有定时、计数、输入捕捉和输出比较功能外,还可构成两个脉冲宽度调制PWM输出通道。
huamunv 发表于 2009-12-18 23:01 | 显示全部楼层
god_like 发表于 2009-12-19 00:51 | 显示全部楼层
LS很热心啊,学习了
 楼主| zuiai 发表于 2009-12-19 10:44 | 显示全部楼层
多谢各位回帖,如果不能同时输出相位相差90度的2路PWM,只有改用具有2个16位定时器的AVR,分别输出2路PWM。
天地有源 发表于 2009-12-19 16:46 | 显示全部楼层
M16的T1可以满足楼主需求,
jack_icc 发表于 2010-8-3 20:52 | 显示全部楼层
不錯
宇容创行 发表于 2010-8-4 10:59 | 显示全部楼层
此题亦作斑竹pk必答题
粉丝 发表于 2010-8-4 12:29 | 显示全部楼层
凭什么?
123jj 发表于 2010-8-4 13:26 | 显示全部楼层
此题亦作斑竹pk必答题
宇容创行 发表于 2010-8-4 10:59


呵呵!你这是将只会打口水仗的斑竹一军啊!
123jj 发表于 2010-8-4 13:33 | 显示全部楼层
多谢各位回帖,如果不能同时输出相位相差90度的2路PWM,只有改用具有2个16位定时器的AVR,分别输出2路PWM。
zuiai 发表于 2009-12-19 10:44


AVR硬件不支持。
改用2个16位定时器的AVR,也难以做到相位差精确到90度的2路PWM输出。

如加入一点软件补偿,可以做到相位差90度的2路PWM输出。

但频率不能做到很高,精度也不能做到很高,一般用用还能凑合。
宇容创行 发表于 2010-8-4 13:39 | 显示全部楼层
此轮123jj 获胜
123jj 发表于 2010-8-4 15:58 | 显示全部楼层
谢谢!
换个单片机,比如STM8, 就很容易实现一个定时器同时控制相位差精确到90度的2路PWM输出。
STM8的价格比AVR低N倍!
论坛游客 发表于 2010-8-4 16:04 | 显示全部楼层
在PK啊  错过了  可惜
lrqzsu 发表于 2010-8-5 09:13 | 显示全部楼层
avr t1 相位修正模式可以实现楼主要求。。。请参照atmel应用手册AVR447Sinusoidal driving of three-phase permanent magnet motor using ATmega4888168.pdf。官网一搜可以找到
123jj 发表于 2010-8-5 10:16 | 显示全部楼层
回楼上,avr的相位修正模式,只能一个定时器实现一路,要实现2路相位差精确到90度的PWM输出。必须用两个定时器,而且还需加入一点软件补偿控制,但频率不能做到很高,精度也不能做到很高,一般用用还能凑合。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

6

主题

13

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部