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

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

3天内不再提示

怎样使用HC-05蓝牙模块通过无线通信控制Arduino板

454398 来源:工程师吴畏 2019-07-29 09:28 次阅读

简介

蓝牙通信是一种基于2.4GHz频率的射频通信,射程约为10米。它是数据传输,音频系统,免提,计算机外围设备等最常用和最常用的低范围通信之一。

DIY项目中使用蓝牙通信,HC-05蓝牙模块是转到设备。我使用HC-05蓝牙模块实施了多个项目,如机器人手臂,家庭自动化, LED矩阵等。

但在所有这些项目中,除了完成项目所需的内容之外,我还没有讨论过很多蓝牙模块。所以,在这个项目/教程中,我将谈谈HC-05模块。

关于HC-05蓝牙模块的简要说明

如果你环顾四周电子DIY和爱好者社区,HC-05蓝牙模块是实现基于蓝牙通信的项目的首选设备。 HC-05蓝牙模块是一种基于蓝牙协议的简单无线通信设备。

该模块基于BC417单芯片蓝牙IC,符合蓝牙v2.0标准,支持UARTUSB接口

通常,HC-05蓝牙模块或HC-事实上,05 Sub模块附带BC417 IC和闪存。这些模块作为表面贴装电路板,一些第三方制造商使用这些电路板构建一个更完整的系统,带有必要的引脚和组件。

下图显示了一个这样的HC- 05蓝牙子模块(安装在蓝板上的绿板)用作完整蓝牙模块的一部分。

HC-05蓝牙模块的针脚

HC- 05模块支持UART,USB和SPI通信,根据应用,可以使用必要的引脚。在我的情况下,电路板使用UART通信。

来到蓝牙模块的引脚,通常,四个引脚足以成功启用无线通信链路但模块现在生产了六个引脚,即:VCC,GND,TX,RX,EN和STATE。

下图显示了典型HC上的引脚和其他元件-05蓝牙模块。

要记住的重要一点是HC-05蓝牙模块的工作逻辑水平为3.3V。因此,电路板上使用3.3V稳压器。

注意:电路板上的按钮用于配置AT中的蓝牙模块命令模式。本项目不讨论该模块的这一部分。

引脚说明

EN:这是启用引脚。当此引脚悬空或连接到3.3V时,模块使能。如果此引脚连接到GND,模块将被禁用。

+ 5V:这是用于连接+ 5V的电源引脚。由于模块具有板载3.3V稳压器,因此可以提供+ 5V电源。

GND:它是接地引脚。

TX:它是UART通信的发送器引脚。

RX:它是UART的接收引脚。

状态:这是状态指示器引脚。当模块未连接到任何设备时,此引脚变为低电平。当模块与任何设备配对时,此引脚变为高电平。

注意:板载LED用于指示连接的状态。模块未配对时,LED会反复闪烁或闪烁。模块配对后,LED会以2秒的恒定延迟闪烁。

操作模式

HC-05蓝牙模块可配置为两种操作模式:命令模式和数据模式。

在命令模式下,您可以与蓝牙通信模块通过AT命令配置模块的各种设置和参数,如获取固件信息,更改UART波特率,更改模块名称,将其设置为主站或从站等。

关于HC-05模块的一个重点是它可以在通信对中配置为主设备或从设备。要选择其中一种模式,需要激活命令模式并发送相应的AT命令。

进入数据模式,在此模式下,使用模块用于与其他蓝牙设备通信,即在此模式下进行数据传输。

HC-05蓝牙模块的默认设置

以下是HC-的一些默认设置列表05蓝牙模块。

名称:HC-05

密码:1234(或0000)

类型:从属

模式:数据

波特率:9600 with 8个数据位,无奇偶校验和1个停止位

HC-05蓝牙模块与Arduino接口的电路图

为了演示HC-05模块和Arduino之间的连接,我设计了一个简单的电路。

这个电路的目的是将蓝牙模块与Arduino连接,将蓝牙模块与Android手机配对,使用简单的应用程序将数据从Android手机发送到蓝牙模块,通过Arduino从蓝牙模块读取数据,最后显示数据并控制基于数据。

以下图片显示Arduino Mega和HC-05之间连接的电路图。

注意:我和Arduino Mega一起去了,因为它有多个硬件UART端口。在这个项目中,我使用Arduino Mega的默认串行端口与计算机(串行监视器)和串行1(RX1和TX1 - 引脚19和18)进行通信,以便与蓝牙通信。

代码

用于蓝牙通信的应用

我正在使用一个名为“蓝牙控制器”的简单Android应用程序,用于将HC-05与我的Android手机配对并传输数据。在开发此项目时,Play Store中不再提供此特定蓝牙控制器应用程序。

但我喜欢它的简单性和易用性。如果您想使用同一个应用程序,可以从以下链接下载 BLUETOOTH CONTROLLER 。

将手机连接到HC-05蓝牙模块

建立蓝牙模块的连接并打开电源。如果这是您第一次使用蓝牙模块,则LED将快速闪烁。要将模块与手机配对,请打开手机中的蓝牙设置,然后使用引脚“1234”连接到“HC-05”。如果1234不起作用,请尝试“0000”。

将蓝牙模块与手机配对后,即可开始使用该应用程序。打开蓝牙控制器应用程序,然后单击扫描。屏幕上将显示蓝牙设备列表。选择HC-05。

现在,在应用程序中选择设置密钥选项,然后输入以下信息:

密钥名称 密钥数据

LED ON 1

LED OFF 0

输入此信息后,单击“确定”保存。现在,在应用程序的主屏幕上,您可以看到标题为“LED ON”和“LED OFF”的两个按钮(或插槽)。如果您点击LED ON,“1”将通过蓝牙通信传输到HC-05模块,然后HC-05模块将其传输到Arduino。

如果点击LED OFF,将发送‘0’。然后,Arduino根据接收的数据打开或关闭LED。

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

    关注

    56

    文章

    4197

    浏览量

    142326
  • 蓝牙模块
    +关注

    关注

    30

    文章

    454

    浏览量

    55111
  • Arduino
    +关注

    关注

    184

    文章

    6427

    浏览量

    184834
  • HC-05
    +关注

    关注

    0

    文章

    34

    浏览量

    16853
收藏 人收藏

    评论

    相关推荐

    蓝牙技术对无线通信的影响

    电子发烧友网站提供《蓝牙技术对无线通信的影响.pdf》资料免费下载
    发表于 10-07 15:58 1次下载
    <b class='flag-5'>蓝牙</b>技术对<b class='flag-5'>无线通信</b>的影响

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

    我现在用手机通过HC05蓝牙模块实现了对遥控车的控制,现在要在这个基础上增加一个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><b class='flag-5'>控制</b>16x2 LCD显示屏

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

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

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

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

    利用Arduino Nano制作一个四足机器人遇到HC-05蓝牙模块问题,可以用ESP8266替换Arduino吗?

    我在 Arduino Nano 的帮助下制作了一个四足机器人。但我经常遇到 HC-05 蓝牙模块的问题。所以现在我正在考虑用 ESP8266 替换
    发表于 06-02 08:12

    无线通信模块种类和优点

    无线通信模块种类 1、无线数传模块,这种模块厂家已经做了单片机,并且写好了无线通信部分的程序,
    发表于 05-30 14:24 2次下载
    <b class='flag-5'>无线通信</b><b class='flag-5'>模块</b>种类和优点

    Arduino使用NRF24L01模块进行无线通信

    其实CSDN有很多关于这个无线模块的使用,包括Arduino的使用例程,但是实际自己跟着做一遍的时候还是发现了有些小问题,于是记录一下方便以后做其他有意思的小项目。(Arduino的库
    发表于 05-30 11:49 0次下载
    <b class='flag-5'>Arduino</b>使用NRF24L01<b class='flag-5'>模块</b>进行<b class='flag-5'>无线通信</b>

    一文讲透蓝牙、WiFi、ZigBee无线通信模块

    蓝牙是一种低成本、近距离无线技术标准。蓝牙模块将芯片和外围硬件电路集成到一个 PCB 上,开发出所需的内置程序实现蓝牙功能的设备。可以
    发表于 05-30 10:46 0次下载
    一文讲透<b class='flag-5'>蓝牙</b>、WiFi、ZigBee<b class='flag-5'>无线通信</b><b class='flag-5'>模块</b>

    HC05蓝牙模块编程实例

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

    学习一下经典蓝牙BT模块

    通过HC05/HC06模块的具体使用了解了如何使用经典蓝牙BT模块
    发表于 05-15 15:50

    Arduino配合RF 433MHz收发模块实现无线通信

    使用。   如何用Arduino控制   闲话不多说,我们直接实践。接下去我们就演示一下Arduino配合RF 433MHz收发模块实现无线通信
    发表于 05-15 15:35

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

    )”。   使用场景1: 主从Arduino蓝牙通信   配置好蓝牙模块以后,我们就可以正常使用了。我们先实践一下主从
    发表于 05-12 17:36

    无线通信蓝牙BLE技术

    看到不同的无线数据传输协议在数据传输速率和传输距离有各自的使用范围。   Zigbee、蓝牙以及WIFI标准都是工作在2.4GHz频段的无线通信标准。 下面将BLE与传统蓝牙、WIFI
    发表于 05-12 17:26

    Zigbee无线通信模块的特点和应用场景

      Zigbee无线通信模块是一种基于Zigbee协议的无线通信模块,常常被用于无线传感器网络中的数据采集、传输和
    发表于 05-05 18:06 1457次阅读