合宙cat1模块如何发送心跳包,看这一篇就够了

本文适用于AT命令固件版本

合宙CAT1模块有两种方式实现心跳包的发送:

第一种:在TCP层实现

这种方式是TCP协议层实现的,只适用于TCP链接。也就是说,这种实现方式不会对应用层的数据流产生任何影响,应用层也看不到心跳包的内容。

这种实现方式叫做TCP保活(TCP Keep-Alive),由+CIPTKA这个命令来实现。具体:

undefined

是否打开TCP保活功能
0:关闭 1:开启

时间内链接上无任何数据交互,则发送初始保活探针(initial keep-alive probe)
取值范围:30~7200 单位为秒,缺省值为7200

保活探针重传的间隔时间
取值范围:30~600 单位为秒,缺省值为75

发送保活探针的最大数量
取值范围:1~9 单位为次,缺省值为9

例如:AT+CIPTKA=1,120
打开TCP保活功能,=120秒,其余参数为缺省值。意味着:
如果在120秒内TCP链接上没有任何数据交换,则设置端会发送初始保活探针,

oh,对了,一旦打开TKA功能,对当前存在的所有TCP链接都起作用。

第二种:在应用层实现

这种方式是由设置端在应用层发心跳包来实现的。这种情况下对端的应用层会收到设置端的心跳包内容。这种方式TCP,UDP都适用,但是同时只能作用于一个链接。

这种实现方式由^HEARTCONFIG、^HEARTBEAT(或^HEARTBEATHEX)共同作用来实现。举例如下(每个命令的具体定义请参考合宙AT命令文档):

上次更新 2021-01-28