51控制舵机的问题
51单片机能通过IO口直接控制3个舵机吗?求分时启动各路PWM的c程序? 驱动能力不足,需要加驱动桥。 我以前用的是模拟pwm的,有用延时函数的也有用定时器的,不知道你的想法是怎么样的 自负天使 发表于 2012-5-2 12:44 static/image/common/back.gif我以前用的是模拟pwm的,有用延时函数的也有用定时器的,不知道你的想法是怎么样的 ...
用定时器0产生中断,模拟PWM,我要控制3个舵机,要输出不同相位的PWM,周期一样的 这个好实现吧, 这个容易吧! 4路都没问题,论坛就有,自己去搜索 一个555+三个电位器为核心就行,8路用8个电位器 我给你一个我以前写过的程序看看吧,
#include<reg52.h>
sbit zuo=P1^0;
sbit you=P1^1;
int k=0;
void main()
{
EA=1;
TMOD=0x01;
ET0=1;
TR0=1;
TF0=0;
TH0 = 0x0FB;
TL0 = 0x52;//1.3ms
while(1);
}
void Timer0() interrupt 1
{
if(k==0)
{zuo=0;you=1;
k++;
TH0 = 0x0FE;
TL0 = 0x8F;
}
else if(k==1)
{zuo=0;you=0;
k++;
TH0 = 0x0BE;
TL0 = 0x1F;
}
else if(k==2)
{zuo=1;you=1;
k=0;
TH0 = 0x0FB;
TL0 = 0x52;
}
}
这个是用来控制两路舵机的,如果要控制三路的话道理一样{:titter:}
学习了学习
页:
[1]