智能红外循迹小车程序

2019-07-31 09:32

#include

#define uint unsigned int #define uchar unsigned char #define ulong unsigned long

sbit you_2=P2^0; //红外探测端口定义 sbit you_1=P2^1; sbit zhong=P2^2; sbit zuo_1=P2^3; sbit zuo_2=P2^4; sbit CG=P0^1; sbit DC=P0^0;

uchar code L_F[8]= {0x10,0x30,0x20,0x60,0x40,0xc0,0x80,0x90}; //左电机正转 uchar code L_B[8]= {0x90,0x80,0xc0,0x40,0x60,0x20,0x30,0x10}; //左电机反转 uchar code R_F[8]= {0x01,0x03,0x02,0x06,0x04,0x0c,0x08,0x09}; //右电机正转 uchar code R_B[8]= {0x09,0x08,0x0c,0x04,0x06,0x02,0x03,0x01}; //右电机反转 uchar code B_F[8]= {0x91,0x83,0xc2,0x46,0x64,0x2c,0x38,0x19}; //左反右正 uchar code F_B[8]= {0x19,0x38,0x2c,0x64,0x46,0xc2,0x83,0x91}; //左正右反 uchar code duandian[8]={0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}; //断电 unsigned char code qianjin[]={0x11,0x33,0x22,0x66,0x44,0xcc,0x88,0x99}; //前进 unsigned char h[]={0x11,0x33,0x22,0x66,0x44,0xcc,0x88,0x99}; // uchar i;

void delay(uint z) { uint k ; uint j; for(k=0; k

void QJ(unsigned int i) { for(i=0;i<8;i++) { P1=h[i]=qianjin[i]; delay(13); } }

void DD() { P1=0x00;

delay(300); }

void wtj() { while(1) { if(P2==0xff) { DD(); delay(1000); break; } else { QJ(8);} } }

void YG_1() { unsigned char i; for(i=0;i<8;i++) { P1=h[i]=F_B[i]; delay(10); } }

void ZG_1()

{ unsigned char i; for(i=0;i<8;i++) {P1=h[i]=B_F[i]; delay(10); } }

void byg() {

while(1)

{ if(P2==0xfb) break; else if(P2==0xf9) break; else if(P2==0xfd) break;

/* if(P2^0==0) break; else if(P2^1==0) break;

/* else if(P2^2==0) break; else if(P2^3==0) break; else if(P2^4==0) break;*/ else YG_1(); } }

void bzg() {

while(1) { if(P2==0xfb) break; else if(P2==0xf3) break; else if(P2==0xf7) break;

/* if(P2^0==0) break; else if(P2^1==0) break; else if(P2^2==0) break; if(P2^3==0) break; else if(P2^4==0)

break;*/ else ZG_1(); } }

void YG_2() {

// unsigned char i; // unsigned char g;

if(P2==0xfa)

{//delay(4000); wtj(); byg();

/*for(g=0;g<40;g++) { for(i=0;i<8;i++) { P1=F_B[i]; delay(20); } } */ }

else if(P2==0xf2) { //delay(4000); wtj(); byg();

/*for(g=0;g<40;g++) { for(i=0;i<8;i++) { P1=F_B[i]; delay(20); } }*/ }

else if(P2==0xf6) { //delay(4000);

wtj(); byg();

/*for(g=0;g<40;g++) { for(i=0;i<8;i++) { P1=F_B[i]; delay(20); } }*/ } else if(P2==0xf4) { //delay(4000); wtj(); byg();

/*for(g=0;g<40;g++) { for(i=0;i<8;i++) { P1=F_B[i]; delay(20); } }*/ } else ; }

void ZG_2() {

//unsigned char i; //unsigned char g;

if(P2==0xeb)

{//delay(4000); wtj(); bzg();

/*for(g=0;g<40;g++) { for(i=0;i<8;i++) {P1=B_F[i]; delay(20); } }*/


智能红外循迹小车程序.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:微污染水源水净化技术

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: