|
手機發(fā)送指令,SBUF可以接收到數(shù)據(jù),但就是小車沒反應(yīng),后來我不用藍牙,控制一個電機可以轉(zhuǎn)動,硬件連接應(yīng)該沒有問題,是咋回事?
#include <reg52.h>
sbit IN4 = P2^0;
sbit IN3 = P2^1;
sbit IN2 = P2^2;
sbit IN1 = P2^3;
unsigned char tempbuf;
void init()
{
IN4=0;
IN3=0;
IN1=0;
IN2=0;
}
void qian()
{
IN4=1;
IN3=0;
IN1=1;
IN2=0;
}
void hou()
{
IN1=0;
IN2=1;
IN3=1;
IN4=0;
}
void zuo()
{
IN4=1;
IN3=0;
IN1=0;
IN2=0;
}
void you()
{
IN1=1;
IN2=0;
IN3=0;
IN4=0;
}
void BlueteethInit()
{
SCON = 0x40;
TMOD = 0x20;
PCON = 0x00;
REN = 1;
TH1 = 0xfd; //設(shè)置波特率為9600
TL1 = 0xfd;
RI = 0;
EA = 1;
ES = 1;
TR1 = 1;
}
void main()
{
init();
BlueteethInit();
TI = 0;
while(1)
{
if(tempbuf==1)
{
qian();
}
if(tempbuf==2)
{
hou();
}
if(tempbuf==0x01)
{
zuo();
}
if(tempbuf==0x02)
{
you();
}
}
}
void Serial() interrupt 4
{
tempbuf=SBUF;
RI = 0; //讀標(biāo)志清零
SBUF = tempbuf; //將內(nèi)容返回到手機端,可在手機查看發(fā)送的內(nèi)容
while(!TI);
TI = 0; //寫標(biāo)志清零
}
|
|