蓝牙模块芯片串口透传的AT指令模式和波特率是什么意思

news2024/11/28 6:33:37

一、什么是蓝牙串口透传模块的模式

蓝牙串口模块,一般都会有两个模式,即AT指令模式,以及透传模式

1、有的模块,会通过一个GPIO口来选择当前是什么模式,比如将一个IO口拉低则进入透传模式,也就是不再识别AT指令,即使收到AT指令也是直接透传给主机

2、有的模块,则是自动切换AT指令模式和透传模式。当蓝牙未连接的时候则是AT指令模式,一旦蓝牙被主机连接了,则自动进入透传模式,进入透传模式之后AT指令就不再识别,转而变成普通数据发送给主机

3、另外还有的模块,就是不用区分两种模式,AT指令在整个蓝牙模块的生命周期都是有效的,不管连接或者未连接,都是自动识别 。识别到AT指令则是当做命令去处理,非AT指令则是当作普通数据去处理,比如:KT6368A双模蓝牙芯片就是这么处理的

这样做的坏处是,加入透传的数据里面也有符合规则的AT指令,就会被当做AT指令处理了,不再透传给上位机了。

二、蓝牙模块的串口波特率

主流的蓝牙模块,基本都是串口接口,也就是UART接口。但是也不排除有其他的接口,比如IIC、SPI等等,这类型的接口产品非常的少

1、主流的还是串口,这样比较容易被广大的工程师群体所接受

蓝牙模块的串口AT指令,也是基于早期的电话控制协议改写来的,也就是说它生来并不是标配,也不是标准。而是在广大的工程师群体使用过程中,最后大家慢慢的达成了默契,形成了共识性的标准而已

  1. 所以才会是今天看到的百花齐放的样子,采用串口通讯,AT指令设置参数。比如AT指令设置蓝牙名称,AT指令设置串口的波特率等等 。还有更高级的比如蓝牙模块不需要设置波特率,他是自动识别的
  2. 这里拿KT6368A双模蓝牙芯片的串口部分来举例说明,串口的规则是怎么样的

通讯标准:115200 bps  --- 用户可以通过串口指令设置详见3.2

数据位  :8   停止位  :1   校验位  :none     流控制  :none

注意:所有的指令的设计,都是有规律的,不是随意划分的,可以对照下面找一下规律

控制指令格式:AT+<CMD>[<param>]\r\n   ---- 所有的都是字符,不是十六进制数

数据反馈格式:<IND>[<param>]\r\n

数据反馈格式:<IND>[<param>]\r\n

AT+ :   控制指令是控制主机给KT6368A的控制命令,以“AT+ ”开始

<CMD> :后面紧跟<CMD>控制 ,通常是2个字符

[<param>] :如果CMD后面有参数,则紧跟着[<param>]

\r\n    :最后以\r\n结束,字符型换行,windows就是回车键。十六进制0x0D,0x0A

<IND>    :数据反馈是蓝牙把各种状态和数据信息反馈给主机,以<IND>作为开头

AT指令的举例如下:

 

  1. 这当然一般的蓝牙模块都可以使用AT指令去修改波特率,这样就可以更好的兼容到任何产品里面去,但是一般的产品大部分都是9600或者38400,再或者115200

很少的应用场景需要超高的波特率,所以KT6368A的芯片就定义默认为115200

 

5、蓝牙测试模块的设计参考如下:包含PCB和原理图

 

 

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

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

相关文章

element-ui 表格el-table高度不是一个固定值时固定表头

elementui中为表格组件提供了height属性实现固定表头 height可以为数字或者字符串&#xff0c;当为一个数字时表示固定的高度&#xff0c;也可以为百分比等字符串。 当height不是一个固定值时&#xff0c;如期望表格可以填充完页面剩余空间&#xff0c;并且固定表头时&#x…

Mysql之常见可视化管理工具

mysql在日常开发中作为基础软件&#xff0c;对其数据的管理必不可少&#xff0c;除了系统自带的命令行管理工具之外&#xff0c;还有许多其他的图形化管理工具&#xff0c;下面介绍常见的mysql图形化管理工具。 1、Navicat Navicat 是一个桌面版 MySQL 数据库管理和开发工具。…

【Linux操作系统】程序的编译和动静态链接

文章目录一.编译写在前面1.预处理2.编译3.汇编二.(动静态)链接1.动态链接2.静态链接3.静态链接库的下载安装4.windows下动静态库的后缀一.编译 写在前面 编译这整个过程都只是在编译你自己写的代码,直到链接才让你的代码和库的代码关联起来,最终形成可执行程序 源程序到可执行…

靶机测试Os-ByteSec笔记

靶机测试Os-ByteSec笔记 靶机描述 Back to the Top Difficulty : Intermediate Flag : 2 Flag first user And second root Learning : exploit | SMB | Enumration | Stenography | Privilege Escalation Contact … https://www.linkedin.com/in/rahulgehlaut/ This w…

EXSi root密码忘记通过centos7镜像破解

1.安装软碟通UltraISO刻录U盘启动盘 下载阿里云centos7镜像&#xff0c;选择mini的链接&#xff1a;https://mirrors.aliyun.com/centos/7.9.2009/isos/x86_64/CentOS-7-x86_64-Minimal-2207-02.iso?spma2c6h.25603864.0.0.28f76aeapbXyYT 打开软碟通&#xff0c;打开下载的…

C语言宏定义立即数后缀U的含义

背景 在看开源的相关代码中&#xff0c;会有下面的宏定义用法 #define TEST_VALUE (0xFFFFFFFFU) 其和下面的宏定义区别是什么呢&#xff1f; #define TEST_VALUE (0xFFFFFFFF) 答疑 U表示 unsigned 无符号后缀&#xff0c;关于后缀的表述C99标准有如下定义&…

私有部署V3.8:自建内部应用库和预置应用

2022年12月27日&#xff0c;明道云私有部署V3.8正式发布。除了同步更新明道云SaaS版V7.8的功能以外&#xff0c;V3.8还将应用库功能下放至私有部署&#xff0c;私有部署用户可以自建企业内部应用库&#xff0c;并且给新创建的组织预置应用了。 注意&#xff1a;该功能仅面向明…

CSS知识点精学4-学成项目案例实现

根目录 先写好项目根目录 网站的首页,所有网站的首页都叫index.html,因为服务器找首页都是找index.html 一般网站页面配套的css文件与网站设置为相同的名字 比如index.html搭配index.css 准备工作 首先&#xff0c;我们发现没一个模块都是居中显示的&#xff0c;抓住一个边…

Python压缩模块gzip

文章目录初步认识压缩和解压缩函数初步认识 gzip是用于处理gzip格式的模块&#xff0c;相当于是zlib模块面向文件的一个应用&#xff0c;其最常用的函数为open。 有了open&#xff0c;那就得演示一下文件读写 import gzip with gzip.open(test.txt.gz, wb) as f:f.write(&qu…

Halcon笔记1

一、前言 最近来触碰一下halcon&#xff0c;一直以来作为ai算法工程师&#xff0c;虽然知道halcon&#xff0c;但是一直也没有用过 对于我们用户来说&#xff0c;halcon与opencv的差距主要在下面&#xff1a; &#xff08;1&#xff09;halcon是闭源的&#xff0c;商业的软件…

ATJ2158 LRADC的使用

LRADCLRADC对应引脚LRADC采样电压范围及位数使用LRADC涉及到的驱动文件如何使用不同的LRADC通道LRADC对应引脚 LRADC对应引脚备注LRACDC1WIO0/WIO1LRACDC2GPIO8/GPIO20LRACDC3GPIO9/GPIO21LRACDC4GPIO35LRACDC5GPIO5LRACDC6无没有找到相应的引脚LRACDC7GPIO63 LRADC采样电压范…

剑指 Offer 22. 链表中倒数第k个节点

剑指 Offer 22. 链表中倒数第k个节点 题目 输入一个链表&#xff0c;输出该链表中倒数第k个节点。为了符合大多数人的习惯&#xff0c;本题从1开始计数&#xff0c;即链表的尾节点是倒数第1个节点。 例如&#xff0c;一个链表有 6 个节点&#xff0c;从头节点开始&#xff0…

基于R的Bilibili视频数据建模及分析——聚类分析篇

基于R的Bilibili视频数据建模及分析——聚类分析篇 文章目录基于R的Bilibili视频数据建模及分析——聚类分析篇0、写在前面1、数据分析1.1 聚类分析1.2 聚类统计1.3 系统聚类1.4 Kmeans与主成分分析2、参考资料0、写在前面 实验环境 Python版本&#xff1a;Python3.9Pycharm版本…

python打包windows服务 开机自启动守护进程

自启动方法一&#xff1a;系统自启动设置python程序开机自启动1、创建一个xxx.bat文件&#xff0c;右键编辑2、在xxx.bat文件里面写入以下内容后保存&#xff1a;&#xff08;可以按照如下流程自己去cmd中测试一下&#xff09;d: #如果需要开机自启动的python程序在c盘&#xf…

Typora插图免费上传云端教程(太香了)

1、前言 我们平时在使用Typora时&#xff0c;文档中的图片一般是保存在本地&#xff0c;很方便&#xff0c;但是有些场景也有问题&#xff0c;比如我全部拷贝到有道云笔记中或者全部拷贝到CSDN中去发布时&#xff0c;你会发现&#xff0c;所有图片都无法预览了&#xff0c;此时…

不要为了“分库分表”而“分库分表”

数据库瓶颈 分库分表 分库分表工具 分库分表带来的问题 什么时候考虑分库分表 数据库瓶颈 不管是IO瓶颈还是CPU瓶颈&#xff0c;最终都会导致数据库的活跃连接数增加&#xff0c;进而逼近甚至达到数据库可承载的活跃连接数的阈值。在业务service来看&#xff0c; 就是可用…

解析HTTP请求报文(GET、POST)

目的&#xff1a; 一个WEB服务器需要解析客户端&#xff08;浏览器&#xff09;发来的请求&#xff0c;两种常见的请求方式是GET和POST。 GET的请求格式&#xff1a; GET请求没有请求体只有请求头GET请求的请求参数放在URL后加上一个"?"的后面&#xff0c;参数以…

时序图文献精度——1.2018-KDD-Embedding Temporal Network via Neighborhood Formation

Embedding Temporal Network via Neighborhood Formation Abstract 作者发现&#xff0c;在现有的研究中&#xff0c;以节点间顺序交互事件为特征的网络的完整时间形成过程还很少被建模&#xff0c;在这边文章中&#xff0c;作者引入邻域形成序列的概念来描述节点的演化&…

第四篇 - 对象的深层劫持

一&#xff0c;前言 上篇&#xff0c;主要介绍了在 Vue 的数据初始化流程中&#xff0c;对象属性的单层劫持是如何实现的 回顾一下&#xff0c;主要涉及以下几个核心点&#xff1a; data 为函数和对象的处理&#xff0c;及当 data 为函数时的 this 指向问题Observer 类&…

一文弄清楚vue中的computed和methods

1.实现业务我们现在需要实现一个业务&#xff0c;就是我们有一个输入框&#xff0c;之后我们修改输入框的值&#xff0c;就在此时输入框的值会呈现到页面中的h1标签上去2.利用Vue中的插值语法实现业务2.1什么是插值语法&#xff1f;插值语法就是vue中用来存放预留值得方法&…