给大家分享一个基于51的红外避障程序
单片机源程序:
- //巍巍机器人小卖部提供//
- //欢迎您的使用//
- /**************************Timer0*********************************************/
- #include <REGX51.H>
- #include <intrins.h>
- #define RightSenser P1_4 //左巡线
- #define LeftSenser P1_5 //右巡线
- unsigned char a,b,k,j;de;
- void delay10ms() //延时函数
- {
- for(a=100;a>0;a--)
- for(b=225;b>0;b--);
- }
- //********************************************************
- //********************************************************
- main()
- {
- delay10ms();
- delay10ms();
- delay10ms();
- delay10ms();
- while(1)
- {
- P1_0 = 1 ;
- P1_1 = 1 ;
- P1_2 = 1 ;
- P1_3 = 1;
-
- if((!RightSenser) && LeftSenser) // 如果右边假,左边真
- {
-
- P1_0 = 0 ;
- P1_1 = 1 ;
- P1_2 = 1 ;
- P1_3 = 1;
- delay10ms();
- delay10ms();
- }
- if(RightSenser && (!LeftSenser)) // 如果左边假,右边真
- {
- P1_2 = 0 ;
- P1_3 = 1;
- P1_0 = 1 ;
- P1_1 = 1 ;
-
- delay10ms();
- delay10ms();
- }
- if((RightSenser) && (LeftSenser)) // 如果左边假,右边真
- {
- P1_0 = 0 ;
- P1_1 = 1 ;
- P1_2 = 0 ;
- P1_3 = 1;
-
-
- for (de=0; de<100; de++); // 延时
- }
- if((!RightSenser) && (!LeftSenser)) // 如果左边假,右边真
- {
- P1_0 = 0 ;
- P1_1 = 1 ;
- P1_2 = 1 ;
- P1_3 = 0;
-
-
-
- delay10ms();
- delay10ms();
- ……………………
- …………限于本文篇幅 余下代码请从51黑下载附件…………
复制代码
下载:
红外避障程序.zip
(52.45 KB, 下载次数: 148)
|