标题:
51单片机蓝牙控制小车程序
[打印本页]
作者:
xiaoxx666
时间:
2018-5-23 19:40
标题:
51单片机蓝牙控制小车程序
这个可以用蓝牙控制小车前进后退左右转
#include <reg52.h>
sbit INT=P2^0;
sbit INT2=P2^1;
sbit INT3=P2^2;
sbit INT4=P2^3;
sbit ENA=P1^1;
sbit ENB=P1^2;
int buf,t;
int zuo,you,zuo1=5,you1=5;
int zuo1,you1;
void delay(int z)
{
int x,y;
for (x=z;y>0;y--)
for (y=114;z>0;z--);
}
void CarGo()
{
zuo=zuo1;
you=you1;
ENA=1;
ENB=1;
INT= 1;
INT2=0;
INT3=1;
INT4=0;
}
void CarBack()
{
zuo=zuo1;
you=you1;
ENA=1;
ENB=1;
INT= 0;
INT2=1;
INT3=0;
INT4=1;
}
void CarTurnLeft()
{
zuo=5;
you=5;
INT=0;
INT2=1;
INT3=1;
INT4=0;
}
void CarTurnRight()
{
zuo=5;
you=5;
INT= 1;
INT2=0;
INT3=0;
INT4=1;
}
void kuaiLeft()
{
zuo=10;
you=10;
INT=0;
INT2=1;
INT3=1;
INT4=0;
}
void kuaiRight()
{
zuo=10;
you=10;
INT= 1;
INT2=0;
INT3=0;
INT4=1;
}
void CarStop()
{
zuo=0;
you=0;
}
void main()
{
SCON=0x50; //设定串口工作方式
PCON=0x00; //波特率不倍增
EA=1;
TMOD|=0x02;
TR0=1;
ET0=1;
TH0=(65535-100)/256;
TL0=(65535-100)%256;
TMOD|=0x20;
ES=1;
TR1=1;
TH1=0xfd;
TL1=0xfd;
while(1);
}
void in() interrupt 1
{
TH0=(65535-100)/256;
TL0=(65535-100)%256;
t++;
if(t==10) t=0;
if(t<zuo)
{
ENB=1;
}
else
{
ENB=0;
}
if(t<you)
{
ENA=1;
}
else
{
ENA=0;
}
}
void serial() interrupt 4
{
TL1=0xfd;
TH1=0xfd; //波特率9600
ES = 0; //关闭串行中断
RI = 0; //清除串行接受标志位
buf = SBUF; //从串口缓冲区取得数据
switch(buf)
{
case 0x00 : CarGo();break;
case 0x01 : CarBack();break;
case 0x02 : CarStop();break;
case 0x03 : CarTurnLeft();break;
case 0x04 : CarTurnRight();break;
case 0x05 : zuo1--,you1--;break;
case 0x06 : zuo1++,you1++;break;
case 0x07 : kuaiLeft();break;
case 0x08 : kuaiRight();break;
}
ES = 1; //允许串口中断
}
蓝牙车.zip
2018-5-23 19:39 上传
点击文件名下载附件
下载积分: 黑币 -5
966 Bytes, 下载次数: 39, 下载积分: 黑币 -5
源代码
作者:
Clouds0288
时间:
2018-12-16 12:46
谢谢楼主!
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1