#include
#define uint unsigned int
#define uchar unsigned char
uint i;
uchar read[9];
sbit d16 = P1^6;
void delayms(unsigned char ms)
{ unsigned char i;
while(ms--)
{
for(i = 0; i < 120; i++);
}
}
void init()
{ PCON = 0x80; //1000 0000
SCON = 0x40; //0100 0000 串口通讯, 工作方式1
TMOD = 0x20;
TH1 = 0xff;
TL1 = 0xff;
}
void main()
{
init();
// 停止
d16 = 0;
//接受蓝牙模块返回的数据
REN= 1; //接受蓝牙模块返回的数据
//接受蓝牙模块返回的数据
read[0] = SBUF;
while(!RI);
RI = 0;
REN= 0;
if(read[0]==0x01) //进行判断,左转 ,
d16 = 1;
delayms(600);
d16 = 0;
delayms(600);
d16 = 1;
delayms(600);
d16 = 0;
delayms(600);
while(1)
{ REN=1;
//接受蓝牙模块返回的数据
read[0] = SBUF;
while( !RI);
RI = 0;
REN=0;
if(read[0]==0x00) //进行判断,前进,
P1=0x00;
if(read[0]==0x01) //进行判断,左转 ,
d16 = 1;
delayms(600);
d16 = 0;
delayms(600);
d16 = 1;
delayms(600);
d16 = 0;
delayms(600);
if(read[0]==0x02) //进行判断,右转,
d16 = 1;
delayms(600);
d16 = 0;
delayms(1800);
d16 = 1;
delayms(600);
d16 = 0;
delayms(1800);
if(read[0]==0x03) //进行判断,倒退,
d16 = 1;
delayms(1800);
d16 = 0;
delayms(1800);
d16 = 1;
delayms(1800);
d16 = 0;
delayms(1800);
if(read[0]==0x04) //进行判断,倒退,
d16 = 1;
delayms(600);
d16 = 0;
delayms(1800); //停止
d16 = 1;
delayms(600);
d16 = 0;
delayms(1800);
}
}