luakuc 发表于 2011-6-16 10:43:09

求教:Atmega128 如何使用一个模块(t/c1 3)产生3路PWM 来控制步进电机

求教:Atmega128 如何使用一个模块(t/c1或3)产生3路PWM 来控制步进电机
既然他可以同时产生3路PWM 虽说公用一个 比较值 能否产生呢?

看到的使用硬件做的:产生的3路相同的PWM 然后用RC进行移相(别人在做正弦波的时候提出的)
我的问题是能否用软件进行实现呢(虽说可以用一路PWM 然后分别控制3个不同的引脚来产生,我希望还是有3路PWM产生各自的驱动信号)



求教

machao 发表于 2011-6-16 18:10:11

如果此T/C配备了N个比较匹配单元,并且有对应的N个输出,那么使用一个T/C就能产生N路的PWM。

但所有PWM波频率是相同的,占空比可以不同,为N个。

rowa 发表于 2011-6-16 18:53:07

好奇PWM信号通过RC移相可以做到什么效果?

luakuc 发表于 2011-6-16 23:49:10

回复【1楼】machao
但所有PWM波频率是相同的,占空比可以不同,为N个。
-----------------------------------------------------------------------

明白了(这几天移植抱着128的datasheet啃,头都大了,昨晚一直用CTC模式,看到一个定时器可以有三路输出(其实看到有三路输出,就不应该没有转到PWM mode,CTC好像只能一路输出吧),心想不能浪费了,就像想起来,可不可以用一个T/C模块就实现控制三相电机),PWM模式下 都可以实现N个不同占空比, 软件实现输出三路不同的PWM波看来有望,(将一个周期进行三等分,每个引脚的输出(高电平或者低电平)占1/3个周期的PWM)


另外在能否追加一个问题呢?
   关于输出比较调制器(OCM1C2) 输出比较调制器(OCM)可产生由载波频率调制的波形。 怎么很少见人用呢(论坛上很少提及,难道很简单,我不是学通信的,对这个不了解,但是模电上也见着过乘法器呀)

竹风xu 发表于 2012-7-28 23:01:15

我现在在做智能小车,想用4个PWM波来调速,由于刚开始学128,不知该怎么办,能否指点指点{:handshake:}
页: [1]
查看完整版本: 求教:Atmega128 如何使用一个模块(t/c1 3)产生3路PWM 来控制步进电机