亲们看下这个51的程序有问题吗,为什么不执行啊!
时间:10-02
整理:3721RD
点击:
#include<reg52.h>
#define uchar unsigned char
#define uint unsigned int
sbit int1=P1^2;
sbit int2=P1^3;//左轮输入
sbit int3=P1^4;
sbit int4=P1^5; //右轮输入
sbit ENA=P1^6;
sbit ENB=P1^7; //PMW输入
sbit X1=P2^4;
sbit X2=P2^6;
sbit X3=P2^7;
sbit X4=P3^6;
sbit X5=P2^5; //循迹红外3个输出
uchar zs1=0,zs2=0;
void zhizou()//直走
{
int1=1;
int2=0;
int3=1;
int4=0;
}
void zuozhuan() //左转1级
{
int1=0;
int2=0;
int3=1;
int4=0;
}
void zuozhuan2() //左转2级
{
int1=0;
int2=1;
int3=1;
int4=0;
}
void youzhuan()//右转1级
{
int1=1;
int2=0;
int3=0;
int4=0;
}
void youzhuan2()//右转2级
{
int1=1;
int2=0;
int3=0;
int4=1;
}
void yuandi()//原地寻找
{
int1=1;
int2=0;
int3=0;
int4=1;
}
void main()
{
ENA=1;
ENB=1;
zhizou();
if((X1==1)&&(X2==1)&&(X3==0)&&(X4==1)&&(X5==1))//直走
{
zhizou();
}
else
if((X1==1)&&(X2==0)&&(X3==1)&&(X4==1)&&(X5==1))
{
zuozhuan();
}
else
if((X1==1)&&(X2==1)&&(X3==1)&&(X4==0)&&(X5==1))
{
youzhuan();
}
else
if((X1==0)&&(X2==1)&&(X3==1)&&(X4==1)&&(X5==1))
{
zuozhuan()2;
}
else
if((X1==1)&&(X2==1)&&(X3==1)&&(X4==1)&&(X5==0))
{
youzhuan2();
}
}
#define uchar unsigned char
#define uint unsigned int
sbit int1=P1^2;
sbit int2=P1^3;//左轮输入
sbit int3=P1^4;
sbit int4=P1^5; //右轮输入
sbit ENA=P1^6;
sbit ENB=P1^7; //PMW输入
sbit X1=P2^4;
sbit X2=P2^6;
sbit X3=P2^7;
sbit X4=P3^6;
sbit X5=P2^5; //循迹红外3个输出
uchar zs1=0,zs2=0;
void zhizou()//直走
{
int1=1;
int2=0;
int3=1;
int4=0;
}
void zuozhuan() //左转1级
{
int1=0;
int2=0;
int3=1;
int4=0;
}
void zuozhuan2() //左转2级
{
int1=0;
int2=1;
int3=1;
int4=0;
}
void youzhuan()//右转1级
{
int1=1;
int2=0;
int3=0;
int4=0;
}
void youzhuan2()//右转2级
{
int1=1;
int2=0;
int3=0;
int4=1;
}
void yuandi()//原地寻找
{
int1=1;
int2=0;
int3=0;
int4=1;
}
void main()
{
ENA=1;
ENB=1;
zhizou();
if((X1==1)&&(X2==1)&&(X3==0)&&(X4==1)&&(X5==1))//直走
{
zhizou();
}
else
if((X1==1)&&(X2==0)&&(X3==1)&&(X4==1)&&(X5==1))
{
zuozhuan();
}
else
if((X1==1)&&(X2==1)&&(X3==1)&&(X4==0)&&(X5==1))
{
youzhuan();
}
else
if((X1==0)&&(X2==1)&&(X3==1)&&(X4==1)&&(X5==1))
{
zuozhuan()2;
}
else
if((X1==1)&&(X2==1)&&(X3==1)&&(X4==1)&&(X5==0))
{
youzhuan2();
}
}
没有主循环,程序直接跑飞
能帮忙说下怎么修改吗?
谢谢
在main函数里加个while循环