组网模式协议使用说明¶
1.模块概述¶
ChirpLAN模块定位为一个支持网络和点对点协议的低频半双工Chirp模块,内置功能完整的 AT 指令, 使用串口进行数据收发,降低了无线应用的门槛,可实现一对一或一对多的通信应用场景。本说明书主要介绍ChirpLAN模块对网关协议通信的使用说明。
1.1 硬件快速入门¶
使用 TTL 工具(连接方式如下图)将模组接入串口设备(以 PC 机代替),SETA和SETB拉高,让模块进入AT运行模式。
打开ChirpLAN模块上位机设置工具,依次点击“打开串口(串口参数:115200,None,8,1)”、进入配置状态、读取参数、填写相关参数、设置参数,如下图所示。
模组协议选择 “网络”
入网信道(freq)、速率参数(bw/sf/cr)要一致
上下行频率表(上行8个,下行8个)要一致
加密方式及密钥要一致
应用ID要与网关应用ID一致
1.2 模块基本参数¶
分类 |
参数 |
取值 |
---|---|---|
无线参数 |
工作频段 |
398-510MHz |
无线参数 |
发射功率 |
NoPA:22dBm/PA:32dBm(峰值) |
无线参数 |
接收灵敏度 |
-140dBm |
无线参数 |
传输距离 |
(1)>300米 @SF7, BW250khz, TX power:22dBm |
无线参数 |
天线选项 |
外接天线 |
硬件参数 |
数据接口 |
串口:115200(默认) |
硬件参数 |
工作电压 |
NoPA:DC3.3V/PA:DC5.0V |
硬件参数 |
工作电流 |
Mode A : |
硬件参数 |
工作温度 |
-40℃ ~ +85℃ |
硬件参数 |
存储温度 |
-45℃ ~ +90℃ |
硬件参数 |
尺寸 |
34.5/*20.5/*4.1mm |
硬件参数 |
封装接口 |
SMT表贴 |
表 - 技术参数
1.3 引脚说明¶
引脚名称 |
IO 类型 |
引脚描述 |
---|---|---|
VCC |
电源 |
供电引脚 |
GND |
电源 |
参考地 |
ANT |
模拟 |
射频信号输入/输出端口, ANT 端口预留匹配电路, |
AUX |
输出 |
模块状态指示引脚: |
UART-RX |
输入 |
TTL 串口接收引脚 |
UART-TX |
输出 |
TTL 串口发送引脚 |
SETA |
输入 |
AT 与透传切换, 内部上拉, |
SETB |
输入 |
控制模块休眠, 内部上拉 |
注意: 调试时如果 SETA, SETB悬空,则是 AT 指令模式,方便进行测试; 当进入到休眠模式后这两个脚会浮空, 需要接到确定的电平上, 否则会产生漏电。
2. 功能介绍¶
ChirpLAN终端支持主动上报、空中唤醒和全速运行三种工作模式,下图为设备的功能整体框图,可帮助对系统有一个总体的认识。
2.1 工作模式¶
本章主要介绍ChirpLAN网络模块的指令模式,以及和网关配合使用的节点主动上报、空中唤醒和全速运行三种工作模式。
名 称 |
说 明 |
条 件 |
---|---|---|
AT 指令模式 |
用户可用AT 指令对模块进行参数配置 |
SETA=1 |
网络模式 (NORMAL) |
SETB为1时,模块不会进入休眠状态 |
SETA=0 |
网络模式(LOWPOWER) |
SETB为0时,模块根据工作模式来休眠和唤醒 |
SETA=0 |
2.1.1 AT 指令模式¶
AT 指令模式主要实现用户通过串口发送命令设置模组相关的参数。 在 AT 指令模式下,模组串口用于接收 AT 命令,用户可以通过串口发送 AT 命令给模组,用于查询和设置模组的 UART、Chirp等相关参数。 详细的 AT 指令介绍请参考“3.3 AT 指令格式”
2.1.2 终端组网¶
2.1.2.1 主动上报模式 (Mode A)¶
通讯双方需满足 以下几个条件:
入网信道(freq)、速率参数(bw/sf/cr)要一致
上下行频率表(上行8个,下行8个)要一致
加密方式及密钥要一致
网关应用ID要一致
工作模式:主动上报
工作流程:
模组上电后根据设置参数进行入网,入网成功后由网关分配工作参数。模块之后将按新的工作参数与网关进行数据通信。
在本工作模式下,模块的工作状态由SETB状态来决定:
SETB为低电平时,模块进入休眠状态;
SETB为高时,模块退出休眠状态并处于长接收状态;
若外部MCU有数据要发送,则先拉高SETB,再等待AUX变低后(模块完全醒来),即可通过串口发送数据,模块收到串口数据后,随即将收到的数据通过ChirpLAN协议栈发送到网关;
若外部MCU需要模块进入休眠,先将SETB拉低,再等待AUX变高,才能确定模块已进入休眠状态。
***注:*AUX的行为方式请看 2.2章节。
模组设置:
配置模组为网络协议,应用ID为网关应用ID,信道、速率与网关通道一配置一致,具体见下图 。
2.1.2.2 空中唤醒模式(Mode B)¶
通讯双方需满足 以下几个条件:
入网信道(freq)、速率参数(bw/sf/cr)要一致
上下行频率表(上行8个,下行8个)要一致
加密方式及密钥要一致
网关应用ID要一致
工作模式:空中唤醒
工作流程:
模组上电后根据设置参数进行入网,入网成功后由网关分配工作参数,之后模块将按新的工作参数与网关进行数据通信。
模组参数配置成功后进入间隔唤醒状态(间隔休眠唤醒),被唤醒的模块接收到正确的网关轮询数据后会将 AUX引脚拉高来唤醒主控MCU,经过AUXT0时间(可通过AT_AUXT设置)后再将接收到的Chirp数据通过串口发送给主控MCU,串口发送完成后,再经过AUXT1时间(可通过AT_AUXT设置)拉低AUX引脚。
之后模块再判断SETB引脚状态,若SETB为低电平则立即进入休眠,进入休眠后,模块将AUX引脚置高;若SETB为高电平,则模块不进入休眠,继续定时检测空中唤醒信号。
工作流程图:
下面是轮询唤醒模式下模块和集中器数据传输时序,如下图所示,网络模块接收到前导码后会被唤醒,直到接收完数据,然后模块进行数据处理。
模组设置:
配置模组为网络协议,应用ID为网关应用ID,信道、速率与网关通道一配置一致,具体见下图。
2.1.2.3 全速运行模式(Mode C)¶
通讯双方需满足 以下几个条件:
入网信道(freq)、速率参数(bw/sf/cr)要一致
上下行频率表(上行8个,下行8个)要一致
加密方式及密钥要一致
网关应用ID要一致
工作模式:全速运行
工作流程:
模组上电后根据设置参数进行入网,入网成功后由网关分配工作参数,模块之后将按新的工作参数与网关进行数据通信。
在本工作模式下,模块的工作状态由SETB状态来决定:
SETB为高时,模块进入全速运行状态,无数据通信状态下模块的串口和RF都处于持续接收状态。
SETB为低电平时,模块进入休眠状态;
当主控有数据要发送到网关时,先保证SETB是拉高且模块是的空闲状态(AUX低),才能通过串口发送数据,主控在发送数据过程中,要不断检测AUX引脚状态,如果突然变高,则说明模块的缓冲区变满或者其它情况发生,此时主控应立即停止发送数据,须等到AUX变低之后才能继续发送数据。模块对串口包有分包检测机制,若模块收到一个字节数据之后UARTINT时间(通过AT+UARTINT设置)内没有再收到其它字节数据,则认为收到一个完整的数据包,之后模块会将此数据包经过ChirpLAN协议层发送到网关。
当网关有数据两要发送到节点模块时,网关通过ChirpLAN协议栈发送一包数据,模块收到数据包之后,会将 AUX引脚拉高(如果主控休眠可唤醒主控),经过AUXT0时间(可通过AT_AUXT设置)后再将接收到的数据通过串口发送给主控,再经过AUXT1时间(可通过AT_AUXT设置),拉低AUX引脚。
模组设置:
配置模组为网络协议,应用ID为网关应用ID,信道、速率与网关通道一配置一致,具体见“图 15” 。
2.2 AUX时序说明¶
高电平表示复位初始化中: 大约 30ms
高电平表示唤醒初始化中: 大约 5ms
透传下接收到串口数据的逻辑: 当串口接收到第一个字节后,AUX 变成高电平,表示 FIFO 非空进入 TX 状态,全部发送完成后 AUX 低电平表 示 FIFO 无数据。
串口数据输出指示( 用于唤醒休眠的外部 MCU) AT+AUXT=10,0
2.3 固件升级¶
固件升级步骤
模块断电状态下,保持SETA,SETB引脚浮空,将uart tx,rx引脚连接至电脑(一般要用到usb转ttl模块)
模块上电,打开模块设置软件,之后依次打开串口、点击进入配置状态、点击固件升级、选择固件升级文件等,具体操作如下图。
3. 产品配置¶
3.1. 配置工具¶
产品配有通用设置软件(AT 指令设置软件)以及配套设置软件,支持参数设置,可简化用户的操作,推荐使用配套设置软件来配置参数。
3.1.1. 配套设置软件¶
该配套设置软件适用于ChirpLAN系列模组的参数读取以及配置。下图中序号依次对应以下 7 个步骤:
在串口设置界面中,将波特率、校验位、数据位、停止位设置为节点对应参数,
节点串口默认参数为 115200、NONE、8、1。点击打开串口按钮。
点击进入配置状态按钮,节点回复+OK,即节点进入 AT 指令模式。
选择点网络协议。
点击读取参数按钮,软件自动读取节点参数信息。
可在基本参数中查看以及修改节点参数。
如果是读取参数则点击退出配置状态按钮退出 AT 指令模式;如果是设置参数则点击设置参数按钮,软件会自动设置节点参数,设置完毕后节点重启,参数生效。
点击退出配置状态按钮,模块退出配置模式进入网络数据通信模式。
3.2. 配置指令介绍¶
配置指令即 AT 指令,是指在 AT 指令模式下用户通过 UART 与模组进行命令传递的指令集,后面将详细讲解 AT 指令的使用格式。
上电启动成功后,可以通过 UART 对模组进行设置。
模组的缺省 UART 口参数为: 波特率 115200、无校验、8 位数据位、1 位停止位。
从非 AT 命令模式下切换到 AT 命令模式,若用配套设置软件点击进入配置模式即可进入,若手动进入 AT 命令模式需要以下两个步骤:
[ ] 在 UART 上输入“+++”,模组在收到“+++”后会返回一个确认码“a”;
[ ] 3 秒内在 UART 上输入确认码“a”,模组收到确认码后,返回“+OK”确认,进入命令模式,如下图所示;
模组进入指令模式需要按照如下图的时序要求:
表 - AT 指令返回值
返回代码 |
返回说明 |
---|---|
OK |
响应成功 |
ERR CHECK ARGS FORMAT FAILED! |
无效的命令格式 |
ERR CMD MATCH FAILED! |
无效的命令 |
ERR PARSE ARGS FAILED! |
无效的参数 |
ERROR |
其它错误 |
3.3. AT 指令格式¶
发送命令格式:以回车<CR>
、换行<LF>
或者回车换行<CR><LF>
结尾
表x AT 指令格式
类型 |
指令格式 |
说明 |
举例 |
---|---|---|---|
0 |
|
查询参数 |
|
1 |
|
查询参数 |
|
2 |
|
设置参数 |
|
模组回复格式(关闭回显):
设置参数:<CR><LF>OK<CR><LF>
查询参数:<CR><LF> +CMD=PARA<CR><LF>OK<CR><LF>
CMD:命令字
PARA:参数
3.4. AT 指令集¶
AT 指令列表
命令 |
描 述 |
命令格式 |
可保存 (Y/N) |
---|---|---|---|
AT |
测试模块响应 |
发: |
No |
AT+ENTM |
退出 AT 命令,切换到工作模式重启设备 |
发: |
No |
AT+E |
设备 AT 命令回显设置 |
发: |
No |
AT+Z |
重启设备 |
发: |
No |
AT+SAVE |
保存当前设置为默认设置 |
发: |
No |
AT+DEFAULT |
恢复默认设置 |
发: |
No |
AT+VER |
查询设备固件版本号 |
发: |
No |
AT+UART |
设置/查询串口参数 |
发: |
Yes |
AT+UARTINT |
串口包之间时间间隔,0~100,单位ms |
发: |
Yes |
AT+RFPOWER |
设置/查询发射功率, 可以减低电源消耗, 但是会减少通讯距离Power:0~29 |
发: |
Yes |
AT+SF |
设置/查询SF |
发: |
Yes |
AT+BW |
设置/查询BW |
发: |
Yes |
AT+CR |
设置/查询CR |
发: |
Yes |
AT+AID |
设置查询应用 ID: 0~FFFFFFFF |
Yes |
|
AT+WMODE |
设置模块工作模式: |
发: |
Yes |
AT+AUXT |
设置/查询 AUX 输出时间:当接收到数据后,AUX 相对与串口 TX提前置高和延时置低的时间默认为 0ms, 如果 MCU 可能处于休眠,则需要设置一个合理的值, 用于等待MCU 唤醒,PreTime、auxDelayTime。范围:0-100 ,单位:ms |
发: |
Yes |
AT+WAKET |
设置/查询模组的唤醒间隔(组网模式下,需要服务器下发唤醒间隔),需要与AT+PREAMABLE指令配合使用,休眠模式下,PREAMABLE时间应大于等于WAKET时间,范围:100~5000,单位ms。 |
发: |
|
AT+ENC |
设置/查询通信加密使能标志: |
发: |
Yes |
AT+KEY |
十六进制字符串,占用32个字节 |
发: |
Yes |