📄 text1.c
字号:
#include<reg51.h>
#include<intrins.h>
#define uchar unsigned char
#define uint unsigned int
#define ulong unsigned long
void delay(uchar);
void time0(uchar,uchar);
void ks();
void panduan();
void lmotor(uchar,uchar);
void rmotor(uchar,uchar);
sbit IN1=P2^0;
sbit IN2=P2^1;
sbit IN3=P2^2;
sbit IN4=P2^3;
sbit a=P1^0;
sbit b=P1^1;
sbit c=P1^2;
sbit d=P1^3;
sbit e=P1^4;
uchar m,n,i,j,aa,bb,k;
void delay(uchar speed)
{ for(i=speed;i>0;i--) _nop_();
}
void lmotor(uchar m,uchar n)
{IN1=1;IN2=0;delay(m);
IN1=0;IN2=0;delay(n);
}
void rmotor(uchar m,uchar n)
{IN3=1;IN4=0;delay(m);
IN3=0;IN4=0;delay(n);
}
/*void time0(uchar m,uchar n)
{ TMOD=0x01;
TH0=50000/256;
TL0=50000%256;
aa=m;bb=n;
EA=1;ET0=1;TR0=1;
}
void time00() interrupt 1
{ j++;k++;
TH0=50000/256;
TL0=50000%256;
}*/
void main()
{
while(1){ panduan();}
}
void panduan()
{ if(a==1&&b==1&&c==0&&d==1&&e==1)//前进
do{
lmotor(90,10);
rmotor(90,10);
}
while(a==1&&b==1&&c==0&&d==1&&e==1);
if(a==1&&b==1&&c==1&&d==0&&e==1)//偏左
do{
lmotor(20,10);
rmotor(80,10);
}
while(a==1&&b==1&&c==1&&d==0&&e==1);
if(a==1&&b==0&&c==1&&d==1&&e==1)//偏右
do{
lmotor(80,10);
rmotor(20,10);
}
while(a==1&&b==0&&c==1&&d==1&&e==1);
if(a==0&&b==1&&c==1&&d==1&&e==1)//严重偏右
do{
lmotor(90,10);
rmotor(10,10);
}
while(a==0&&b==1&&c==1&&d==1&&e==1);
if(a==1&&b==1&&c==1&&d==1&&e==0)//严重偏左
do{
lmotor(10,10);
rmotor(90,10);
}
while(a==1&&b==1&&c==1&&d==1&&e==0);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -