智能无障碍轮椅——DX-BT05 4.0蓝牙模块

news2025/2/1 22:38:57

文章目录

  • 常用的蓝牙模块有哪几种?
  • 蓝牙的透传
  • 蓝牙的运行模式
  • 开发方式
    • AT指令集开发方式
    • AT指令集
  • BT-05调试
    • 硬件图
    • DX-BT05 4.0蓝牙模块介绍
    • 连接步骤:
    • 常用的几个AT指令
  • 主模式的AT指令

常用的蓝牙模块有哪几种?

  • 蓝牙主要有HC-05、HC-06、BT-04、BT-05等型号的蓝牙,它们在使用、控制等方面存在一些区别。
    在这里插入图片描述
    参考博文:蓝牙模块调试总结(BLE\HC-05\HC-06\HC-01\MLT-BT05)

蓝牙的透传

蓝牙模块支持透传

透传,又称透明传输,具体来说就是“输入即输出(如从WiFi模块串口输入的字符会透传到服务器端)”,数据不改变,不同协议之间的转换(如串口到WiFi、蓝牙等)由模块完成。使用者无需关心内部具体实现,因此模块对于使用者是“透明的”、似乎不存在的(因为可无视中间的实现原理)。一个高度封装的模块,应该隐藏内部实现细节,仅对外提供使用接口。

蓝牙的运行模式

  • 蓝牙模块支持多种运行模式:从设备模式、主设备模式、广播模式、Mesh组网模式【常见的蓝牙模块的工作模式你了解几种?一文介绍4种】

  • 注意:以上讨论的各种型号的蓝牙模块的一个重要区别在于HC-06和BT04只支持从设备模式,而HC-05支持从设备模式,也支持主设备模式。也正是因为这一点,也导致了它们的第二个重要区别:它们的AT指令不同。

开发方式

AT指令集开发方式

接线方式:

USB转TTL蓝牙模块
RXTX
TXRX
5V5V
GNDGND

AT指令集

  • 首先需要明确一点,那就是不同型号的蓝牙的AT指令是不完全一样的,一定要参考手册,而且AT指令只有蓝牙在AT状态下才能有效。

  • 注意:部分蓝牙模块AT指令之后要加回车(\r\n),有些不用,可以在XCOM软件设置发送新行则无须在输入框按下回车键或\r\n,且AT指令不分大小写。

  • HC-06也和BT-04一样,一旦上电即进入AT模式,不连接的状态下。BT-04的AT指令需要换行HC-06的AT指令不需要回车换行。BT-04和HC-06默认的波特率为9600

  • HC-05直接连接USB转TTL是无法进入AT模式的,需要先按住按钮再上电,这样就能进入到AT模式,此时灯为慢闪状态;而如果直接上电,指示灯为快闪状态,这种状态为等待连接状态,AT指令无效。且HC-05进入AT模式默认的波特率为38400

BT-05调试

硬件图

在这里插入图片描述

DX-BT05 4.0蓝牙模块介绍

带底板的模块一共有6个引脚,分别是:

项目Value
STATE连接状态引脚
RXD串口接收引脚
TXD串口发送引脚
GND电源地
VCC供电电源3.3V
EN空引脚
  • 从蓝牙 4.0 开始有两个分支,经典 4.0 和 BLE4.0,经典 4.0 就是传统的3.0 蓝牙升级而成,向下兼容。而 BLE 4.0 是一个新的分支,不向下兼容。BLE 是 Bluetooth Low Energy 低功耗蓝牙的缩写,顾名思义,其功耗较低。

  • BLE 不是设计为传输大量数据的,但是其有距离远(100 英尺/60 米),功耗低(休眠模式下 9~800uA)等优势

  • 使用前要先在AT模式进行配置。配置蓝牙名称、密码、波特率、主从机等(AT指令),蓝牙模块指示灯快闪是普通模式,慢闪是进入AT模式。

  • led 指示蓝牙连接状态,闪烁表示没有蓝牙连接,常亮表示蓝牙已连接并打开了端口,STATE 脚输出高电平为已连接,其他状态为低电平。蓝牙连接以后自动切换到透传模式

  • 请勿在设置里面搜索蓝牙,手机系统默认在经典模式下,不支持搜索 BLE 4.0 蓝牙 。

  • AT 指令不区分大小写,均以回车、换行字符结尾:\r\n

  • DX-BT05 4.0 蓝牙串口模块AT 指令集为 Command 指令集

连接步骤:

  • 看到蓝牙模块上的指示灯开始慢闪,就是进入了AT模式
  • 在XCOM上位机中设置波特率为9600bps或115200【默认值可能不一样】
  • 发 AT 指令时必须回车换行【在XCOM软件设置发送新行则无须在输入框按下回车键或\r\n】, AT 指令只能在模块未连接状态下才能生效,一旦蓝牙模块与设备连接上,蓝牙模块即进入数据透传模式
    在这里插入图片描述
  • 模块重新上电,返回正常模式,输入配对码,连接蓝牙,打开手机端蓝牙调试助手,建立蓝牙通信

常用的几个AT指令

测试指令:
AT

查看模块AT指令集:
AT+HELP\r\n

获取软件版本号:
AT+VERSION

获取模块蓝牙地址:
AT+LADDR

设置/查询设备名称:
AT+NAME DX-BT05\r\n ——设置模块设备名为:“DX-BT05”【NAME后有空格】
AT+NAME ——查询模块设备名

设置/查询-配对码:
AT+PIN123123\r\n——配对码(自己随意设置)【PIN后无空格】
AT+PIN—— 默认值:123456
PIN码只能为6位!

设置/查询-波特率:
AT+BAUD5——5表示波特率为19200
AT+BAUD——查询波特率
1——1200
2——2400
3——4800
4——9600
5——19200
6——38400
7——57600
8——115200
9——230400

  • 如果修改了串口的波特率,则需要关闭串口后重新设置串口助手的波特率,否则可能出现无法接受数据或乱码的情况。

设置/查询—串口停止位:
AT+STOP0——设置校验位为0
AT+STOP ——查询停止位
0——1 停止位
1——2 停止位

设置/查询—串口校验位
AT+PARI0——设置校验位为无校验位
AT+PARI——查询校验位
0——无校验
1——奇校验
2——偶校验

设置/查询—主/从模式:
AT+ROLE0——设置为主模式
AT+ROLE——查询模式
Param:(0、1)
0——从设备
1——主设备
默认值:0

设置/查询—模块鉴权工作类型:(重启生效)
AT+TYPE0——设置为无密码
AT+TYPE——查询模块鉴权工作类型
Param:(0~3)
0——无密码
1——简易配对
2——密码配对
3——密码配对并绑定
默认值为0

软件重启(500ms 后重启):
AT+RESET——发送AT回车,显示OK。也可以改蓝牙名称,但其他的指令几乎都不可以的时候使用

主模式的AT指令

  • 主模块连接从模块需要通过 AT 指令进行连接(详情请参照 BT05 AT 指令集)

参考博文:【嵌入式模块】蓝牙模块使用总结

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/104284.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

SpringBoot整合mybatis实现增删改查、分页查询

前提: 先搭建出最基本的SpringBoot项目 SpringBoot框架快速入门搭建Hello World,请点击下面链接:https://blog.csdn.net/KangYouWei6/article/details/127018638 一、建立数据库 /*Navicat Premium Data TransferSource Server : 本地…

搜狗SEO优化技巧,搜狗收录批量查询技巧

搜狗SEO优化技巧 首先要知道搜索引擎的搜索原理,简而言之就是蜘蛛怎么爬取你的新网站,一般新的企业网站蜘蛛采取的是横向抓取,先收录首页,然后栏目页、子网页,这样一级一级的往下走,建网站用com域名。新…

设计测试用例的方法

设计测试用例的方法有很多,等价类划分法是重点,边界值分析法次之,对于因果图法知道概念就行,老师说考试不会考,但是历年考试中貌似考过一次,这就不知道了,反正考试大题基本课本例题,…

(十八)Vue之生命周期

文章目录引出生命周期外部的定时器实现生命周期实现生命周期详解挂载流程更新流程销毁流程总结Vue学习目录 上一篇:(十七)Vue之自定义指令 引出生命周期 先看一个需求:一上来就让一段文字的透明度循环从1-0-1的过程&#xff0c…

Fabric.js 文本自动换行的实现方式

本文简介 点赞 关注 收藏 学会了 在 fabric.js 提供的文本组件中,默认状态是不会自动换行。如果你的使用场景中需要自动文本自动换行,可以使用 Textbox ,并将 splitByGrapheme 设置为 true 即可。 文本自动换行 如果需要实现本文自动换行…

盘点:保护企业数据安全的10种方法

即便是大型企业也无法防止网络攻击导致的数据泄露,但有多种保护数据安全的方法。 许多公司谨慎处理敏感信息,包括客户个人信息、企业财务记录和账户,以及企业暂时不想泄露的绝密项目,保持数据的安全至关重要。 全球知名企业发生了…

Java(十五)----Stream流

1 Stream流 1.1 Stream流的优势 Java8中有两大最为重要的改变。第一个是 Lambda 表达式;另外一个则是 Stream API。 Stream API ( java.util.stream) 把真正的函数式编程风格引入到Java中。这是目前为止对Java类库最好的补充,因为Stream API可以极大提…

11 深入了解InnoDB引擎

1. Innodb逻辑存储结构 表空间:ibd文件段segment:区extent:一个区大小为1m,里面有64个page页;为了保证页的连续性innodb会一次从磁盘申请4-5个区页page:一个page页大小为默认为16k行row:Trx id、…

深入探究Python上下文管理器

引子 上下文管理器是一种简化代码的有力方式,其内部也蕴含了很多Python的编程思想,今天我们就来探究一下Python的上下文管理器。 大家之前都知道,使用Python打开文件的时候最好要使用with语句,因为这样就算在文件操作中出现了异常…

基于java的校园共享自行车系统的设计与实现/校园共享单车管理系统

摘 要 伴随着社会以及科学技术的发展,互联网已经渗透在人们的身边,网络慢慢的变成了人们的生活必不可少的一部分,紧接着网络飞速的发展,管理系统这一名词已不陌生,越来越多的学校、公司等机构都会定制一款属于自己个…

React扩展:setState、lazyLoad、hook

目录 1.setState的两种写法 ①setState(对象,[callback])②setState(函数,[callback])函数可以接收到stata和props,callback回调函数能获取状态更新后的数据 写了个Demo组件 import React, { Component } from reactexport default class Demo extends Component…

万岳直播电商系统源码代码分析

以小编经验来看,传统商户领域的客流量受地区的限制,往往比较单一、固定,商家需压耗费大量的时间进行打造IP,而电商直播系统的出现则完全打破了这一规则,商家可以通过直播的形式,轻松获取源源不断的客流量&a…

网络中的一些基本概念(总结)

目录 1.IP地址 2.端口号 3.协议 4.五元组 5.协议分层 1.OSI七层模型 2.TCP/IP五层(四层)模型 6.网络分层对应 7.封装 8.分用 9.客户端和服务器 1.IP地址 IP地址是用来定位主机的网络地址,主要用于标识主机和一些其他的网络设备,比如路由器通常是用点分十进制来表示的]…

节律失调:Theta-Gamma耦合精度改变损害老年人的联想记忆

根据著名的神经通信理论,振荡活动的精确协调能够形成联想记忆。我们认为,正常的认知老化会损害神经通信的时间精确性,从而损害联想记忆的形成。我们发现,在年轻人和老年人中都存在高频gamma功率与低频theta相位的耦合支持联想记忆…

地下水监测系统介绍 地下水水位在线监测系统解决方案及应用

平升电子地下水监测系统/地下水水位在线监测系统解决方案由地下水自动监测站监测设备和监测中心平台软件组成。监测设备自动采集、存储地下水水位、水温、水量、水质数据,通过4G/NB-IoT/北斗无线通信网络定时上报至省/市/县级监测中心平台,平台自动接收和…

神奇的 Excel 插件:Azure DevOps 插件

我想离开测试部分,与您分享一个插件,我发现它在我作为业务分析师的商业生活中非常有用。如果您与 Azure DevOps Board 擦肩而过,本文适合您:) 本周,我将与您分享一个我用来跟踪在 Azure DevOps 中完成的工作的插件。 在解释它的安装和使用之前,我想分享一下为什么我需要…

【Lilishop商城】No3-11.模块详细设计,促销模块(优惠券、满减、秒杀、积分)的详细设计

仅涉及后端,全部目录看顶部专栏,代码、文档、接口路径在: 【Lilishop商城】记录一下B2B2C商城系统学习笔记~_清晨敲代码的博客-CSDN博客 全篇会结合业务介绍重点设计逻辑,其中重点包括接口类、业务类,具体的结合源代…

skynet开发一个猜数字游戏

skynet开发一个猜数字游戏游戏简介接口设计和实现agent服务接口room服务接口hall服务接口redis服务gate服务接口编写skynet的config文件游戏演示总结后言游戏简介 猜数字游戏目的是掌握 actor 模型开发思路。 规则: 满三个人开始游戏,游戏开始后不能退…

1.初识Node.js

由于浏览器中有Javascript解析引擎,所以写的javascript可以在浏览器中执行,不同的浏览器有不同的JS解析引擎。由于浏览器内置了DOM,BOM,AJAX这种API,所以JS才能使用他们。 Node.js和浏览器都可以为JS提供运行环境,可以使用Node.j…

【Python机器学习】神经网络中误差反向传播(BP)算法详解及代码示例(图文解释 附源码)

需要全部代码请点赞关注收藏后评论留言私信~~~ 误差反向传播学习算法 用神经网络来完成机器学习任务,先要设计好网络结构S,然后用训练样本去学习网络中的连接系数和阈值系数,即网络参数S,最后才能用来对测试样本进行预测。 在研…