
我写的小车的51单片机代码,我想问下,为啥中间的延时时间很短单片机启动不了??
voidstraight(){EN1=1;EN2=1;IN1=0;IN2=1;IN3=0;IN4=1;}voidstop(){EN1=0;EN2=0;}voidmain(...
void straight()
{EN1=1;
EN2=1;
IN1=0;
IN2=1;
IN3=0;
IN4=1;
}
void stop()
{EN1=0;
EN2=0;
}
void main()
{straight();
for(g=0;g<5000;g++);
stop();
/*if(rightled==0)
{left();
for(g=0;g<50000;g++);
}
if(leftled==0)
{right();
for(g=0;g<500000;g++);
} */ 展开
{EN1=1;
EN2=1;
IN1=0;
IN2=1;
IN3=0;
IN4=1;
}
void stop()
{EN1=0;
EN2=0;
}
void main()
{straight();
for(g=0;g<5000;g++);
stop();
/*if(rightled==0)
{left();
for(g=0;g<50000;g++);
}
if(leftled==0)
{right();
for(g=0;g<500000;g++);
} */ 展开
3个回答
展开全部
单片机主程序中需要死循环,不然程序顺序执行完就停止了。
2015-01-21
展开全部
是这样的效果吧,还没等到电机转动起来,就停止了
追问
大哥,那是不是延时环节要放长点?
追答
void main(){
unsigned int g, k;
while(1){
straight();
for(k=0;k<50;k++)
for(g=0;g<5000;g++);
stop();
for(k=0;k<50;k++)
for(g=0;g<5000;g++);
}
}//这样的效果就是走一下、停一下
//请参考
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
需要给你完成一份 吗
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询