#include <reg52.h>
#define uchar unsigned char
#define uint unsigned int
sbit P10=P2^0;
sbit P11=P2^1;
sbit P12=P2^2;
sbit P13=P2^3;
void DelayMs(int x) //延时
{ uchar t;
while(x--)for(t=0;t<120;t++);
}
void main()
{ EA=1; //开中断
IT0=1;
IT1=1;
EX0=1;
EX1=1;
while(1)
{P10=1;P11=0;P12=1;P13=0;}
}
void init0 () interrupt 0
{ P10=1;P11=1;P12=1;P13=1;DelayMs(800); //右转
P10=1;P11=0;P12=0;P13=1;DelayMs(200);
P10=1;P11=1;P12=1;P13=1;DelayMs(400);
}
void init1 () interrupt 2 //左转
{ P10=1;P11=1;P12=1;P13=1;DelayMs(800);
P10=0;P11=1;P12=1;P13=0;DelayMs(200);
P10=1;P11=1;P12=1;P13=1;DelayMs(400);
}
这是一个两路红外避障程序,来到21ic好久了,一直在学习,没贡献过,终于自己搞了一个小程序,发上来,有好意见的一定要不吝赐教哈,我也是新手,正在向你们老鸟们学习ing。。。。 |