单片机控制舵机打转转
小白求助舵机一直转#include <reg52.h>
#define uchar unsigned char
#define uint unsigned int
uint x,y,z,m;
void delay1(uint x) //0.1ms
{
unsigned char a,b;
while(x--)
for(b=1;b>0;b--)
for(a=43;a>0;a--);
}
void main(void)
{
P0 = 0xff;
delay1(x);
P0 = 0x00;
delay1(200-x);
y++;
if(y>=50)
{
y=0;
x++;
if(x>=24)x=6;
}
}
把x换固定值,舵机能定位,写的程序18秒跑一转,但为什么舵机一直转的很快 {:sad:}也是新手,一眼看去,程序中没有while(1)的循环,没有while(1),系统就会跑飞复位,意味着y可能始终加不到50,根本进不了你的if里面
页:
[1]