您好!欢迎光临深圳市润泽五洲电子科技有限公司,我们竭诚为您服务!

专业一站式SMTPCBA生产工厂

打造电子制造行业领军品牌

服务咨询热线:

13380355860
当前位置:首页>新闻资讯>技术文档 >

蓝牙接口:如何与蓝牙模块接口

  • 发表时间:2021-10-09 08:21:35
  • 来源:本站
  • 人气:8

当大多数人开始使用 Arduino 微控制器时,他们并不了解所有的扩展模块和扩展板。虽然 Arduino Uno 是全球最受欢迎的微控制器之一,但它不具备蓝牙接口功能。

实际上,您可以购买带有内置蓝牙功能的开发板,例如 Arduino BT 或 Raspberry Pi 4,它们具有内置蓝牙功能。然而,这些板更贵、更笨重,而且在您的项目中使用起来可能不太有趣。那么,当您想为没有蓝牙连接的微控制器添加蓝牙连接时,您会怎么做? 

您最好的选择是将其与蓝牙模块连接。因此,本指南将向您展示如何将微控制器与蓝牙模块连接。这将允许您将微控制器无线连接到支持蓝牙的设备,例如智能手机和计算机。 

什么是蓝牙接口

蓝牙传感器、面包板和 Arduino Uno

蓝牙传感器、面包板和 Arduino Uno

今天,蓝牙是世界上最普遍的无线连接标准之一。我们使用它在设备之间传输和交换数据,蓝牙接口描述了使用或启用蓝牙设备。虽然我们使用 Wi-Fi 等标准进行长距离连接,但我们使用蓝牙进行短距离连接和数据传输。但是,最新的蓝牙标准 (5.2) 可以达到 400m,数据速率为 2 Mbps。

我们可以期待未来的版本以更高的阈值和吞吐量实现更远的距离。然而,每次您使用手机传输数据或连接到另一台设备时,本质上都是蓝牙接口。同样,许多微控制器没有内置蓝牙功能。因此,如果要实现与它们的蓝牙接口,则需要扩展它们或添加另一块板。

接下来,我们将向您展示如何使用蓝牙模块向微控制器添加蓝牙接口。 

蓝牙模块及其工作原理

蓝牙模块

蓝牙模块

蓝牙模块允许您将微控制器和单板计算机与外部设备连接起来。我们也可以将它们称为蓝牙传感器然而,只有在您的主板没有任何内置蓝牙功能时才需要这些设备最常见的蓝牙模块是 HC-05 和 HC-06。 

当您购买蓝牙模块时,您会发现它在一块方形的蓝色分线板上呈绿色矩形。分线板为蓝牙模块提供引脚,让您可以快速将其插入面包板。 

对于简单的应用,HC-05 和 HC-06 在它们的从模式下工作相同。但是,我们建议您使用 HC-05,因为它允许您在从模式和主模式之间切换。

相比之下,HC-06 只能作为从设备运行。

因此,如果您想连接两个 Arduino 项目,您需要一个 HC-05 蓝牙模块,以便它可以启动蓝牙连接并进行设置。

如果您查看蓝牙模块的背面,您会发现引脚分配的标签。在大多数情况下,您只需要担心电源引脚。主要是VCC和地(GND)。然而,除了这些引脚之外,我们还有数据引脚——RXD 和 TXD。

RXD 接收数据,TXD 发送数据。如果您使用的是 HC-05,您会注意到 HC-06 没有的两个引脚。我们将这些引脚称为使能 (EN) 和状态输出引脚 (STATE)。您可能还会听到人们将启用引脚称为关键引脚。 

使用蓝牙模块时,需要特别注意电源电压。3.6 伏到 6 伏之间的任何电压都是安全的,数据引脚需要 3.3 伏数字信号。 

如何将蓝牙模块与您的 Arduino 项目和手机连接

蓝牙传感器

蓝牙传感器

为了向您展示蓝牙接口的工作原理,我们提供了有关如何使用蓝牙模块将 Arduino 项目连接到手机的基本教程。在尝试此项目之前,您需要了解编码和应用程序开发中的一些基本概念。此外,使用Arduino IDE并将草图上传到 Arduino 微控制器的经验至关重要。 

所需组件

  • 蓝牙模块 HC-05 或蓝牙模块 HC-06

  • 面包板

  • 阿杜诺乌诺 

  • 2.2kΩ 电阻

  • 5.7KΩ 电阻

  • 实芯线

  • Arduino IDE 软件

指示

设置硬件

  • 从 Arduino Uno 上的 5V 和 GND 引脚连接电线,将它们安装到面包板上的电源轨上;然后将它们馈送到您的蓝牙模块,连接到 VCC 和 GND 引脚。

  • 将 Arduino Uno 的传输引脚连接到面包板,同时使用电阻器创建与 GRAND 串联的分压器。中心应该断开并连接到 RXC 引脚。这是因为蓝牙模块需要较低的传输电压电平。 

  • 通过将电线从 Arduino Uno 上的接收引脚穿过面包板,为 HC-05 上的 TXD 引脚供电。

如果您正确地遵循上述接线步骤,您的项目应该如下所示: 

o Uno 连接到 HC-05 模块

Arduino Uno 连接到 HC-05 模块

资料来源:维基共享资源

设置软件

为了让我们的项目正常运行,我们需要编写代码,让我们能够侦听数据并从蓝牙源接收数据。然后我们将使用我们的串行端口将结果打印回计算机。

所以我们基本上将这个项目用作计算机的蓝牙接收器。因此,我们必须为蓝牙终端写一个草图。 

蓝牙终端草图 

蓝牙终端草图1

我们需要使用一些函数和类从 软件序列库。它们将允许 Arduino 通过蓝牙进行通信。因此,您必须将其包含在草图中。

导入库后,您需要指定用于发送和接收数据的串行引脚。在上面的示例中,我们将引脚 9 用作接收引脚 (rxPin),将引脚 8 用作发送引脚 (txPin)。 

接下来,使用我们在上一步中定义的值作为参数实例化一个软件序列 (SoftwareSerial) 对象。在上面的示例中,我们将软件串行对象命名为 BTSerial。

接下来,定义一个名为 setup 的新函数。它定义了哪些引脚用于输入和输出。默认情况下,HC-05 蓝牙模块以 9600 波特率与 Arduino 通信;我们可以修改它。但是,我们在示例中保持不变,因为它更接近准确的波特率。 

接下来,定义两个用于消息的字符串变量。最后,创建一个带有 while 循环的 Arduino 循环函数。我们将使用这个循环来监听 Arduino 和蓝牙设备之间的任何通信。 

如果 Arduino 收到任何数据,它将打印出来,使用分号作为行终止符。 

蓝牙终端草图2

蓝牙终端草图2

编写草图后,您需要将其上传到您的 Arduino。接下来,您需要将手机与 Arduino 项目配对,这将允许您的手机与蓝牙模块进行通信。

与蓝牙设备通信

当您使用按钮开关打开 Arduino 时,您应该注意到蓝牙模块发出闪烁的红灯。这表明它处于配对模式。您需要进入手机的蓝牙设置并扫描附近的任何设备。 

在可用设备下,您应该会看到与您的模块相关的条目。选择该条目并将其与您的手机配对。它会要求您提供配对代码。配对码通常为“1234”。现在您已将设备配对,您可以开始与其通信。但是,您需要一个移动应用程序来执行此操作。 

导航到您手机的应用程序商店并下载串行蓝牙终端应用程序。该应用程序需要一个终端,允许您键入消息,然后将它们发送到您的项目。此外,您还需要能够查看从设备收到的通知。

确保您决定使用的应用程序与经典蓝牙(Bluetooth Classic)兼容,否则可能不适用于您的项目。 

下载应用程序后,返回您的计算机,打开 Arduino IDE 并打开蓝牙草图的串行监视器。确保串行监视器使用 9600 波特或您之前指定的波特数。 

回到手机上的蓝牙终端应用,选择Arduino蓝牙项目作为设备。连接后,您可以在终端应用程序中键入一条消息。确保在消息末尾添加分号 (;) 以表示消息结束。 

如果它工作正常,您应该会收到一条消息,通知您 Arduino 项目已收到一条消息。此外,该字母还应通过 Arduino IDE 的串行终端出现在您的计算机屏幕上。 

概括

在上述指南中,我们简要探讨了蓝牙与微控制器的接口。我们提供了一个简单的教程,该教程说明了蓝牙模块的工作原理,以帮助您扩展微控制器的功能并与之交互。一旦了解了基础知识,就可以制作更复杂的项目。例如,您可以添加按钮、板载 LED 或直流电机。您甚至可以使用它通过电子邮件发送帖子。尽管如此,我们希望您发现本指南对您有所帮助。一如既往,感谢您的阅读。