当前位置:首页 > 工业控制 > 电路设计项目集锦
[导读]我们已经看到了如何通过HC-05发送和接收数据,但大多数蓝牙应用程序需要的不仅仅是发送和接收。在本教程中,我们将看到如何将HC-05与0.91英寸。OLED显示屏打印HC-05接收到的数据。

我们已经看到了如何通过HC-05发送和接收数据,但大多数蓝牙应用程序需要的不仅仅是发送和接收。在本教程中,我们将看到如何将HC-05与0.91英寸。OLED显示屏打印HC-05接收到的数据。

软件

为了发送数据,我们将使用Arduino蓝牙控制器。

注意:HC-05蓝牙模块仅适用于Android设备。

硬件

HC-05蓝牙模块

•蓝牙版本:HC-05模块支持蓝牙2.0+EDR (Enhanced Data Rate,增强数据速率),提供相对稳定可靠的连接。

•串行通信:该模块使用串行通信接口与Arduino进行通信。它使用UART引脚连接到Arduino板,标记为RX(接收)和TX(发送)。

•工作模式:模块主要有两种工作模式:命令模式(AT模式)和数据模式(接收和发送数据)。在“AT模式”下,您可以向模块发送配置命令,指定蓝牙名称、PIN码和工作模式等参数。在“数据模式”中,您可以发送和接收数据。

•电源:HC-05模块需要3.3V左右的电源。然而,它通常容忍5V逻辑电平,使其与大多数Arduino板兼容。

注意:如果我们看原理图,我们可以看到HC-05模块的关键引脚连接到Arduino nano的VCC。在上电Arduino之前,应将关键引脚连接到VCC,一旦HC-05模块开始缓慢闪烁,必须断开连接。

虽然我们在这个项目中使用的是HC-05蓝牙模块,它非常便宜和耐用,但我们使用分压器电路来确保RXD引脚不会损坏。它是通过连接横跨RXD和引脚11的1k Ω电位器和横跨RXD和地的2k Ω电位器制成的。

OLED显示器:

•体积小巧:由于体积小巧,非常适合智能手表和健身追踪器等小型设备。

•高对比度和亮度:提供深黑色和充满活力的颜色,具有高对比度和亮度。

•低功耗:功耗低于lcd,提高可穿戴设备的电池寿命。

•宽视角:保持一致的颜色和清晰度,从不同的视角。

•快速响应时间:提供快速的响应时间,减少动态内容的运动模糊。

OLED显示器因其卓越的图像质量、效率和设计灵活性而广泛应用于智能手机、电视、可穿戴设备和数字标牌等各种设备。

这两种模块都是智能手表、智能眼镜等小型应用的理想选择。

代码

让我们一步一步来了解它是如何工作的:

库和常量

库包含:包括必要的软件串行通信(SoftwareSerial), SPI通信(SPI), I2C通信(Wire)和控制OLED显示器(Adafruit_GFX和Adafruit_SSD1306)的库。

常量定义:定义检查蓝牙模块连接状态的STATEPIN和OLED显示器复位引脚的OLED_RESET。

对象和变量初始化

对象创建:使用复位引脚为OLED显示器创建对象显示,并在引脚10和11上为软件串行通信创建对象蓝牙。

变量声明:声明一个字符串变量数据来保存从蓝牙模块接收到的数据。

设置函数

串行和蓝牙初始化:使用Serial.begin(9600)初始化串行通信以进行调试,并使用Bluetooth .begin(9600)设置蓝牙模块。

引脚设置:配置STATEPIN作为检查连接状态的输入。

OLED初始化:用I2C地址0x3C初始化OLED显示器,清除之前的任何内容,设置文本大小和颜色,定位光标,并向显示器打印初始消息“Data Received:”。

循环函数

Connection Check: loop函数首先通过读取STATEPIN来检查蓝牙模块的状态。如果读数为1,则表示客户端已连接。

断开连接更新:如果没有客户端连接(STATEPIN读取0),则重置数据变量,将“Disconnected”打印到串行监视器,并更新OLED显示为“Not connected”。

读取数据:如果客户端已连接,代码将进入一个循环,该循环检查是否有来自蓝牙模块的可用数据。它将可用数据读入data变量,打印到串行监视器,并通过发送“read”来响应蓝牙模块。stoppllistening()和listen()方法用于暂时停止和恢复软件串口上的侦听。

更新OLED显示屏:读取数据后,代码更新OLED显示屏。它清除显示器,打印接收到的数据,并显示“已连接”以指示活动连接。此更新提供了接收到的数据和连接状态的可视化确认。

应用程序

应用说明设置:

•为Arduino供电。

•现在,HC-05模块应该会快速闪烁。

•接下来,打开应用程序。

•允许它访问蓝牙设置。

•在列表中选择HC-05。

•选择控制台/终端模式。

•现在模块应该每2秒闪烁一次。

•OLED显示屏应该显示已连接。

•应该弹出一个带有键盘的控制台(见下文)。

•现在你输入的任何东西都应该出现在OLED显示屏上。

•享受吧!

本文编译自hackster.io

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

深圳2025年8月4日 /美通社/ -- 近日,电子元件和工业品数字化全球供应商欧时RS联合四方维(Supplyframe)创新中心成功举办 "欧时RS创客沙龙——Arduino主题开放日"。活动聚焦开源硬件与编程领军平...

关键字: Arduino 开源 创客 智能未来

ESP32模块非常通用,可以通过WiFi连接到各种不同的平台来发送和接收数据。在本教程中,我们将使用Arduino的物联网云平台(这是完全免费使用)与ESP32。有关Arduino IoT Cloud的更详细概述,请查看...

关键字: GPS ESP32模块 Arduino 物联网

在这个中级电子和无线电通信教程中,我们将深入研究使用Arduino平台和nRF24L01+无线模块构建功能齐全的8+通道RC(无线电控制)发射器和接收器。该项目结合了微控制器编程,传感器集成和射频通信的核心技能,非常适合...

关键字: Arduino RC控制器 发射器 接收器

作为飞行员,在空中和地面上,在飞行和飞行前的许多方面保持“安全第一”是很重要的,其中之一就是避免碰撞。过去几年,即使是小型航空、自由飞行的飞机,如滑翔机、滑翔伞、悬挂式滑翔机等,在未来的无人机中,也开始采用仪器来观察和让...

关键字: Arduino ESP32 LED

用c++编程似乎是让你的Arduino项目起步的障碍吗?您想要一种更直观的微控制器编程方式吗?那你需要了解一下Visuino!这个图形化编程平台将复杂电子项目的创建变成了拖动和连接块的简单任务。在本文中,我们将带您完成使...

关键字: Visuino Arduino ESP32 STM32

你有没有想过Arduino是如何成为制造商和爱好者的强大工具的?在Arduino for Beginners课程的第二篇文章中,我们将探索Arduino背后的鼓舞人心的故事和一些展示其多功能性的实际应用程序。最后,我将指...

关键字: LED Arduino UNO板

美国 宾夕法尼亚 MALVERN、中国 上海 — 2025年7月1日 — 日前,威世科技Vishay Intertechnology, Inc.(NYSE 股市代号:VSH)宣布,推出采用 0402外壳尺寸的新器件,扩展...

关键字: ADI Adafruit Arduino

本项目基于Wio Terminal(2.4寸液晶屏、物理按键、高效处理器)的硬件特性和Arduino开源生态系统,实现了一款沉浸式F1赛车游戏。玩家通过按键控制赛车躲避障碍物,游戏难度随分数动态增加,结合专业的赛车图形渲...

关键字: Arduino 开源生态系统 Wio Terminal

使用LoRaWAN的智能水位和洪水警报系统。实时数据+环境。传感器=零连接成本的早期预警。

关键字: Arduino LoRaWAN 传感器

完成这个项目有几个原因。首先,它通过动手模型帮助学生了解太阳系。其次,这是练习使用Arduino和步进电机的好方法。最后,它通过让学习变得有趣和富有创造性来鼓励人们对STEM的兴趣。

关键字: Arduino 步进电机 STEM
关闭