蓝牙小车的通讯

2019-07-15 09:58发布

    最近在做智能小车的。MCU是STC89C52,蓝牙模块是HC-05。蓝牙RXD接单片机TXD,
TXD接单片机RXD。仔细看了看。接线是没有问题的。还用串口调试助手调试了,波特率是9600,停止位1位,无校验位。

以下是代码

#include <reg52.h>
uchar a=0;
void main()
{     
TMOD = 0x20;
PCON = 0x00;
SCON = 0x50;
TH1 = 0xFd; //设置波特率 9600
TL1 = 0xFd;
TR1 = 1; //启动定时器1
ES = 1; //开串口中断
EA = 1; //开总中断

while(1)
{
     if(a==0x32)
       {
      P1=0x01;
       }
}

}
void ser() interrupt 4
{
  if(RI)
  {
   RI=0; //接收收据,标志位清 0
   a=SBUF; //读取串口接收到的收据,赋给变量 a
  }
}

。。我用逻辑分析仪接单片机RXD上,有数据写入。就是P1的IO口没有任何反应。
发此贴希望论坛的各位朋友能够帮忙解答,不胜感激。

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
17条回答
lchyx.
1楼-- · 2019-07-17 09:05
 精彩回答 2  元偷偷看……
idianze
2楼-- · 2019-07-17 13:50
好帖子顶一顶!感谢楼主
lchyx.
3楼-- · 2019-07-17 14:55
dingqibo123 发表于 2017-8-6 15:59
同求,应该是蓝牙模块的问题。蓝牙模式不对吧,蓝牙调试了三天,和你一模一样。

你的能用了吗,我这段时间有事,昨晚调试了下。单片机能正常下载程序,也能和电脑互相发送、接收数据。蓝牙模块用USB-TTL下载器也能和电脑互相接收、发送数据。但是蓝牙和单片机在一起工作就不行。我用单片机和蓝牙通信,单片机RXD接收到数据,然后再从单片机的TXD发送数据。用逻辑分析仪监测,发现没有数据传输。
lchyx.
4楼-- · 2019-07-17 18:28
我的问题解决了。比较难以理解的是,我换台电脑重新写代码烧进去就可以控制。然后把代码复制到我电脑上烧进去就不行。奇怪
|舍&得|
5楼-- · 2019-07-17 21:07
晶振的关系吧,之前也碰过这种问题,用11.0592M的晶振跑9600波特率的串口程序没问题,换了12M的晶振串口就出现了这种问题,要么换一下晶振,要么定时器的工作方式换一下

一周热门 更多>