【嵌入式模块】UART通信模块

1. 蓝牙模块

1.1 简介

蓝牙模块可以将有线串口数据流六,转换为无线蓝牙数据流,实现无线串口功能;

蓝牙模块分为三个,分别如下图所示:

SPP = Serial Port Profile;串行端口配置文件(串口协议)

BLE = Bluetooth Low Energy;串行端口配置文件(串口协议)

蓝牙类别 标志 特性
经典蓝牙 SPP,蓝牙3.0及以下 功耗高,速率较快,先配对后连接
低功耗蓝牙 BLE,蓝牙4.0及以上 功耗低,速率较慢,快速连接 增加组网、广播、定位等新功能
双模蓝牙 SPP + BLE 同时集成经典蓝牙和低功耗蓝牙,兼容性更强

主从类别:

主从类别 特性
单从机 仅能被动等待主设备连接,无法主动发起连接请求
主从一体 可切换角色为主设备或从设备,作为主设备时,可主动发起连接请求

常用的蓝牙模块如下图所示:

型号 蓝牙类别 主从属性 核心特点 适用场景
HC-04 双模蓝牙(SPP经典蓝牙 + BLE低功耗蓝牙) 主从一体 同时支持经典SPP串口透传+BLE,安卓苹果手机都能直连,兼容HC05,可AT指令配置 项目需要同时兼容安卓经典蓝牙、苹果BLE,教学/智能小车
HC-05 经典蓝牙(SPP,蓝牙2.0) 主从一体 经典蓝牙标杆,速率高;必须配对,AT指令丰富,可做主设备主动连接其他蓝牙模块 传统单片机无线串口、模块之间组网,最经典教学模块
HC-08 BLE低功耗蓝牙(蓝牙4.0) 主从一体 BLE低功耗,功耗很小,不需要传统配对,快速广播连接;通信距离较远 电池供电设备,穿戴、传感器采集、苹果手机直连
JDY-31 经典蓝牙(SPP,蓝牙3.0) 单从机 仅从机,只能被动等待连接;价格便宜,引脚兼容HC05从机版本 简单单片机无线串口,手机控制小车,只需要从机场景
JDY-33 双模蓝牙(SPP + BLE4.2) 单从机 双模,同时支持SPP经典蓝牙+BLE;只能做从机,安卓苹果都能连接 低成本双模从机替代方案,不需要模块主动发起连接
BT16 BLE低功耗蓝牙 主从一体 BLE低功耗蓝牙模块,功耗低,BLE5.0,串口透传,体积小巧 电池供电物联网设备,低功耗无线数据采集

1.2 硬件连接

方法1:

此方法不需要单片机,不需要写程序,可以对蓝牙模块进行简单的通信测试;

都可以使用此链接方式,进行试验;

此外State引脚可以判断蓝牙是否连接;

Key引脚可以控制是否进入AT模式;

AT模式用于控制蓝牙模块;

方法2:

手机与单片机无线通信;

方法3:

单片机与单片机之间的通信;

1.3 蓝牙模块配置(AT模式)

蓝牙未连接,或者按住KEY不放,可以使模块进入AT模式,此时可以通过串口发送AT指令,可对蓝牙模块进行配置;

AT = Attention

AT 模式全称:AT Command Mode,AT 指令模式

以HC-04为例介绍AT指令:

AT指令 功能
AT 测试通讯
AT+BAUD 查询和设置串口波特率
AT+DEFAULT 参数恢复默认值
AT+ROLE 查询和设置角色(主设备/从设备)
AT+NAME 查询和设置经典蓝牙名称
AT+PIN 查询和设置经典蓝牙配对密码
AT+BNAME 查询和设置BLE蓝牙名称

对于相关的指令使用方法,可以参考对应的模块手册;

1.4 模块与手机的连接

使用对应的软件或者小程序控制;

1.5 蓝牙小程序

此时蓝牙模块经过USB转串口 与电脑相连;

手机小程序与蓝牙模块相连接;

此时可以实现无线透传;

电脑串口助手的数据,可以直接显示在蓝牙小程序上;

\r \n 的历史来源

起源于老式打字机,不是计算机发明的,是机械时代留下来的习惯。

  • CR(Carriage Return,\r,回车,0x0D)
    Carriage = 字车(装纸、带着打字头左右滑动的架子)
    Return:把字车推回这一行的最左端 。
    👉 只做光标回到行首,不往下走一行。
  • LF(Line Feed,\n,换行,0x0A)
    Feed = 走纸
    👉 纸向上卷一行 ,打字位置到下一行,但是还在本行最右边,不会跳到左边。

机械时代两个动作是分开的:

打完一行,先 CR(字车回到左边) ,再 LF(纸卷到下一行) 。

两个动作合起来,才能:到下一行开头 ,也就是 \r\n。

相关推荐
和侧1 小时前
离子注入后为什么必须配套退火工艺?
笔记·学习
TheBlackHoleLab5 小时前
【Vulnhub系列】DarkHole1: 渗透测试笔记,没有踩渗透的坑,却踩到了虚拟机平台的坑,人生处处是大坑
笔记·vulnhub·easy·darkhole1
ACP广源盛139246256736 小时前
硬件选型笔记:GSV2231@ACP,DP1.4 MST 一进三出多屏扩展方案评估
笔记·硬件架构·视频·mst·国产芯片
Awh-7 小时前
ARM 裸机开发 DAY11 学习笔记
arm开发·笔记·学习
志尊宝7 小时前
Vue3 零基础每日笔记(087):Vue3 高频面试题(下)
前端·javascript·vue.js·笔记·ecmascript·#vue.js
叶子丶苏7 小时前
VibeCoding实战三个AI小项目-VibeCoding入门笔记02
大数据·人工智能·笔记
Mr清奇7 小时前
AI辅助开发笔记(1)开发工具和配置
大数据·笔记·intellij idea
Go Work7 小时前
我把 @RefreshScope 挂错了类,新值一直灌不进去
经验分享·笔记
ss27310 小时前
AI时代首先数据库-PostgreSQL实战笔记 | 11 PostgreSQL安装部署常见问题排查与解决
数据库·笔记·postgresql