arduino 输出PWM信号抖动

2025-04-05 05:40:30
推荐回答(1个)
回答1:

在Arduino中,servo是一个库,可以简单的操作舵机。但从servo库的底层代码上来看,它使用了定时器中断,如果你调用了servo库,同时还使用串口通信的功能,那么,恭喜你,对于部分Arduino的板卡来说,一定会抖动。原因很简单,因为串口通信和servo都要使用定时器,所以就不正常了。
就像我一直在教学Arduino的过程中所强调的那样,库是别人写好你来用的,核心的东西你不知道,没准什么时候就有问题就冲突了,要想学好学精,还是要自己通过代码来实现各种功能,不仅性能好,而且还锻炼了你自己的综合能力。
提示你一点关于舵机的知识。驱动舵机,需要产生PWM信号,普通模拟舵机能识别50HZ的PWM信号,其中每个信号周期内,高电平的持续时间代表舵机的驱动角度。500uS为最小舵量,1500为中立舵量,2500为最大舵量,你可以使用micros()这个函数来精确控制高电平的持续时间。