📄 改的循迹.c
字号:
#include"reg52.h"
#define uchar unsigned char
#define uint unsigned int
sbit DZ=P1^0;
sbit DY=P1^1;
sbit D1=P1^2;
sbit D2=P1^3;
sbit EN1=P2^0;
sbit EN2=P2^1;
sbit IN1=P2^2;
sbit IN2=P2^3;
sbit IN3=P2^4;
sbit IN4=P2^5;
void zuo()
{
uchar p;
for(p=0;p<10000;p++)
{
EN2=1;
IN3=1;
IN4=0;
}
EN2=0;
}
void you()
{
uchar q;
for(q=0;q<10000;q++)
{
EN2=1;
IN3=0;
IN4=1;
}
EN2=0;
}
jianceh()
{
if(D1==0&&D2==0&&DZ==0&&DY==0)
return 1;
else
return 0;
}
jiancev()
{
if(D1==0&&D2==0&&DZ!=0&&DY!=0)
return 1;
else
return 0;
}
void qian()
{
while(jiancev())
{
EN1=1;
IN1=1;
IN2=0;
if(DZ==0&&DY==1)
you();
if(DZ==1&&DY==0)
zuo();
}
}
void hou()
{
while(1)
{
EN1=1;
IN1=0;
IN2=1;
if(DZ==0&&DY==1)
you();
if(DZ==1&&DY==0)
zuo();
}
}
void delay(z)
{
uchar i,j,k;
for(k=z;k>0;k--)
for(i=10;i>0;i--)
for(j=110;j>0;j--);
}
void init()
{
IN1=0;
IN2=0;
IN3=0;
IN4=0;
EN1=0;
EN2=0;
}
void main()
{ uchar t=0;
init();
while(1)
{
if(jianceh())
{ t++;
delay(1000);
if(t==1)
qian();
if(t==2)
{
IN1=0;
IN2=0;
delay(1000);
hou();
}
if(t==3)
{
IN1=0;
IN2=0;
delay(1000);
qian();
}
}
else if(jiancev())
qian();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -