蓝牙进阶之路 (001)

摘要:
//获取模块蓝牙地址11AT+重置//模块重置端子:1AT+ORGL//默认状态恢复为2AT+NAME=“terminal”3AT+ROLE=1//查询-模块角色4AT+CLASS=0//设置设备类别5AT+IAC=9e8b3f//设备查询访问代码6AT+INQM=1,9,48//设置查询访问模式7AT+PSWD=123123//配对代码8AT+UART=9600,0//查询-串行端口参数9AT+BIND=//绑定蓝牙地址10AT+RESET//模块复位5模块指示灯说明:1.模块通电后,将KEY连接到高电平。此时,指示灯缓慢闪烁,模块进入At状态。此时,波特率固定为38400。

USB转串口的有线转接方式,实在太难看了,尤其是寻接头,那是相当的不方便。其它电器厂商都想把是接头做小,做精致,唯独串口接头还是那么庞大,感觉应该换一换了,都已经完全不符合这个时代的审美观了。

于是,某宝上买了两套HC-05蓝牙无线模块,HC-05是主从一体的蓝牙模块,所以比只能当从机的HC-6要贵一点。下面讲述HC-05配置过程。

这里写图片描述

1、引脚说明

1 1. RXD: 接收端
2 2. TXD: 发送端
3 3. AT: 设置工作模式
4     1) 工作模式: 自动连接(automatic connection),又称为透传模式() 又稱為透通模式(transparent communication)
5     2) AT指令设置模式: 命令回应(order-response),又称为AT模式(AT mode) 
6 4. VCC: 模块供电正极(5V)
7 5. GND: 模块供电负极
8 6. EN:使能端,需要进入AT模式时接3.3V。其实不接也没有关系
9 6. STATE:我也不知道有什么用,没有用到

2、接线方式 
1) 蓝牙<—->USB 
这里写图片描述 
2) 蓝牙<—->单片机 
这里写图片描述 
(注意TXD,RXD连接正确)

引脚EN,我发现接到3.3V与不接都一样,上电后也无法自动进入AT模式。 
3、进入AT模式 
HC-05与HC-06不同,HC-06没有连接上时,就是AT模式,而HC-05需要有个开关,注意到模块上的小黑点没有,按下它再上电就使HC-05进入AT模式了,严格的讲,它只是一个开的作用,无法退出AT模式。此时指示灯慢闪(1秒亮一次),模块进入AT状态。

4、基本配置 
模块默认波特率为9600、默认配对密码为1234、默认名称为HC-05, 
AT模式波特率固定38400,8位数据位、1位停止位、无奇偶校验的通信格式。

1 AT+NAME="XXX"           修改蓝牙模块名称为XXX
2 AT+ROLE=0               蓝牙模式为从模式
3 AT+CMODE=1              蓝牙连接模式为任意地址连接模式,也就是说该模块可以被任意蓝牙设备连接
4 AT+PSWD=1234            蓝牙配对密码为1234
5 AT+UART=9600,0,0        蓝牙通信串口波特率为9600,停止位1位,无校验位

更多配置请参考HC-05AT命令文档。

配对配置:

  服务:

 1 AT+ORGL                    //恢复默认状态
 2 AT+NAME="service"        //设置设备名称
 3 AT+ROLE=0                //查询—模块角色
 4 AT+CLASS=0                //设置设备类
 5 AT+IAC=9e8b3f            //设备查询访问码
 6 AT+INQM=1,9,48            //设置查询访问模式
 7 AT+PSWD=123123            //配对码
 8 AT+UART=9600,0,0        //查询—串口参数
 9 AT+CMODE=1                //连接模式
10 AT+ADDR?                //获取模块蓝牙地址
11 AT+RESET                //模块复位

  终端:

 1 AT+ORGL                    //恢复默认状态
 2 AT+NAME="terminal"
 3 AT+ROLE=1                //查询—模块角色
 4 AT+CLASS=0                //设置设备类
 5 AT+IAC=9e8b3f            //设备查询访问码
 6 AT+INQM=1,9,48            //设置查询访问模式
 7 AT+PSWD=123123            //配对码
 8 AT+UART=9600,0,0        //查询—串口参数
 9 AT+BIND=                //绑定蓝牙地址
10 AT+RESET                //模块复位

5、模块指示灯说明: 
1.将模块上电同时(或者之前),将KEY接高电平,此时指示灯慢闪(1秒亮一次),模块进入AT状态,此时波特率固定38400。 
2.将模块上电后,将KEY悬空或者接地,此时指示灯快闪(1秒2次),表示模块进入可配对状态。此时如果将KEY接高电平,模块也会进入AT状态。但是指示灯依然是快闪(1秒2次)。 
3.模块配对成功,此时STA双闪(一次闪2下,2秒闪一次)。

6、设置过程中遇到的两个问题 
正常情况下,按照上面的配置,基本上都能成功。但如果没有成功,要怎么自检。 
本人就遇到过来成功配对后无法通信的问题,结果是由于蓝牙模块设置的波特率与单机片烧写的波特率不一样所致。开始一直怀疑是蓝牙模块本身有问题。弄了一下午,测输出波形,更换连接串口,浪费了很多时间。 
自检方法也很简单,单片机给蓝牙模块供电,单片机端的蓝牙模块TX与RX直接相连,自发自收,电脑端能收到串口信号,则说明主从模块没有问题。 
遇到的另一个问题是用串口助手发送AT命令没有反应。我也不知道怎么原因,开始一直以为是自己操作或者数据格式的问题,后来去网上查,网上说不能用串口助手配置,换了个串口调试工具就可以了。

7、资料工具 
(BlueTooth.pdf)http://files.cnblogs.com/files/jikexianfeng/BlueTooth.pdf 
(HC05指令集)http://files.cnblogs.com/files/jikexianfeng/HC05%E6%8C%87%E4%BB%A4%E9%9B%86.pdf
(蓝牙测试软件.exe)http://files.cnblogs.com/files/jikexianfeng/%E8%93%9D%E7%89%99%E6%B5%8B%E8%AF%95%E8%BD%AF%E4%BB%B6.rar
(XCOM V2.0.exe)http://files.cnblogs.com/files/jikexianfeng/XCOMV2.0.rar

本文转载:http://blog.csdn.net/zx3517288/article/details/52291027

免责声明:文章转载自《蓝牙进阶之路 (001)》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇CentOS7.5 通过wget下载文件到指定目录spring secrity添加和去掉x-frame-options deny安全头下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

实现主机和虚拟机之间的虚拟串口通讯

一、工具 1、 win10为系统的主机 2、 openwrt为系统的虚拟机 3、 Oracle VM VirtualBox 5.0.12 4、 VSPD虚拟串口工具 二、步骤 1、 主机创建虚拟串口COM1、COM2 2、 virtual Box设置 选择自己编译生成的vmdk文件。 在openwrt中ttyS0对应的是COM1,而ttyS1对...

基于STM32之UART串口通信协议(一)详解

一、前言 1、简介   写的这篇博客,是为了简单讲解一下UART通信协议,以及UART能够实现的一些功能,还有有关使用STM32CubeMX来配置芯片的一些操作,在后面我会以我使用的STM32F429开发板来举例讲解(其他STM32系列芯片大多数都可以按照这些步骤来操作的),如有不足请多多指教。 2、UART简介   嵌入式开发中,UART串口通信协议是我...

蓝牙开发笔记(一)HC05的认识

蓝牙HC05的一些基本的介绍如下: 1、 采用CSR主流蓝牙芯片,蓝牙V2.0协议标准。 2、模块供电电压:3.3V~3.6V。 3、 默认参数:波特率 9600、配对码 1234、工作模式 从机。 4、 核心模块尺寸大小为:27mm x 13 mm x 2mm。 5、 工作电流:配对中:30~40mA 配对完毕未通信:2~8Ma 通信中:8mA 无休眠。...

蓝牙简介

1.蓝牙速率 V1.1   1MbpsV2.0   3MbpsV3.0   54MbpsV4.0   0.3Mbps 低功耗 2.目前主流版本是4.2 3.蓝牙5.0与蓝牙4.2的区别相较于目前的普遍使用的蓝牙4.2,蓝牙5.0的主要优势在于传输速度更快、传输距离更远以及使用功耗更低。(1)更快的传输速度蓝牙5.0的传输速度上限为2Mbps,是之前4.2L...

Android 蓝牙开发(3)——蓝牙的详细介绍

前面的两篇文章,主要是在 Android 官网关于蓝牙介绍的基础上加上自己的理解完成的。主要针对的是 Android 开发中的一些 API 的使用。 第一篇文章 Android 蓝牙开发(1) 主要是介绍了普通的蓝牙在 Android 开发中的运用。 第二篇文章 Android 蓝牙开发(2) 主要是介绍了低功耗蓝牙的开发。 这篇文章主要介绍的是蓝牙的历史...

单片机串口通讯RXD与TXD如何对接详解

http://blog.csdn.net/sdwuyulunbi/article/details/6632382 相信很多人都对单片机与计算机或者芯片通信时,RXD与TXD如何连接比较困惑。因为在一些电路图中,有的是直连接法,有的是交叉接法,让人有点摸不着头脑。 首先需要明白两个概念,就是DTE和DCE。DTE是指数据终端设备,典型的DTE就是计算机和单片...