標(biāo)題:
51單片機(jī)nrf24l01藍(lán)牙制作避障智能車程序
[打印本頁]
作者:
wyyxz
時間:
2021-3-16 10:05
標(biāo)題:
51單片機(jī)nrf24l01藍(lán)牙制作避障智能車程序
51單片機(jī)制作智能車,通過手機(jī)app藍(lán)牙對nrf2401控制,實現(xiàn)小車運動
單片機(jī)源程序如下:
#include<reg52.h>
#define uint unsigned int
#define uchar unsigned char
unsigned int Chao_time=0;
uint S1;
uint S2;
uint S3;
sbit Trig1=P2^0;
sbit Echo1=P2^1;
sbit Trig2=P2^2;
sbit Echo2=P2^3;
sbit Trig3=P2^4;
sbit Echo3=P2^5;
sbit ENA=P1^2;
sbit ENB=P1^3;
sbit dian1=P0^0; //左輪前
sbit dian2=P0^1; //左輪后
sbit dian3=P0^2; //右輪前
sbit dian4=P0^3; //右輪后
void delay(uint z)
{
uint x,y;
for(x=55;x>0;x--)
for(y=z;y>0;y--);
}
void dianjigo() //小車前進(jìn)
{
dian1=1;
dian2=0;
dian3=1;
dian4=0;
}
void dianjiback() //小車后退
{
dian1=0;
dian2=1;
dian3=0;
dian4=1;
}
void dianjistop() //小車停
{
dian1=0;
dian2=0;
dian3=0;
dian4=0;
}
void dianjileft() //小車左
{
dian1=1;
dian2=0;
dian3=0;
dian4=1;
}
void dianjiright() //小車右
{
dian1=0;
dian2=1;
dian3=1;
dian4=0;
}
void delay_20us()
{
uchar bt;
for(bt=0;bt<100;bt++);
}
void Conut1()
{
while(!Echo1);
TR1=1;
while(Echo1);
TR1=0;
Chao_time=TH1*256+TL1;
TH1=0;
TL1=0;
S1=(Chao_time*1.7)/100; //測距離
}
void chaoshengbo1()
{
Trig1=1;
delay_20us();
Trig1=0;
Conut1();
}
void Conut2()
{
while(!Echo2);
TR1=1;
while(Echo2);
TR1=0;
Chao_time=TH1*256+TL1;
TH1=0;
TL1=0;
S2=(Chao_time*1.7)/100; //測距離
}
void chaoshengbo2()
{
Trig2=1;
delay_20us();
Trig2=0;
Conut2();
}
void Conut3()
{
while(!Echo3);
TR1=1;
while(Echo3);
TR1=0;
Chao_time=TH1*256+TL1;
TH1=0;
TL1=0;
S3=(Chao_time*1.7)/100; //測距離
}
void chaoshengbo3()
{
Trig3=1;
delay_20us();
Trig3=0;
Conut3();
}
void main()
{
TMOD=0x11;
TR0=0;
TR1=0;
ENA=1;
ENB=1;
dianjigo();
while(1)
{
chaoshengbo1();
delay(1);
chaoshengbo2();
delay(1);
chaoshengbo3();
delay(1);
if(S2>20)
{
if(S1>20)
{
if(S3>20)
dianjigo();
else
dianjiright();
}
else
dianjileft();
}
else if(S2>15&&S2<20)
{
if(S1>20)
{
if(S3>20)
dianjigo();
else
dianjiright();
}
else
dianjileft();
}
else if(S2<15)
dianjiback();
// if(S2<15)
// dianjiback();
// if(S2>15)
// dianjigo();
// if(S2>15&&S2<30&&S1<S3)
// dianjiright();
// if(S2>15&&S2<30&&S1>S3)
// dianjileft();
// delay(1);
}
}
復(fù)制代碼
以上代碼51hei提供下載:
物聯(lián)網(wǎng)智能車程序.zip
(84.09 KB, 下載次數(shù): 21)
2021-3-16 10:05 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
作者:
wqqfE
時間:
2021-4-11 19:29
你這是超聲波小車哦
歡迎光臨 (http://www.torrancerestoration.com/bbs/)
Powered by Discuz! X3.1