Arduino使用HC05蓝牙模块与手机连接

article/2025/10/30 12:04:04

通过本文,可以了解到以下内容:

  • 进入 AT 模式进行蓝牙基本参数设置
  • Arduino 蓝牙控制 LED 电路设计以及代码编写
  • 利用 Andorid 蓝牙串口调试软件测试功能

进入 At 模式进行蓝牙基本参数设置

想要使用 Arduino 的蓝牙模块,首先要对蓝牙模块进行基本参数设置。基本参数设置主要包含:蓝牙名称、模式以及匹配密码等。设置蓝牙模块可以使用 USB-TTL 连接电脑使用串口调试软件进入 AT 模式进行设置,也可以使用 Arduino 连接蓝牙模块进行设置,本文主要介绍后一种方法。

注意事项

在连接蓝牙的时候,要注意线的连接是否正确,检查清楚再进行通电,除此之外,还要主要不要让针脚短路,我在首次使用蓝牙模块的时候,因为没注意接线,导致一个蓝牙模块损坏了,只能发信息不能收信息,所以为了避免不必要的损失,这里要注意。

Arduino HC05 AT模式接线

进入 AT 模式设置蓝牙的接线如下:
Arduino 5V - VCC
Arduino GND - GND
Arduino Pin10 - TXD
Arduino Pin11 - RXD
在通电前检查接线是否正确连接
hc05_at_mode.jpg

Arduino 进入 AT 模式代码

接下来,我们需要为使用 Arduino 设置蓝牙模块 AT 模式编写程序,这个程序是让我们可以通过 Arduino IDE 提供的串口监视器来设置蓝牙模块。详细的 Arduino 代码如下:

#include <SoftwareSerial.h> // Pin10为RX,接HC05的TXD
// Pin11为TX,接HC05的RXD
SoftwareSerial BT(10, 11); 
char val;void setup() {Serial.begin(38400); Serial.println("BT is ready!");// HC-05默认,38400BT.begin(38400);
}void loop() {if (Serial.available()) {val = Serial.read();BT.print(val);}if (BT.available()) {val = BT.read();Serial.print(val);}
}

利用 Arduino IDE 串口监视器进行调试

首先,将 Arduino 断电,然后按着蓝牙模块上的黑色按钮,再让 Arduino 通电,如果蓝牙模块指示灯按2秒的频率闪烁,表明蓝牙模块已经正确进入 AT 模式。
打开 Arduino IDE 的串口监视器,选择正确的端口,将输出格式设置为 Both: NL & CR ,波特率设置为 38400 ,可以看到串口监视器中显示 BT is ready! 的信息。
然后,输入 AT ,如果一切正常,串口显示器会显示 OK
接下来,我们即可对蓝牙模块进行设置,常用 AT 命令如下:

AT+ORGL    # 恢复出厂模式
AT+NAME=<Name>    # 设置蓝牙名称
AT+ROLE=0    # 设置蓝牙为从模式
AT+CMODE=1    # 设置蓝牙为任意设备连接模式
AT+PSWD=<Pwd>    # 设置蓝牙匹配密码

正常情况下,命令发送后,会返回 OK ,如果没有返回任何信息,请检查接线是否正确,蓝牙模块是否已经进入 AT 模式,如果上述两点都没有问题,可能是蓝牙模块的问题,可以找蓝牙模块供应商咨询。
设置完毕后,断开电源,再次通电,这是,蓝牙模块指示灯会快速闪烁,这表明蓝牙已经进入正常工作模式。

利用 Andorid 手机连接 Arduino 并控制 LED灯开关

我们完成了对蓝牙模块的设置后,我们将做一个可以通过手机蓝牙连接,控制 Arduino 开关 LED 灯的小实验。

Arduino 电路设计

这里的电路设计比较简单,主要是两部分:

  • Arduino 与 HC05 模块连接
  • Arduino 与 LED 连接

这里有两点需要注意,Arduino 上的 TXD 应与 HC05 模块上的 RXD 端连接,Arduino 上的 RXD 应与 HC05 模块上的 TXD 连接。
在下面的图例中,我的 LED 是直接连接在 Arduino Pin13 上,而实际电路连接中,因根据连接的 Led 灯的设计考虑是否需要串联电阻。
Hc05_Led.jpg

Arduino 蓝牙控制 LED 灯 程序设计

Arduino 程序代码如下:

void setup()
{// 设置波特率为 38400Serial.begin(38400);pinMode(13, OUTPUT);
}void loop()
{while(Serial.available()){char c=Serial.read();if(c=='1'){Serial.println("BT is ready!");// 返回到手机调试程序上Serial.write("Serial--13--high");digitalWrite(13, HIGH);}if(c=='2'){Serial.write("Serial--13--low");digitalWrite(13, LOW);}}
}

Android 手机端调试

在 Android 端上进行调试,需要下载蓝牙串口调试 APP,可以根据喜好在各大应用商场搜索下载。
下载安装完成 APP 后,我们先打开手机的蓝牙设置,搜索并匹配好我们的蓝牙模块。然后打开 蓝牙串口调试APP ,让 APP 连接上蓝牙模块,然后我们可以在 APP 中输入 1,接下来可以看到 LED 等亮了,并且能在 APP 中看到 Serial--13--high 的返回(有些 APP 返回值可能不是返回在同一行)。我们再在 APP 中输入 2,可以看到 LED 熄灭, APP 中返回 Serial--13--low

小结

在这篇文章中,我们了解了在 Arduino 中使用 HC05 蓝牙模块的两个主要步骤,首先是进入 AT模式 对蓝牙模块进行设置,这里要注意接线的正确性,设置完成后,就可以将蓝牙模块的 TXArduino RX 连接,RXArduino TX 连接,再通过 Arduino 程序中的 Serial 来实现数据的传输与读取。最后,在通过 Android 上的蓝牙串口调试APP,来测试我们的试验是否成功。

参考资料

蓝牙模块HC05
Arduino Bluetooth Basic Tutorial


本文为原创内容,由同一作者于早前发表于简书,Arduino使用HC05蓝牙模块与手机连接


http://chatgpt.dhexx.cn/article/507fOZtR.shtml

相关文章

HC05和电脑蓝牙通讯

通常情况下都是将HC05和HC04进行主从配对&#xff0c;然后进行通讯。如果手边没有HC04其实可以使用笔记本自带的蓝牙和HC05进行通讯。 配置方法如下&#xff1a; 将HC05配置为主机模式将电脑和HC05的保存连接删除。 单击下方更多蓝牙设置&#xff0c;进行蓝牙串口的配置。 添…

HC05蓝牙点亮LED

本文是对基于STM32的HC05蓝牙点灯实验&#xff0c;目的在于认识HC05蓝牙模块&#xff0c;学会配置HC05&#xff0c;知道怎么用蓝牙在手机上控制单片机并且传输数据&#xff0c;虽然本文只控制led&#xff0c;但是点灯就是基础&#xff0c;主要在于学习hc05蓝牙模块。 1.认识一下…

两个hc05蓝牙模块在两块单片机上通信(附完整代码)

目录 第一步&#xff1a;进入AT模式 第二步&#xff1a;同时插在电脑上实现通信 第三步&#xff1a;单片机上通信 代码链接 所需材料&#xff1a;两个hc05蓝牙&#xff0c;两个usb转串口模块&#xff0c;两块单片机 第一步&#xff1a;进入AT模式 接线图如下所示 HC-05蓝牙…

stm32+hx711+蓝牙hc05 称重系统(蓝牙电子秤)

stm32称重模块hx711蓝牙模块hc05 本项目使用主控stm32f103c8t6&#xff0c;称重模块hx711&#xff0c;蓝牙模块hc05上传至手机app/电脑app显示数值 模块 1、stm32f103c8t6最小系统板 2、hx711 HX711 模块 A 通道带有 128 倍信号增益&#xff0c;可以将 5mV 的电压放大 …

蓝牙模块HC05遇到的一些常见的问题

调模块总是让人很头疼&#xff0c;有时候遇到一些其实很简单的问题也找不到原因&#xff0c;着实难受。这里写一点我在配置HC05遇到的一些常见的问题和对一些问题的理解。 如果你觉得对你有帮助&#xff0c;希望点个赞再走&#xff0c;如果按照本文没解决你的问题&#xff0c;下…

51单片机蓝牙模块(HC05)运行原理

51单片机蓝牙模块&#xff08;HC05&#xff09;及其运行原理 目录 51单片机蓝牙模块&#xff08;HC05&#xff09;及其运行原理一、测试蓝牙模块二、配置蓝牙模块三、烧写程序四、测试参考博文 一、测试蓝牙模块 在所有工作进行之前首先看一看自己的蓝牙模块是否是正常的&…

HC-05的使用-详细

蓝牙转串口模块HC-05模块使用记录 最近在弄一个需要无线传输数据的项目&#xff0c;虽然以前也接触过HC-05这个模块&#xff0c;但是始终只是知道简单的使用&#xff0c;借这个机会更加深入的学习一下这个模块。 初识HC-05 BLK-MD-HC-05蓝牙模块是专为智能无线数据传输而打造…

STM32系列——手把手教你蓝牙模块HC05、HC06的使用,重在“用起来”(HAL库)

前言 不论是HC05还是HC06&#xff0c;我们用到的都是蓝牙模块的透传功能&#xff0c;只需要用到4个引脚&#xff1a;RXD、TXD、VCC&#xff08;5V&#xff09;、GND。 HC-05的使用 1、HC-05有6个引脚&#xff0c;但是我们只用到4个。 2、HC-05正面有一个按键。与HC-06的区别是&…

基于 OSGi的企业级开发框架实践——认识OSGi和SpringDM

一. OSGi基础 1. 什么是OSGi OSGi——Open Service Gateway Initiative&#xff0c;最初的目的是为各种嵌入式设备提供通用的软件运行平台。后来经过10年的发展和壮大&#xff0c;OSGi已经不只是在嵌入式设备中应用&#xff0c;而是被推广到各种其他的应用领域&#xff0c;比如…

Kotlin + Spring Boot: 下一代企业级开发

Kotlin Spring Boot: 下一代企业级开发 前端 React UXCore &#xff08;使用 nowa&#xff09;学习 Jietu20171210-022532.jpg Jietu20171210-022551.jpg image.png 工程源代码&#xff1a;https://github.com/KotlinSpringBoot/wekool

《Qt 企业级开发》

作者&#xff1a; 一去、二三里 个人微信号&#xff1a; iwaleon 微信公众号&#xff1a; 高效程序员 《Qt 企业级开发》 是亮哥专门打造的一个 Qt 终极篇 专栏&#xff0c;主要面向企业级一站式开发&#xff0c;包括&#xff1a;模块化开发、日志输出、打包发布、单元测试、自…

BladeX企业级开发平台商业版源码,BladeXAvue联合版

BladeX企业级开发平台 BladeX是一款精心设计的微服务架构&#xff0c;提供 SpringCloud 全套解决方案 开源中国首批完美集成 SpringCloud Alibaba 系列组件的微服务架构 基于稳定生产的商业项目升级优化而来&#xff0c;更加贴近企业级的需求 追求企业开发更加高效&#xff0c…

JAVA企业级开发技术

传统框架 SpringMVC(表现层)Struts2(表现层)Mybatis(数据层)Hibernate(数据层)SpringData Jpa(数据层) 开发中比较常见的组合: SSM : Spring-SpringMVC-MybaitsSSH :Spring-Struts2-hibernate 2017年热门开发框架 Springboot快捷开发,封装牛逼,简单入门 SpringCloud 通过Spr…

Spring Boot 企业级开发课后题答案

Spring Boot 企业级开发课后题答案 黑马程序员 加粗字体为答案 转发请注明出处【感谢】 第一章 1.1 填空题 Pivotal 团队在原有 spring 框架的基础上开发了全新的Spring Boot框架。Spring Boot框架在开发过程中大量使用 约定优先配置 的思想来摆脱框架中各种复杂的手动配置。…

SpringBoot企业级开发

根据书籍《SpringBoot企业级开发教程》梳理SpringBoot开发框架&#xff0c;代码在本人Mac运行通过&#xff0c;IDE是IntelliJ。 SpringBoot知识图谱&#xff1a; 链接&#xff1a;https://pan.baidu.com/s/1CXMCMBimTPk8kUYir4JETg 提取码&#xff1a;bnpb 部分截图&#…

企业级应用开发(SSM) Spring

目录 一&#xff1a;引言 1.1企业级系统&#xff1a; 1.2那么如何去应对企业级应用开发 1.3 Spring的绿草丛 二&#xff1a;Spring的绿草丛 2.1 Spring 介绍 2.2 Spring两大核心技术 a.控制反转&#xff08;IoC(Inversion of Control) / 依赖注入&#xff08;DI)&#xf…

2019泰迪杯C题案例分析-python大数据自动化数据挖掘

第七届“泰迪杯”数据挖掘挑战赛——C 题&#xff1a;运输车辆安全驾驶行为的分析 一、问题背景二、研究问题三、分析问题excel的批量处理时间、速度、方向角的处理经纬度的处理大数据处理的优化 一、问题背景 车联网是指借助装载在车辆上的电子标签通过无线射频等识别技术&am…

利用SPSS Modeler进行数据挖掘——探究不同程序语言的就业情况

欢迎加入程序员QQ交流群&#xff5e;&#xff5e;&#xff1a;859022876 程序员 本次SPSS Modeler项目实战&#xff0c;是我个人课余做的一个简单案例&#xff0c;因为本人也是互联网大家庭中的一员&#xff0c;因此最关心的必定是程序语言的未来走势和就业情况&#xff0c;于是…

数据挖掘实战—餐饮行业的数据挖掘之数据探索(EDA)

文章目录 引言一、前期准备1.目标定义与任务理解 二、数据采集与抽样三、数据探索1.数据质量分析1.1缺失值分析1.1.1缺失值可视化1.1.2描述性统计1.1.3统计缺失数与缺失率 1.2异常值分析1.2.1 3σ原则1.2.2箱型图分析 1.3一致性分析1.4重复数据处理 2.数据特征分析2.1分布分析2…

数据挖掘实战—餐饮行业的数据挖掘之数据预处理

文章目录 引言一、数据清洗1.缺失值处理1.1 拉格朗日插值法1.2牛顿差值法 2.异常值的处理 二、数据集成1.实体识别2.冗余属性识别3.数据变换3.1 简单函数变换3.2 规范化3.2.1 最小-最大规范化3.2.2 零-均值规范化&#xff08;标准化&#xff09;3.2.3 小数定标规范化 3.3 连续属…