0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何通过USB到TTL转换器进入HC05/HC-06蓝牙模块的AT命令模式

454398 来源:网络整理 作者:佚名 2019-11-05 09:44 次阅读

步骤1:识别模块

您需要做的第一件事就是识别模块。它可以是HC05或HC06。除引脚排列外,两个模块的功能相同。 HC05也可以同时充当主设备和从设备,而HC06只能充当从设备。仅通过观察就很难区分两者。一种可能的方法是检查突破板的背面。如果背面写有“ JY-MCU”,则可能是HC06。矿山上写有“ ZS-040”,它是HC05。我测试的HC06模块后面有一个带有三个PCB足迹的蓝牙标志(请参阅图2)。要确认设备身份,可以打开模块电源,在PC或移动设备上搜索新设备,然后在找到的设备列表中查找HC05或HC06。

步骤2:引脚排列和进入AT模式

PINS:突破板上找到的引脚是

KEY:必须将该引脚拉高才能进入AT模式.VCC:指示范围是3.6到6伏。为了安全起见,应将其连接到3.3伏。

GND:接地。

RXD:串行输入引脚。

TXD串行输出引脚。

STATE:可能连接或未连接到任何引脚。据说输出蓝牙连接状态。

某些分线板有EN引脚甚至WAKE UP引脚而不是KEY引脚。它们似乎都未连接到模块的任何引脚。但这没关系,因为我们还是不需要它们。

确定模块后,现在该进入AT模式了。

对于HC05:蓝牙模块的Rx引脚到USB到TTL转换器的Tx引脚,以及蓝牙的Tx引脚到转换器的Rx引脚。也连接他们的地面,但还不连接Vcc。首先,您必须将Vcc与钥匙引脚短路。通过面包板或其他任何方式将关键引脚和Vcc连接在一起。连接所有其他引脚后,将bt模块的Vcc连接到USB至TTL转换器的Vcc。现在,模块上的指示灯将以2秒的间隔闪烁。这意味着它已进入AT模式。如果指示灯闪烁更快,则说明未进入AT模式。断开Vcc,检查电路,然后重试。如果不起作用,则可能是模块的KEY引脚没有真正焊接到主芯片的KEY上,即第34引脚。您可以在万用表的帮助下进行检查。

如果使用arduino uno,则将Bluetooth模块的Rx引脚连接到Arduino Uno的引脚11(arduino mega上应该是相同的),以及Arduino的Tx引脚。蓝牙到Arduino的引脚10还要将模块的关键引脚连接到arduino的引脚9并接地,但还不连接Vcc。您必须先打开arduino的电源,然后像使用USB到TTL转换器一样连接Vcc。

对于HC06:只需将模块的Rx连接到Tx usb-ttl转换器和模块的Tx。连接地面和Vcc。模块处于AT模式。没看到那个来吗? :P原来HC06模块被永久配置为从设备,并且在未与任何其他设备配对时始终处于AT模式。因此,没有像HC05一样处于AT模式的确认指示灯闪烁。只需打开模块电源并传递AT命令即可修改默认设置。

连接概述:

HC05 USB至TTL Arduino

Vcc Vcc Vcc

Rx Tx引脚11

Tx Rx引脚10

Gnd Gnd Gnd 键Vcc引脚9

HC06 USB至TTL

Vcc Vcc

Rx Tx

Tx Rx

Gnd Gnd

第3步:如果不存在或未连接密钥

仅适用于HC05 :如前所述,某些型号的分线板没有按键引脚,而是有一个EN(启用)引脚或WAKE UP引脚,它们可能连接也可能不连接就像STATE引脚一样。在这种情况下,您必须将导线焊接到bt模块的第34引脚。我将一个公头焊接到了地上,但是如果您不能焊接或不想焊接,那么您可以在将Vcc连接到5V时握住一根电线(公对公跳线的尖端很方便)。 bt模块处于AT模式后,您可以松开电线。

HC06不需要钥匙钉。

步骤4:建立连接

》对于HC05:

一旦模块处于AT模式,请打开arduino。转到工具》串行端口》选择您的USB转TTL转换器连接到的COM端口(要查找,请转到您PC的设备管理器》端口(COM&LPT))。现在打开串行监视器。 bt模块现在正在以38400的波特率进行通信。因此,请将串行监视器右下角的波特率更改为38400。还要将波特率旁边的“ no line end”更改为“ NL&CR”。

如果您没有Arduino IDE,请下载Tera term(这是出色的终端信号处理器)。开放Tera条款。将打开一个弹出窗口,选择“串行”,然后选择USB至TTL转换器连接的COM端口。按确定,将建立连接。现在转到设置》串行端口》将波特率设置为38400。设置波特率后,转到设置》终端》从下拉菜单中将换行符更改为CR + LF。还要选中换行符下的本地回显框。现在设置完成。

如果使用arduino(UNO/MEGA)板,则复制粘贴以下代码,这只是arduino示例中包含的Software Serial示例的修改。

//////////////////////////////////////////////////////////////////////////////////////////////////////////////////

#include

SoftwareSerial mySerial(10,11) ;//RX,TX

void setup(){

Serial.begin(9600);

pinMode(9,OUTPUT); digitalWrite(9,HIGH);

Serial.println(“输入AT命令:”);

mySerial.begin(38400);

}

无效循环()

{

如果(mySerial.available())

序列.WRITE(mySerial.read());

if(Serial.available())

mySerial.write(Serial.read());

}

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

将代码上传到arduino板上,代码上传完成后,打开串行监视器,更改“无行结尾”底部的“ NL&CR”,将其关闭,然后从USB断开arduino板的连接。现在再次将arduino重新连接到USB,将蓝牙模块的vcc连接到arduino 5volt,然后打开串行监视器。模块上的指示灯应每隔2秒闪烁一次。这意味着它已进入AT模式。现在您可以输入AT命令了。

对于HC06:

现在HC06有一个小的缺点,它不等待任何终止符对于每个AT命令条目。而是对一秒钟后输入的任何字符起作用。因此,如果您不能在一秒钟内完成命令输入,它将被忽略。由于这种行为,使用Windows Hyper-terminal软件进行手动输入配置可能非常困难。必须使用允许批量发送多个字符的终端软件。我发现arduino可以正常工作。另一方面,如果使用Tera term,则必须在记事本中写下AT命令,然后将其复制粘贴到Tera term。右键单击Tera term控制台,将自动粘贴复制的行并立即执行。

因此,一旦模块连接到usb-ttl转换器并通电,打开arduino,选择usb-ttl com端口,设置波特率达到38400。与HC05不同,无需应用其他设置。对于Tera Therm,选择适当的com端口,转到设置》串行端口》将波特率设置为38400,转到设置》终端》选中本地回显框,所有设置均已设置。

步骤5:AT命令

对于HC05:键入“ AT”(不带引号) ),然后按Enter。如果出现“ OK”,则表示一切正常,模块已准备好接受命令。现在,您可以更改模块的名称,检索地址或版本,甚至重置为出厂设置。要查看默认名称,请键入AT + NAME。该名称将被提示,默认情况下为HC-05或JY_MCU或类似名称。要更改名称,只需键入AT + NAME =您所需的名称。

这里有个重要的注意事项,如果钥匙引脚不高,即在接收AT命令时未连接到Vcc(如果您未焊接导线并在模块进入AT模式后将其释放),即使给出正确的命令,也不会显示默认名称。但是您仍然可以通过上述命令更改名称。要验证名称是否确实更改过,请从您的PC/手机上搜索设备。更改后的名称将会出现。要更改波特率,请键入AT + UART =所需的波特率。通过发送AT + RESET命令退出。

最有用的AT命令是

AT:断开连接。

AT + NAME:请参阅默认名称

AT + ADDR:请参阅默认地址

AT + VERSION:请参阅版本

AT + UART:请参见波特率

AT + ROLE:请参阅bt模块的角色(1 =主控/0 =从属)

AT + RESET:重置并退出AT模式

AT + ORGL:恢复出厂设置

AT + PSWD:请参阅默认密码

更详细的AT命令在第一个pdf中给出。

对于HC06::在arduino串行监视器上,键入“ AT”(不带引号),然后按Enter,“ OK”将确认AT模式。与HC05不同,您看不到默认名称或波特率。您只能更改它们。要更改名称,请键入AT + NAMEDESIRED NAME,请注意命令和名称之间不应有空格。模块将回复您的设置名称。例如,AT + NAMEPROTOTYPE会将名称设置为PROTOTYPE。要更改波特率,请键入AT + BAUDX,其中X = 1到9。

1设置为1200bps

2设置为2400bps

3设置为4800bps

4设置为9600bps(默认值)

5设置为19200bps

6设置为38400bps

7设置为57600bps

8设置为115200bps

所以发送AT + BAUD4会将波特率设置为9600。

对于Tera Term,请在其他位置写下命令,然后通过右键单击将其粘贴到控制台上。无需按回车键。该命令将立即执行并确认。

HC 06 AT命令是受限制的,在此可以找到所有我能找到的内容。

AT:检查连接

AT + NAME:更改名称。名称与命令之间没有空格。

AT + BAUD:更改波特率,x是波特率代码,命令与代码之间没有空格。AT+ PIN:更改引脚,xxxx是引脚,再次,没有空格。

AT + VERSION

责任编辑:wv

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • usb
    usb
    +关注

    关注

    59

    文章

    7421

    浏览量

    258016
  • TTL
    TTL
    +关注

    关注

    6

    文章

    469

    浏览量

    69363
  • 蓝牙模块
    +关注

    关注

    30

    文章

    454

    浏览量

    55104
收藏 人收藏

    评论

    相关推荐

    HC05蓝牙模块主从通讯,蓝牙透传串口发出后数据字节有延时是怎么回事?

    HC05蓝牙做主从通讯,主机发出从机接收。主从模块通过两个CH430和PC相连。用逻辑分析仪抓取数据,发现从机接收后串口发出的数据有字节延时。
    发表于 04-02 07:52

    HC06蓝牙模块与单片机通讯时只能收不能发怎么解决?

    我有一块带底板的5v的HC_06蓝牙模块,但是其串口的电压是3.3v,我用他与串口电压为5v的单片机通讯时只能收到单片机发来的数据,单片机却接收不到蓝牙发送的数据,网上找了方法,如直接
    发表于 10-23 06:41

    HC-05k蓝牙模块怎么才能作为主栈使用?

    HC-05k蓝牙模块怎么才能作为主栈使用
    发表于 10-12 07:45

    HC05在使用的过程中怎么修改设备地址?

    HC05在使用的过程中怎么修改设备地址
    发表于 10-11 07:56

    HC05蓝牙模块在工作的时候怎么修改波特率?

    HC05蓝牙模块在工作的时候怎么修改波特率?
    发表于 10-09 08:25

    HC05蓝牙模式能实现一对多通信吗?

    HC05蓝牙模式能实现一对多通信吗
    发表于 10-09 06:21

    MPU6050姿态参数如何通过HC05蓝牙模块出来?

    我现在用手机通过HC05蓝牙模块实现了对遥控车的控制,现在要在这个基础上增加一个MPU6050模块,我想把这个MPU6050
    发表于 10-07 08:02

    基于HC-05蓝牙模块控制16x2 LCD显示屏

    电子发烧友网站提供《基于HC-05蓝牙模块控制16x2 LCD显示屏.zip》资料免费下载
    发表于 06-30 15:05 0次下载
    基于<b class='flag-5'>HC-05</b><b class='flag-5'>蓝牙</b><b class='flag-5'>模块</b>控制16x2 LCD显示屏

    HC-06蓝牙模块与Arduino连接教程

    电子发烧友网站提供《将HC-06蓝牙模块与Arduino连接教程.zip》资料免费下载
    发表于 06-25 11:24 0次下载
    将<b class='flag-5'>HC-06</b><b class='flag-5'>蓝牙</b><b class='flag-5'>模块</b>与Arduino连接教程

    智能蓝牙HC-05控制电源板开源项目

    电子发烧友网站提供《智能蓝牙HC-05控制电源板开源项目.zip》资料免费下载
    发表于 06-12 10:01 1次下载
    智能<b class='flag-5'>蓝牙</b><b class='flag-5'>HC-05</b>控制电源板开源项目

    2个ESP8266-01作为透明串口桥的固件,如何让他们在编程前立即重置Arduino并促进智能手机应用程序渠道?

    基于 Arduino 的。它旨在通过 Blootooth 集成智能手机应用程序中。我还希望 HC-05HC-06 蓝牙
    发表于 06-06 13:26

    HC05蓝牙模块编程实例

    今天分享一个实践项目——HC05蓝牙模块的编程。
    的头像 发表于 05-26 16:01 2260次阅读
    <b class='flag-5'>HC05</b><b class='flag-5'>蓝牙</b><b class='flag-5'>模块</b>编程实例

    学习一下经典蓝牙BT模块

    来实践一下如何通过AT命令进行设置。准备以下材料:   HC05模块   TTLUSB串口下载
    发表于 05-15 15:50

    无线通信之HC05/HC06经典蓝牙BT模块介绍

    来实践一下如何通过AT命令进行设置。准备以下材料:   HC05模块   TTLUSB串口下载
    发表于 05-12 17:36

    蓝牙上位机

    卓端图形界面,支持与蓝牙模块HC0506,等进行无线传输控制。后期添加wifi 通讯模块
    发表于 05-08 09:46 0次下载
    <b class='flag-5'>蓝牙</b>上位机