我目前正在为学校的一个项目工作,在这个项目中,我正在建造一辆小手推车,它将扫描一个区域,寻找最强烈的光源,并向它驶去。我已经编写了一个SG90 180度伺服程序来扫描180度区域,使用我扫描的信息来做出决定,然后将车转向红绿灯。我遇到的问题是,我正在使用TIMER/COUNTER1创建一个PWM波来驱动电机。我的问题是,我正在使用FS90R伺服来驱动手推车,它也在脉宽调制波上运行。我的定时器计数器已经在运行180度伺服,当我去驱动连续的伺服时,SG90转动,当我扫描时,我的一个轮子转动。这显然不是购物车应该运行的方式。谁有办法创建一个中断驱动的PWM波,而不是直接使用TIMER/COUNTER1的PWM功能,这样我就可以分别控制所有3个伺服系统了?
发布于 2017-04-01 21:06:21
Arduino上有6个PWM输出,每个定时器两个。如果你正在使用现有的库来驱动输出到伺服系统,这些库可能会使用定时器1。你必须深入到库代码中去修改这些库。
确保每个伺服都有单独的PWM输出。
https://stackoverflow.com/questions/43161866
复制相似问题