前提:接收单片机放在开发板上,开发板与电脑相连,接收单片机同时连接一个蓝牙模块。发送单片机通过蓝牙模块向接收单片机发数据,控制LED灯亮灭。
问题:发送单片机发送的数据在电脑上通过串口助手可以看到,接收单片机能收到,但是LED灯无变化。通过电脑向接收单片机发数据,接收单片机可以收到,电脑上有显示,LED灯有变化。怎么破?我就是想直接用单片机控制啊。接收单片机程序如下:
#include
unsigned char a;
void choose()
{
switch(a)
{
case 1:P2=0x01;break;
case 2:P2=0x02;break;
case 3:P2=0x03;break;
case 4:P2=0x04;break;
case 5:P2=0x05;break;
case 6:P2=0x06;break;
}
}
void main()
{
TMOD=0x20;//T1设置为工作方式2
TH1=0xfd;//波特率为9600
TL1=0xfd;
SCON=0x50;//串口工作方式1
TR1=1;
REN=1;
while(1)
{
if(RI)
{
RI=0;
a=SBUF;
choose();
//P2=a;
SBUF=a;
}
if(TI)
TI=0;
}
}
怎么破?求大神。
你确认能收到么?仔细对比PC串口过来的信号和蓝牙输出的信号有何差别以及是否接入了MCU。
上传了一些书籍资料,也许有你想要的:https://download.eeworld.com.cn/user/chunyang
蓝牙模块就是一个串口,如果串口可以,那手机应该是可以的。你自己可以看下,应该就比较清楚了。
专业电子方案/zigbee方案设计,毕业设计。QQ:1397905781