左岸右手边887 发表于 2012-5-2 07:11:12

51控制舵机的问题

51单片机能通过IO口直接控制3个舵机吗?求分时启动各路PWM的c程序?

tiancaigao7 发表于 2012-5-2 07:57:50

驱动能力不足,需要加驱动桥。

自负天使 发表于 2012-5-2 12:44:49

我以前用的是模拟pwm的,有用延时函数的也有用定时器的,不知道你的想法是怎么样的

左岸右手边887 发表于 2012-5-2 12:51:51

自负天使 发表于 2012-5-2 12:44 static/image/common/back.gif
我以前用的是模拟pwm的,有用延时函数的也有用定时器的,不知道你的想法是怎么样的 ...

用定时器0产生中断,模拟PWM,我要控制3个舵机,要输出不同相位的PWM,周期一样的

liliuqun 发表于 2012-5-2 13:07:35

这个好实现吧,

raxb 发表于 2012-5-2 15:11:07

这个容易吧!

BXAK 发表于 2012-5-2 15:54:24

4路都没问题,论坛就有,自己去搜索

NJ8888 发表于 2012-5-2 16:27:11

一个555+三个电位器为核心就行,8路用8个电位器

自负天使 发表于 2012-5-8 22:50:31

我给你一个我以前写过的程序看看吧,

#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:}

zhanyicai000 发表于 2012-8-13 12:43:12


学习了学习
页: [1]
查看完整版本: 51控制舵机的问题