|
|
在運用藍牙時,雖然程序可以使用,并且在PC上操作可以。
但是在進行手機和單片機連接時發現在PC上未發現,也可以說省略的問題:
在PC上程序可以實現的原因是我一直在從機上操作,但是用手機傳輸,雖然可以收到,但是不執行,和期望中的遠程輸送不合。
希望能給予幫助。
ps:我不知道是什么地方錯了,是程序還是手機或者單片機或者當初設置的錯誤。我先把程序發出來。感覺程序沒錯。
# include <reg52.h>
# define uint unsigned int
# define uchar unsigned char
uchar buf;
sbit led1 = P0^0;
sbit led2 = P1^1;
sbit led3 = P1^2;
uchar LedOn;
void delayms(uint xms)
{
uint i, j;
for(i = xms; i > 0; i--)
for(j = 110; j > 0; j--);
}
void UARTinit()
{
TMOD = 0x20;
SCON = 0x50;
TH1 = 0xfd;
TL1 = 0xfd;
PCON = 0x00;
EA = 1;
ES = 1;
TR1 = 1;
}
void send(uchar c)
{
SBUF = c;
while(!TI);
TI = 0;
}
void main()
{
led1 = 1;
led2 = 1;
led3 = 1;
UARTinit();
while(1)
{
switch (LedOn)
{
case '0':
led1 = 0;
led3 = 0;
break;
case '1':
led1 = !led1;
break;
case '2':
led2 = !led2;
break;
case '3':
led3 = !led3;
break;
default:
led1 = 0;
led2 = 0;
led3 = 0;
break;
}
delayms(500);
}
}
void UARTinterrupt() interrupt 4
{
if(RI == 1)
{
RI = 0;
buf = SBUF;
LedOn = buf;
send(buf);
}
}
|
|