一、核心总结
E105-BS21 系列蓝牙星闪模块基于 SLE 星闪技术,支持通用 AT 指令操作,具备简单快捷的配置特性,广泛应用于智能穿戴、家庭自动化、智能家电、汽车、工业互联网、数据采集等多领域。模块核心功能涵盖设备测试、串口配置、星闪模式切换、连接管理、参数调整、数据传输、休眠控制等,支持 SERVER/CLIENT 双工作模式,串口默认波特率 115200bps(8N1 配置),指令执行应答为 “OK”,错误应答为 “ERROR”,参数均为 ASCII 格式,且不区分大小写。
二、E105-BS21 系列 AT 指令集完整表格
| 指令类别 | 指令格式 | 描述 | 参数说明 | 示例 | 响应格式 |
|---|---|---|---|---|---|
| 测试指令 | AT | 测试串口通信是否正常 | 无 | AT | OK<CR><LF> |
| 测试指令 | AT+DEVTYPE=? | 读取器件型号 | <dev>:器件型号(返回值) | AT+DEVTYPE=? | DEVTYPE=<dev><CR><LF>OK<CR><LF>(示例返回:DEVTYPE=E105-BS21<CR><LF>OK<CR><LF>) |
| 测试指令 | AT+FWCODE=? | 读取固件编码 | <fwcode>:固件编码(返回值) | AT+FWCODE=? | FWCODE=<fwcode><CR><LF>OK<CR><LF>(示例返回:FWCODE=7491-0-10<CR><LF>OK<CR><LF>) |
| 设备重启 | AT+REBOOT | 模块重启 | 无 | AT+REBOOT | +REBOOT<CR><LF>...+EVENT:MODULE INIT |
| 设备重启 | AT+RESTORE | 恢复出厂设置并重启 | 无 | AT+RESTORE | +RESTORE<CR><LF>...+EVENT:MODULE INIT |
| 串口设置 | AT+UART? | 查询串口配置(波特率 + 校验位) | <baud>:波特率(返回值);<parity>:校验位(0=8N1,1=8O1,2=8E1,返回值) | AT+UART? | +UART:<baud>,<parity><CR><LF>OK<CR><LF>(示例返回:+UART:115200,0<CR><LF>OK<CR><LF>) |
| 串口设置 | AT+UART=<baud>,<parity> | 设置串口配置(重启生效,自动保存) | <baud>:波特率(2400/4800/9600/19200/38400/57600/115200/230400);<parity>:校验位(0/1/2) | AT+UART=115200,0 | OK<CR><LF> |
| 星闪模式配置 | AT+SLEMODE? | 查询星闪工作模式 | <role>:工作模式(0 = 关闭,1=SERVER,2=CLIENT,返回值) | AT+SLEMODE? | +SLEMODE:<role><CR><LF>OK<CR><LF>(示例返回:+SLEMODE:1<CR><LF>OK<CR><LF>) |
| 星闪模式配置 | AT+SLEMODE=<role> | 设置星闪工作模式(切换前需关闭星闪,自动保存) | <role>:工作模式(0 = 关闭,1=SERVER,2=CLIENT) | AT+SLEMODE=2 | <CR><LF>+EVENT:SLE MODE INIT...<CR><LF>OK<CR><LF> |
| 星闪连接管理 | AT+SLEADV | 开启星闪广播(仅 SERVER 模式有效,断连后需手动触发) | 无 | AT+SLEADV | OK<CR><LF> |
| 星闪连接管理 | AT+SLECONNECT | 搜索同名设备并连接(仅 CLIENT 模式有效) | 无 | AT+SLECONNECT | <CR><LF>+EVENT:SLE CONNECTING...<CR><LF>OK<CR><LF> |
| 星闪连接管理 | AT+SLECONNECT=<mac> | 按 MAC 地址连接星闪设备(仅 CLIENT 模式有效) | <mac>:目标设备 MAC 地址(格式 XX:XX:XX:XX:XX:XX,16 进制) | AT+SLECONNECT=12:34:56:78:90:AB | <CR><LF>+EVENT:SLE CONNECTING...<CR><LF>OK<CR><LF> |
| 星闪断开管理 | AT+SLEDISCONNECT | 断开所有星闪连接 | 无 | AT+SLEDISCONNECT | OK<CR><LF> |
| 星闪断开管理 | AT+SLEDISCONNECT=<mac> | 按 MAC 地址断开指定星闪连接 | <mac>:目标设备 MAC 地址(格式 XX:XX:XX:XX:XX:XX,16 进制) | AT+SLEDISCONNECT=12:34:56:78:90:AB | OK<CR><LF> |
| 星闪扫描管理 | AT+SLESCANSTART=<duplicate> | 启动星闪设备扫描(仅 CLIENT 模式有效,支持过滤重复结果) | <duplicate>:是否过滤重复结果(1 = 过滤,0 = 不过滤) | AT+SLESCANSTART=1 | OK<CR><LF>+EVENT:SLE SCANING...<CR><LF>NAME:<name><CR><LF>MAC:<mac><CR><LF>RSSI:<rssi> |
| 星闪扫描管理 | AT+SLESCANSTOP | 停止星闪设备扫描(仅 CLIENT 模式有效) | 无 | AT+SLESCANSTOP | +EVENT:SLE SCAN STOP<CR><LF>OK<CR><LF> |
| 星闪地址配置 | AT+SLEMAC? | 查询星闪 MAC 地址及类型 | <mac>:MAC 地址(返回值);<type>:地址类型(0 = 静态,6 = 随机,暂不支持随机) | AT+SLEMAC? | +SLEMAC:<mac>,<type><CR><LF>OK<CR><LF>(示例返回:+SLEMAC:12:34:56:78:90:AB,0<CR><LF>OK<CR><LF>) |
| 星闪地址配置 | AT+SLEMAC=<mac>,<type> | 设置星闪 MAC 地址(连接前设置有效,自动保存) | <mac>:MAC 地址(格式 XX:XX:XX:XX:XX:XX,16 进制);<type>:地址类型(0 = 静态) | AT+SLEMAC=12:34:56:78:90:AB,0 | OK<CR><LF> |
| 星闪功率配置 | AT+SLEPWR? | 查询星闪输出功率 | <pwr>:输出功率(返回值,范围 - 127~20dBm,自动匹配最近档位) | AT+SLEPWR? | +SLEPWR:<pwr><CR><LF>OK<CR><LF>(示例返回:+SLEPWR:20<CR><LF>OK<CR><LF>) |
| 星闪功率配置 | AT+SLEPWR=<pwr> | 设置星闪输出功率(连接前设置有效,自动保存) | <pwr>:输出功率(范围 - 127~20dBm,自动匹配最近档位) | AT+SLEPWR=6 | OK<CR><LF> |
| 星闪广播参数 | AT+SLEADVSET? | 查询星闪广播间隙 | <max>:最大广播间隙(32~64000,单位 125us);<min>:最小广播间隙(32~64000,单位 125us) | AT+SLEADVSET? | +SLEADVSET:<max>,<min><CR><LF>OK<CR><LF>(示例返回:+SLEADVSET:200,200<CR><LF>OK<CR><LF>) |
| 星闪广播参数 | AT+SLEADVSET=<max>,<min> | 设置星闪广播间隙(连接前设置有效,自动保存) | <max>:最大广播间隙(32~64000,单位 125us);<min>:最小广播间隙(32~64000,单位 125us) | AT+SLEADVSET=20,20 | OK<CR><LF> |
| 星闪连接参数 | AT+SLECNTSET? | 查询星闪连接间隙、延迟周期、超时时间 | <max>:最大连接间隙(32~16000,单位 125us);<min>:最小连接间隙(32~16000,单位 125us);<latency>:延迟周期(0~499,单位 slot);<timeout>:超时时间(10~3200,单位 10ms) | AT+SLECNTSET? | +SLECNTSET:<max>,<min>,<latency>,<timeout><CR><LF>OK<CR><LF>(示例返回:+SLECNTSET:100,100,499,500<CR><LF>OK<CR><LF>) |
| 星闪连接参数 | AT+SLECNTSET=<max>,<min>,<latency>,<timeout> | 设置星闪连接参数(连接前设置有效,自动保存) | <max>:最大连接间隙(32~16000,单位 125us);<min>:最小连接间隙(32~16000,单位 125us);<latency>:延迟周期(0~499,单位 slot);<timeout>:超时时间(10~3200,单位 10ms) | AT+SLECNTSET=80,80,499,50 | OK<CR><LF> |
| 星闪扫描参数 | AT+SLESCANSET? | 查询星闪扫描间隔和扫描窗口 | <interval>:扫描间隔(32~64000,单位 125us);<window>:扫描窗口(32~64000,单位 125us,需≤扫描间隔) | AT+SLESCANSET? | +SLESCANSET:<interval>,<window><CR><LF>OK<CR><LF>(示例返回:+SLESCANSET:100,100<CR><LF>OK<CR><LF>) |
| 星闪扫描参数 | AT+SLESCANSET=<interval>,<window> | 设置星闪扫描参数(连接前设置有效,自动保存) | <interval>:扫描间隔(32~64000,单位 125us);<window>:扫描窗口(32~64000,单位 125us,需≤扫描间隔) | AT+SLESCANSET=100,50 | OK<CR><LF> |
| 星闪名称配置 | AT+SLENAME? | 查询星闪设备名称 | <name>:设备名称(返回值,≤30 字节) | AT+SLENAME? | +SLENAME:<name><CR><LF>OK<CR><LF>(示例返回:+SLENAME:EBYTE SLE<CR><LF>OK<CR><LF>) |
| 星闪名称配置 | AT+SLENAME=<name>,<save> | 设置星闪设备名称(连接前设置有效) | <name>:设备名称(≤30 字节);<save>:是否保存到 FLASH(1 = 保存,0 = 不保存) | AT+SLENAME = 星闪 BS21,1 | OK<CR><LF> |
| 星闪数据传输 | AT+SLESEND=<len>,<data> | 星闪发送数据(需已建立连接) | <len>:数据长度(1~240 字节,需与实际数据一致);<data>:发送数据(≤240 字节) | AT+SLESEND=5,12345 | OK<CR><LF> |
| 星闪透传模式 | AT+SLETRANS | 进入星闪透传模式(需已建立连接,退出输入 “CMD<CR><LF>”) | 无 | AT+SLETRANS | OK<CR><LF>(透传中发送 “CMD<CR><LF>” 返回:+EVENT:AT CMD<CR><LF>) |
| 星闪辅助功能 | AT+SLEAUTOSETUP? | 查询模块启动后是否自动开启星闪 | <enable>:使能状态(0 = 关闭,1 = 开启,返回值) | AT+SLEAUTOSETUP? | +SLEAUTOSETUP:<enable><CR><LF>OK<CR><LF>(示例返回:+SLEAUTOSETUP:0<CR><LF>OK<CR><LF>) |
| 星闪辅助功能 | AT+SLEAUTOSETUP=<enable> | 设置模块启动后是否自动开启星闪(自动保存) | <enable>:使能状态(0 = 关闭,1 = 开启) | AT+SLEAUTOSETUP=1 | OK<CR><LF> |
| 星闪辅助功能 | AT+SLEAUTOCONNECT? | 查询星闪是否自动连接 | <enable>:使能状态(0 = 关闭,1 = 开启,返回值) | AT+SLEAUTOCONNECT? | +SLEAUTOCONNECT:<enable><CR><LF>OK<CR><LF>(示例返回:+SLEAUTOCONNECT:0<CR><LF>OK<CR><LF>) |
| 星闪辅助功能 | AT+SLEAUTOCONNECT=<enable> | 设置星闪是否自动连接(自动保存) | <enable>:使能状态(0 = 关闭,1 = 开启) | AT+SLEAUTOCONNECT=1 | OK<CR><LF> |
| 星闪辅助功能 | AT+SLEAUTOTRANS? | 查询星闪连接后是否自动进入透传模式(断连返回 AT 模式) | <enable>:使能状态(0 = 关闭,1 = 开启,返回值) | AT+SLEAUTOTRANS? | +SLEAUTOTRANS:<enable><CR><LF>OK<CR><LF>(示例返回:+SLEAUTOTRANS:0<CR><LF>OK<CR><LF>) |
| 星闪辅助功能 | AT+SLEAUTOTRANS=<enable> | 设置星闪连接后是否自动进入透传模式(自动保存,断连返回 AT 模式) | <enable>:使能状态(0 = 关闭,1 = 开启) | AT+SLEAUTOTRANS=1 | OK<CR><LF> |
| 星闪辅助功能 | AT+SLEAUTORECONNECT? | 查询星闪断连后是否自动重连(SERVER 广播 / CLIENT 扫描) | <enable>:使能状态(0 = 关闭,1 = 开启,返回值) | AT+SLEAUTORECONNECT? | +SLEAUTORECONNECT:<enable><CR><LF>OK<CR><LF>(示例返回:+SLEAUTORECONNECT:0<CR><LF>OK<CR><LF>) |
| 星闪辅助功能 | AT+SLEAUTORECONNECT=<enable> | 设置星闪断连后是否自动重连(自动保存,SERVER 广播 / CLIENT 扫描) | <enable>:使能状态(0 = 关闭,1 = 开启) | AT+SLEAUTORECONNECT=1 | OK<CR><LF> |
| 星闪休眠控制 | AT+SLESLEEP | 进入永久休眠(仅 RST 或重新上电唤醒,唤醒时间约 430ms) | 无 | AT+SLESLEEP | <CR><LF>+EVENT:SLE SLEEP<CR><LF>OK<CR><LF> |
| 星闪休眠控制 | AT+SLESLEEP=<time> | 进入定时休眠(连接状态下不可用,到期自动唤醒) | <time>:休眠时间(1~600000ms) | AT+SLESLEEP=2000 | <CR><LF>+EVENT:SLE SLEEP<CR><LF>OK<CR><LF>(唤醒返回:+EVENT:SLE WAKEUP<CR><LF>) |
三、关键指令详细解释
1. 指令基础规则
- 所有 AT 指令均以 “AT” 开头,查询指令格式为 “AT+[X]?”,设置指令为 “AT+[X]=< 参数 >”,执行指令为 “AT+[X]”;
- 串口通信需以 “<CR><LF>”(回车 + 换行)结尾,指令响应同样以该格式结束;
- 指令参数中 “<>” 表示必填参数,“[]” 表示可选参数(本文表格已明确参数要求),禁止包含空格、制表符等不可见字符;
- 涉及 “连接前设置” 的指令(如 MAC 地址、功率、广播 / 连接 / 扫描参数),需在星闪连接建立前配置,否则需重启模块生效。
2. 核心功能指令说明
(1)星闪模式切换(AT+SLEMODE)
- 模块支持三种工作状态:关闭星闪(0)、SERVER 模式(1)、CLIENT 模式(2);
- SERVER 模式:启动后自动广播,断连后需通过 “AT+SLEADV” 重新开启广播;
- CLIENT 模式:需主动扫描并连接设备,支持按名称或 MAC 地址定向连接。
(2)连接管理指令
- 扫描指令(AT+SLESCANSTART):CLIENT 模式下使用,“<duplicate>=1” 时过滤重复 MAC 地址(00:00:00:00:00:00 为无效地址);
- 连接指令(AT+SLECONNECT):无参数时搜索同名设备,带 MAC 参数时精准连接指定设备,需确保 MAC 地址格式为 16 进制 6 组字符;
- 自动重连(AT+SLEAUTORECONNECT):开启后,SERVER 模式断连自动广播,CLIENT 模式断连自动扫描重连。
(3)数据传输指令
- 普通数据发送(AT+SLESEND):需指定数据长度和内容,长度范围 1~240 字节,长度值必须与实际数据一致;
- 透传模式(AT+SLETRANS):进入后可直接发送数据,无需附加指令格式,退出需输入 “CMD<CR><LF>”,适用于连续数据传输场景。
(4)休眠控制指令
- 永久休眠(AT+SLESLEEP):仅能通过硬件 RST 引脚或重新上电唤醒,唤醒耗时约 430ms;
- 定时休眠(AT+SLESLEEP=<time>):休眠时间 1ms~10 分钟,星闪处于连接状态时无法进入,需先断开连接。
3. 典型应用流程示例
(1)SERVER 模式配置流程
- 测试串口:发送 “AT”,接收 “OK” 确认通信正常;
- 设置模式:发送 “AT+SLEMODE=1”,响应 “+EVENT:SLE MODE INIT...OK”;
- 配置参数(可选):设置广播间隙 “AT+SLEADVSET=200,200”(广播周期 25ms);
- 开启自动启动:发送 “AT+SLEAUTOSETUP=1”,模块重启后自动进入 SERVER 广播模式。
(2)CLIENT 模式连接与透传流程
- 设置模式:发送 “AT+SLEMODE=2”,响应 “+EVENT:SLE MODE INIT...OK”;
- 启动扫描:发送 “AT+SLESCANSTART=1”,获取周边设备 NAME、MAC、RSSI;
- 连接设备:发送 “AT+SLECONNECT=12:34:56:78:90:AB”,响应 “+EVENT:SLE CONNECTING...OK”;
- 进入透传:发送 “AT+SLETRANS”,响应 “OK” 后即可直接传输数据;
- 退出透传:输入 “CMD<CR><LF>”,返回 AT 指令模式。

1116

被折叠的 条评论
为什么被折叠?



