|
兩輪加萬向輪小車 超聲波避障,紅外尋跡
單片機(jī)源程序如下:
- #include <reg52.h>
- #include<intrins.h>
- sbit INFRARED_RAY_RIGHT = P1^2;
- sbit INFRARED_RAY_LEFT = P1^3;
- sbit TRIG = P1^0;
- sbit ECHO = P1^1;
- unsigned char HighRH = 0;
- unsigned char HighRL = 0;
- unsigned char LowRH = 0;
- unsigned char LowRL = 0;
- void SupersonicWave();
- void main(){
- unsigned int Time;
- double Distance;
- TRIG = 0;
- ECHO = 0;
- EA = 1;
- TMOD = 0x11;
- P0=0x05;
- while( 1 ){
- // SupersonicWave();
- // Time = TH1 * 256 + TL1;
- // Distance = Time * 0.017; //????,???CM
- // if( Distance < 20 ){
- // P0 = 0x00;
- // }else{
- if( INFRARED_RAY_LEFT ==0&& INFRARED_RAY_RIGHT==1 ){ //???????,??????,????
- P0 = 0x01;
- }else if( INFRARED_RAY_LEFT==1 && INFRARED_RAY_RIGHT==0 ){ //???????,??????,????
- P0 = 0x04;
- }else{ //??????????????,?????
- P0 = 0x05;
- }
-
- // }
- }
- }
- void SupersonicWave(){
-
- TH1 = 0x00;
- TL1 = 0x00;
- ET1 = 0; //?????1??
- TRIG = 1;
- _nop_();_nop_();_nop_();_nop_();_nop_(); //??10us
- _nop_();_nop_();_nop_();_nop_();_nop_();
- TRIG = 0;
- while ( ECHO == 0 ); //??EHCO?????
- TR1 = 1; //??T1
- while ( ECHO == 1 );
- TR1 = 0; //??T1
- }
復(fù)制代碼
所有資料51hei提供下載:
紅外超聲波.zip
(100 KB, 下載次數(shù): 18)
2019-10-30 10:32 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
|
|