找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 6490|回复: 11
打印 上一主题 下一主题
收起左侧

求助各位大佬,HC-05蓝牙模块可以连接上,但无法通信!

[复制链接]
跳转到指定楼层
楼主
3黑币
贴出我的蓝牙串口程序,HC-05蓝牙配置图以及蓝牙串口通信界面,我用的是晶振频率是12MHz的stc89C52RC开发板,led的IO口是P1端,用此程序可以通过串口通信点灯,但用蓝牙通信就是点不了灯(附:蓝牙可连接,就是接收不了数据),希望各位大佬能帮我找出原因,我搞了好几天快崩溃了,谢谢各位!!!!

最佳答案

查看完整内容

别着急,慢慢来, 如果我没猜错的话,你的系统应该是:电脑软件sscom---USB转TTL(串口)---HC-05主设备-----蓝牙无线连接-----HC-05从设备-----串口连接到stc89C52RC-----与单片机IO口连接的LED灯。 是这样吧? 首先,根据你的描述:(附:蓝牙可连接,就是接收不了数据),所以我建议你改成这样的系统测试串口接收:电脑软件sscom1---USB转TTL(串口)---HC-05主设备-----蓝牙无线连接-----HC-05从设备-----USB转串口接电脑----ss ...
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

来自 2#
ID:804115 发表于 2020-7-27 16:54 | 只看该作者
别着急,慢慢来,
如果我没猜错的话,你的系统应该是:电脑软件sscom---USB转TTL(串口)---HC-05主设备-----蓝牙无线连接-----HC-05从设备-----串口连接到stc89C52RC-----与单片机IO口连接的LED灯。
是这样吧?
首先,根据你的描述:(附:蓝牙可连接,就是接收不了数据),所以我建议你改成这样的系统测试串口接收:电脑软件sscom1---USB转TTL(串口)---HC-05主设备-----蓝牙无线连接-----HC-05从设备-----USB转串口接电脑----sscom2,如果sscom1发送数据,sscom2可以正常接收(按照hex显示),则说明这个系统正常,注意波特率要按照你AT指令配置的进行。如果不正常,你就得再找找蓝牙模块方面的问题了,HC-05的模块的配置应该比较简单,我看网上资料一大堆;如果你实在不知道怎么配置,我们可以再讨论。

其次,如果上面的系统正常,构建下面的系统:电脑sscom1---USB转TTL(串口)---串口连接到stc89C52RC-----与单片机IO口连接的LED灯。
然后通过电脑按照上个系统的sscom2一样的波特率发送收到的一样的数据给stc单片机,看看灯是不是亮灭变化,如果可以就没问题,如果不行,那么你就要看下单片机串口接收的驱动代码或者led灯的控制代码,看你上面的代码没找到问题。
一般如果上面两个系统正常的话,那么你的系统就没理由不正常。
如果是接起来不行的话,可能是:
1. 电平匹配问题,比如3.3V的TX电平发送给5V供电的RX会有电平不匹配的问题,可能收不到数据。
2. 波特率精度匹配太差,可以通过同时更换波特率试试,优先试试9600;
另外还有一些小细节:
例如,你判断的是0x01,那么你应该发送hex的01,而不是1,尽量严禁;若发送字符1,则接收要判断0x31等等;还有TX要接RX,反之亦然,但是有些模块是TX接TX,看标注的是对方还是自身,这个要弄清楚。
好了就说这么多,祝你好运!有问题再沟通。

评分

参与人数 1黑币 +30 收起 理由
admin + 30 回帖助人的奖励!

查看全部评分

回复

使用道具 举报

来自 3#
ID:705534 发表于 2020-7-28 11:34 | 只看该作者
蓝牙配置如下:
AT
AT+NAME=mc123
AT+PSWD=123456
AT+UART=2400,1,0
回复

使用道具 举报

来自 4#
ID:705534 发表于 2020-7-28 19:49 | 只看该作者
其实我后来才发现适合蓝牙串口通信的晶振频率是11.0592MHz,12MHz只是用来精确定时
回复

使用道具 举报

5#
ID:495676 发表于 2020-7-27 20:41 | 只看该作者
你有改过蓝牙的默认波特率吗   首先你得确定这个蓝牙模块的默认波特率是不是2400
回复

使用道具 举报

6#
ID:495676 发表于 2020-7-27 21:48 | 只看该作者
然后检查一下RXD和TXD有没有接错  单片机的TXD接蓝牙的RXD  蓝牙的TXD接单片机的RXD
回复

使用道具 举报

7#
ID:598470 发表于 2020-7-27 21:50 | 只看该作者
波特率115200试试
回复

使用道具 举报

8#
ID:705534 发表于 2020-7-27 21:58 | 只看该作者
囡嬅 发表于 2020-7-27 20:41
你有改过蓝牙的默认波特率吗   首先你得确定这个蓝牙模块的默认波特率是不是2400

默认9600,我改成了2400,照片上有
回复

使用道具 举报

9#
ID:705534 发表于 2020-7-27 21:59 | 只看该作者
囡嬅 发表于 2020-7-27 21:48
然后检查一下RXD和TXD有没有接错  单片机的TXD接蓝牙的RXD  蓝牙的TXD接单片机的RXD

没错,我都搞了好几天了
回复

使用道具 举报

10#
ID:705534 发表于 2020-7-28 11:30 | 只看该作者
1692483014 发表于 2020-7-27 22:31
别着急,慢慢来,
如果我没猜错的话,你的系统应该是:电脑软件sscom---USB转TTL(串口)---HC-05主设备---- ...

感谢解答,第一个测试确实不行,第一个互相都确实接收不到信息,第二个可以,但我感觉蓝牙配置没啥问题啊
回复

使用道具 举报

11#
ID:705534 发表于 2020-7-28 11:32 | 只看该作者
燊燊 发表于 2020-7-27 21:50
波特率115200试试

你是说蓝牙的波特率还是串口发送的波特率?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表