E105-BS21 系列蓝牙星闪模块 AT 指令集总结与详解

一、核心总结

E105-BS21 系列蓝牙星闪模块基于 SLE 星闪技术,支持通用 AT 指令操作,具备简单快捷的配置特性,广泛应用于智能穿戴、家庭自动化、智能家电、汽车、工业互联网、数据采集等多领域。模块核心功能涵盖设备测试、串口配置、星闪模式切换、连接管理、参数调整、数据传输、休眠控制等,支持 SERVER/CLIENT 双工作模式,串口默认波特率 115200bps(8N1 配置),指令执行应答为 “OK”,错误应答为 “ERROR”,参数均为 ASCII 格式,且不区分大小写。

二、E105-BS21 系列 AT 指令集完整表格

指令类别指令格式描述参数说明示例响应格式
测试指令AT测试串口通信是否正常ATOK<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,0OK<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+SLEADVOK<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+SLEDISCONNECTOK<CR><LF>
星闪断开管理AT+SLEDISCONNECT=<mac>按 MAC 地址断开指定星闪连接<mac>:目标设备 MAC 地址(格式 XX:XX:XX:XX:XX:XX,16 进制)AT+SLEDISCONNECT=12:34:56:78:90:ABOK<CR><LF>
星闪扫描管理AT+SLESCANSTART=<duplicate>启动星闪设备扫描(仅 CLIENT 模式有效,支持过滤重复结果)<duplicate>:是否过滤重复结果(1 = 过滤,0 = 不过滤)AT+SLESCANSTART=1OK<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,0OK<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=6OK<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,20OK<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,50OK<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,50OK<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,1OK<CR><LF>
星闪数据传输AT+SLESEND=<len>,<data>星闪发送数据(需已建立连接)<len>:数据长度(1~240 字节,需与实际数据一致);<data>:发送数据(≤240 字节)AT+SLESEND=5,12345OK<CR><LF>
星闪透传模式AT+SLETRANS进入星闪透传模式(需已建立连接,退出输入 “CMD<CR><LF>”)AT+SLETRANSOK<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=1OK<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=1OK<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=1OK<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=1OK<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 模式配置流程
  1. 测试串口:发送 “AT”,接收 “OK” 确认通信正常;
  2. 设置模式:发送 “AT+SLEMODE=1”,响应 “+EVENT:SLE MODE INIT...OK”;
  3. 配置参数(可选):设置广播间隙 “AT+SLEADVSET=200,200”(广播周期 25ms);
  4. 开启自动启动:发送 “AT+SLEAUTOSETUP=1”,模块重启后自动进入 SERVER 广播模式。
(2)CLIENT 模式连接与透传流程
  1. 设置模式:发送 “AT+SLEMODE=2”,响应 “+EVENT:SLE MODE INIT...OK”;
  2. 启动扫描:发送 “AT+SLESCANSTART=1”,获取周边设备 NAME、MAC、RSSI;
  3. 连接设备:发送 “AT+SLECONNECT=12:34:56:78:90:AB”,响应 “+EVENT:SLE CONNECTING...OK”;
  4. 进入透传:发送 “AT+SLETRANS”,响应 “OK” 后即可直接传输数据;
  5. 退出透传:输入 “CMD<CR><LF>”,返回 AT 指令模式。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值