|
- #include<reg51.h>
- #define uint unsigned int
- #define uchar unsigned char
- sbit E1=P2^0; //???峬??????????
- sbit E2=P2^1;
- sbit E3=P2^2;
- sbit E4=P2^3;
- sbit E5=P2^4;
- sbit mz=P1^5; //??????Mz?????????
- sbit IN1=P1^6;
- sbit IN2=P1^7;
- sbit my=P1^2; //??????My?????????
- sbit IN3=P1^3;
- sbit IN4=P1^4;
- void delayms(uint); //???????????
- main()
- {
- uint i=0; //????
- mz=1;
- my=1;
- while(1) //???????
- {
- if(E2==1&&E3==1&&E4==1) //???2??3??4????????
- {
- for(i=0;i<5;i++) //???
- {
- mz=1;
- IN1=1;
- IN2=0;
- my=1;
- IN3=1;
- IN4=0;
- delayms(100);
- }
- }
- if(E1==1&&E2==1&&E3==1&&E4==1&&E5==1) //???1??2??3??4??5????????
- {
- for(i=0;i<5;i++) //???
- {
- mz=1;
- IN1=1;
- IN2=0;
- my=1;
- IN3=1;
- IN4=0;
- delayms(100);
- }
- }
-
-
- if(E2==1) //?????2??????
- {
- for(i=0;i<5;i++)
- {
- mz=1;
- IN1=1;
- IN2=0;
- my=1;
- IN3=1;
- IN4=0;
- delayms(100);
- }
- }
- if(E3==1) //?????3??????
- {
- for(i=0;i<5;i++)
- {
- mz=1;
- IN1=1;
- IN2=0;
- my=1;
- IN3=1;
- IN4=0;
- delayms(100);
- }
- }
- if(E4==1) //?????4??????
- {
- for(i=0;i<5;i++)
- {
- mz=1;
- IN1=1;
- IN2=0;
- my=1;
- IN3=1;
- IN4=0;
- delayms(100);
- }
- }
-
- if(E2==1&&E3==1) //?????2??3??????
- {
- for(i=0;i<5;i++)
- {
- mz=1;
- IN1=1;
- IN2=0;
- my=1;
- IN3=1;
- IN4=0;
- delayms(100);
- }
- }
-
- if(E2==1&&E4==1) //?????2??4??????
- {
- for(i=0;i<5;i++)
- {
- mz=1;
- IN1=1;
- IN2=0;
- my=1;
- IN3=1;
- IN4=0;
- delayms(100);
- }
- }
-
- if(E3==1&&E4==1) //?????3??4??????
- {
- for(i=0;i<5;i++)
- {
- mz=1;
- IN1=1;
- IN2=0;
- my=1;
- IN3=1;
- IN4=0;
- delayms(100);
- }
- }
-
- if(E1==1) //?????1??????
- {
- for(i=0;i<5;i++)
- {
-
- mz=0; //???
- my=1;
- IN3=1;
- IN4=0;
- delayms(100);
-
- }
- }
- if(E1==1&&E2==1) //?????1,2??????
- {
- for(i=0;i<5;i++)
- {
-
- mz=0; //???
- my=1;
- IN3=1;
- IN4=0;
- delayms(100);
- }
-
- }
- if(E1==1&&E2==1&&E3==1) //?????1,2,3??????
- {
- for(i=0;i<5;i++)
- {
-
- mz=0; //???
- my=1;
- IN3=1;
- IN4=0;
- delayms(100);
- }
-
- }
- if(E1==1&&E2==1&&E3==1&&E4==1) //?????1,2,3,4??????
- {
- for(i=0;i<5;i++)
- {
-
- mz=0; //???
- my=1;
- IN3=1;
- IN4=0;
- delayms(100);
- }
-
- }
-
- if(E5==1) // ?????5??????
- {
- for(i=0;i<5;i++)
- {
-
- mz=1; //???
- IN1=1;
- IN2=0;
- my=0;
- delayms(100);
- }
-
- }
-
- if(E4==1&&E5==1) //?????4,5??????
- {
- for(i=0;i<5;i++)
- {
-
- mz=1; //???
- IN1=1;
- IN2=0;
- my=0;
- delayms(100);
- }
- }
- if(E3==1&&E4==1&&E5==1) //?????3,4,5??????
- {
- for(i=0;i<5;i++)
- {
-
- mz=1; //???
- IN1=1;
- IN2=0;
- my=0;
- delayms(100);
- }
- }
- if(E2=1&&E3==1&&E4==1&&E5==1) //?????2,3,4,5??????
- {
- for(i=0;i<5;i++)
- {
-
- mz=1; //???
- IN1=1;
- IN2=0;
- my=0;
- delayms(100);
- }
- }
- if(E1==0&&E2==0&&E3==0&&E4==0&&E5==0) //??
- {
- mz=0;
- my=0;
- }
- }
- }
- void delayms(uint xms)
- {
- uint i,j;
- for(i=xms;i>0;i--)
- for(j=110;j>0;j--);
- }
復(fù)制代碼 手里拿一個(gè)超聲波發(fā)射器,有些不靈敏,有時(shí)候小車左轉(zhuǎn)時(shí),右輪應(yīng)該正轉(zhuǎn)嘛,然后左輪也轉(zhuǎn)一圈,不知道怎么回事
|
|