标题:
蓝牙智能小车单片机程序 自己做的
[打印本页]
作者:
我一岁
时间:
2017-7-27 10:12
标题:
蓝牙智能小车单片机程序 自己做的
蓝牙智能小车希望能够帮助到大家 谢谢
0.png
(41.28 KB, 下载次数: 95)
下载附件
2017-7-27 17:28 上传
单片机源程序如下:
#include<reg52.h>
#include<math.h>
#define uint unsigned int
#define uchar unsigned char
uint i,j;
uchar Buffer[9]={0};
sbit ENA1=P1^0;
sbit INA1=P1^1;
sbit INA2=P1^2;
sbit ENA2=P1^3;
sbit INA3=P1^4;
sbit INA4=P1^5;
sbit gd0=P2^3;//youqian
sbit gd1=P2^0;//zuoqian
sbit gd2=P2^1;//zuo
sbit gd3=P2^2;//you
sbit ENB1=P0^0;
sbit INB1=P0^1;
sbit INB2=P0^2;
sbit ENB2=P0^3;
sbit INB3=P0^4;
sbit INB4=P0^5;
void qianjin();
void tingche();
void youzhuan();
void zuozhuan();
void houtui();
void youqian();
void zuoqian();
void zuohou();
void youhou();
void zidong();
void delayms(uint i)
{
uint x,j;
for(j=0;j<i;j++)
for(x=0;x<=148;x++);
}
void Com_Int(void)interrupt 4
{
EA=0;
if(RI==1)
{
if(SBUF==65)
{
Buffer[0]=3;//A
}
if(SBUF==68)
{
Buffer[0]=4; //D
}
if(SBUF==83)
{
Buffer[0]=2; //S
}
if(SBUF==87)
{
Buffer[0]=1; //W
}
if(SBUF==69)
{
Buffer[0]=0; //E
}
if(SBUF==67) //C
{
Buffer[0]=5;
}
if(SBUF==66) //B
{
Buffer[0]=6;
}
if(SBUF==80) //P
{
Buffer[0]=7;
}
if(SBUF==81) //Q
{
Buffer[0]=8;
}
if(SBUF==90) //Z
{
Buffer[0]=9;
}
RI=0;
}
EA=1;
}
void Com_Init(void)
{
TMOD=0x20;
PCON=0x00;
SCON=0x50;
TH1=0xfd;
TL1=0xfd;
TR1=1;
ES=1;
EA=1;
}
void qianjin()
{
ENA1=1;INA1=1;INA2=0;
ENA2=1;INA3=1;INA4=0;
ENB2=1;INB3=1;INB4=0;
ENB1=1;INB1=1;INB2=0;
}
void houtui()
{
ENA1=1;INA1=0;INA2=1;
ENA2=1;INA3=0;INA4=1;
ENB2=1;INB3=0;INB4=1;
ENB1=1;INB1=0;INB2=1;
}
void zuozhuan()
{
ENA1=1;INA1=0;INA2=1;
ENA2=1;INA3=1;INA4=0;
ENB2=1;INB3=0;INB4=1;
ENB1=1;INB1=1;INB2=0;
}
void youzhuan()
{
ENA1=1;INA1=1;INA2=0;
ENA2=1;INA3=0;INA4=1;
ENB2=1;INB3=1;INB4=0;
ENB1=1;INB1=0;INB2=1;
}
void tingche()
{
ENA1=0; INA1=0;INA2=0;
ENA2=0; INA3=0;INA4=0;
ENB1=0; INB1=0;INB2=0;
ENB2=0; INB3=0;INB4=0;
}
void zuoqian()
{
ENA1=1;INA1=1;INA2=0;
ENA2=1;INA3=1;INA4=0;
ENB2=0;INB3=1;INB4=0;
ENB1=1;INB1=1;INB2=0;
}
void youqian()
{
ENB1=0;INB1=1;INB2=0;
ENA1=1;INA1=1;INA2=0;
ENA2=1;INA3=1;INA4=0;
ENB2=1;INB3=1;INB4=0;
}
void zuohou()
{
ENA1=1;INA1=0;INA2=1;
ENA2=0;INA3=0;INA4=1;
ENB2=1;INB3=0;INB4=1;
ENB1=1;INB1=0;INB2=1;
}
void youhou()
{
ENA1=0;INA1=0;INA2=1;
ENA2=1;INA3=0;INA4=1;
ENB2=1;INB3=0;INB4=1;
ENB1=1;INB1=0;INB2=1;
}
void zidong()
{
if(gd1==1&&gd0==1)//前面两个都没检测到直行
{
qianjin();
}
if(gd1==1&&gd0==0&&gd2==1&&gd3==1) //左右两方没有检测到 右前方检测到左转
{
zuozhuan();
}
if(gd1==0&&gd0==1&&gd2==1&&gd3==1) //左右两方没有检测到 左前方检测到 右转
{
youzhuan();
}
if(gd1==0&&gd0==0&&gd2==1&&gd3==1)//左右两方没有检测到 前方两个皆检测到 左转也可右转
{
zuozhuan();
}
if(gd1==0&&gd0==0&&gd2==0&&gd3==0) //四个全检测到 停车
{
tingche();
}
if(gd1==0&&gd0==1&&gd2==0&&gd3==1) //左前方与左方向检测到 右转
{
youzhuan();
}
if(gd1==1&&gd0==0&&gd2==1&&gd3==0)//右前方与右方向 检测到 左转
{
zuozhuan();
}
if(gd1==1&&gd0==1&&gd2==0&&gd3==1)
{
youzhuan();
}
if(gd1==1&&gd2==1&&gd0==1&&gd3==0)
{
zuozhuan();
}
if(gd0==0&&gd1==0&&gd2==0&&gd3==1)
{
youzhuan();
}
if(gd0==0&&gd1==0&&gd2==1&&gd3==0)
{
……………………
…………限于本文篇幅 余下代码请从51黑下载附件…………
复制代码
所有资料51hei提供下载:
蓝牙车.zip
(36.65 KB, 下载次数: 19)
2017-7-27 10:11 上传
点击文件名下载附件
下载积分: 黑币 -5
作者:
huangjiekaiming
时间:
2017-8-7 04:45
你这个是四驱吗?
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1