本帖最后由 拾瑞 于 2013-6-27 14:42 编辑
根据你的代码,你的舵机刷新远高于20ms!
如果你担心50HZ的频率不够,更改SERVO库!
舵机的运行好象是这样的:
1,给出转动角度指令
2,舵机按令动作(问题在这里,由于舵机转动是相对于MCU来说,太慢了,也许舵机从接到指令到完成需要20ms)
3 , 转动到指定角度后,舵机需要保持角度的信号,所以需要一个刷新指令的时间(这里对不对,我没有考证过,知道真相的请指正)这个刷新时间,可能最小是2.5ms,最大是20ms!(这个我是根据舵号控制信号猜想的,也不知道理论上对不对,但我让舵负载状态下做过试验,刷新时间从2.6-19都没有问题,即频率50-400HZ)
----------
所以楼主的程序中,你舵机即使采用1度递增方法,程序运行的速度仍然远远高于舵机运行的速度,不知道你的舵机是什么反应?
如果你在FOR循环里加入delay(5),并且将库文件中的刷新率由50HZ改为400HZ,程序应该是能运行的,舵机也会随动! |