rds3115数字舵机,用51单片机控制,怎么不转?
时间:10-02
整理:3721RD
点击:
程序如下:
#include <reg51.h> //PWM信号产生测试V1.0
sbit PWM=P2^0; //舵机信号端连接P2^0
unsigned int num; //保证一个信号周期为20ms
main()
{ num=0;
TMOD|=0x01;
TH0=0xfe; //计时器填装初值,实现0.5ms产生一次中断
TL0=0x34;
EA=1;
ET0=1;
TR0=1;
while(1)
{
;
}
}
void timer0(void) interrupt 1 //计时器中断服务程序
{
TH0=0xfe; //重新装填初值
TL0=0x34;
if(num<=1) //产生PWM信号波
PWM=1;
else
PWM=0;
if(num==40) //保证一个周期为20ms
num=0;
num++; // num 自增
}
舵机
#include <reg51.h> //PWM信号产生测试V1.0
sbit PWM=P2^0; //舵机信号端连接P2^0
unsigned int num; //保证一个信号周期为20ms
main()
{ num=0;
TMOD|=0x01;
TH0=0xfe; //计时器填装初值,实现0.5ms产生一次中断
TL0=0x34;
EA=1;
ET0=1;
TR0=1;
while(1)
{
;
}
}
void timer0(void) interrupt 1 //计时器中断服务程序
{
TH0=0xfe; //重新装填初值
TL0=0x34;
if(num<=1) //产生PWM信号波
PWM=1;
else
PWM=0;
if(num==40) //保证一个周期为20ms
num=0;
num++; // num 自增
}
舵机
