关于 servo 库与 arduino mega 2560
请问有没有高人在 arduino mega 2560 的板子上用过servo 库?在 mega 2560 上,连接 1-12 个舵机,servo 库默认会使用硬件资源 timer 5,这会导致在pin 44~46 上的 pwm 函数失效。
我的问题是,如何可以重新初始化相关的寄存器数据,来恢复 pwm 功能?
查看过servo 库及底层的代码,功力浅薄,只能看懂十之一二,望高人指点。
目前的思路是 detach 所有连接的舵机,然后根据 Fast PWM 或 Phase correct pwm 的参数,设置 5号定时器相关的寄存器。
我是用 pwm 来调节 led 的亮度,依照我的思路恢复pwm功能后,虽然亮度会变化,但伴随着闪烁;
用原始的 pwm 则不会闪烁。
部分代码如下: TCCR5A =_BV(COM5A1)|_BV(WGM51)|_BV(WGM50);
TCCR5B = _BV(WGM53)|_BV(WGM52)| _BV(CS51);
页:
[1]