180度舵机是一特殊的机器人专用舵机。你所说的0-180度,在专业玩家里不这样说的,而是说成±90度。即顺时针90度,逆时针90度。
你可以自己写一个的。这种舵机比较特殊,但是只要满足一下PWM就可以实现了:
1 周期T=20ms(即50HZ),占空比500us-2500us。
2 500us舵机逆时针转90度,2500us舵机顺时针转90读。 (其中0度是1500us)
3 即: TL+TH=20ms 改变TH的值,舵机角度随之改变。参数参照以上12点。
TL TH
_____ ____
_________| |_________| | _________|
4 电路原理很简单,接好电源,地,信号线。
信号线接到单片机或者其他能输出PWM的控制脚。
用带PWM输出的单片机做吧!51单片机只能通过定时器来实现。
想12C2052AD这些单片机就带PWM输出的。他的PWM输出程序:
#include<reg52h>
sfr CCON =0xD8;
sfr CMOD=0xD9;
sfr CL=0xE9;
sfr CH =0xF9;
sfr CCAP0L=0xEA;
sfr CCAP0H=0xFA;
sfr CCAPM0=0xDA;
sfr CCAPM1=0xDB;
sbit CR =0xDE
void main(void)
{
CMOD = 0X02;//
CL =0X00;//
CH =0X00;//
CCAP0L = 0xc0;//设置初值
CCAP0H= 0xc0;//输出占空比为25%的波形
CCAPM0 = 0x42;//PWM的输出模式
CR =1 ;启动PCA定时器
while(1){};
}
上面是输出PWM的程序,你把PWM输出端接到你的舵机控制端,再启动PCA就OK了,改变CCAP0的值就可以改变占空比
以上就是关于如何在51中写程序使舵机从90转到180度全部的内容,包括:如何在51中写程序使舵机从90转到180度、求高人写一个用c语言写一个51单片机输出PWM控制舵机的程序,舵机参数可以自己定。最好加注释。高分谢谢啦、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)