CAT1模块在liteos下实现休眠唤醒功能

描述

正文开始前,如需进一步交流,欢迎大家添加朱胖子微信


支持型号CAT4:AC3 CAT1: RC3 RD6 RC6等,使用低功耗版本

主要应用于监控安防,有远程唤醒需求,使用usb虚拟出来的网卡上网。操作系统liteos,支持ECM网卡

Liteos驱动加载方法

在usb\implementation\usbdevs.h中添加

在usb\serial\u3g.c中添加

一、驱动支持

修改主控驱动支持TTYUSB,使用TTYUSB1作为AT口

二、休眠

AT+ENTERSLEEPHEX=1 设置休眠参数为HEX,默认为1,实际发送给服务器会转换成原始数据(0为原始数据 有特殊字符时建议HEX模式)

服务器地址203.156.205.55,服务器端口号74261,心跳间隔180,心跳包发”sleep12345”,唤醒包发”wake123”,任意数据唤醒可设置为空””

AT+ENTERSLEEP="203.156.205.55",74261,180,"sleep12345","wake123"

设置登录包“login”,登录应答check包“OK”,休眠断开usb flag1,连接重试次数3,发送重试次数2(不断开usb时 由主控走usb的suspend流程或者主控拉低vbus断开usb)无登录包可以设置为空””

AT+ENTERSLEEPcfg="6c6f67696e","6f6b",1,3,2

主控进入休眠前发送at+ENTERSLEEP指令并拉高WAKEUP_IN

模块建立与服务器的tcp连接,并发送登陆包login,服务器10s内需要返回应答check包OK,模块收到应答包后上报+QIPOPEN: 6,0表示连接成功,2s后断开usb,模块拉低RI脚进入休眠

三、心跳

模块根据设置的参数,周期发送心跳给服务器,维持tcp的长连接

四、唤醒

网络唤醒包触发唤醒

手机等app发送唤醒信号给服务器,服务器发送唤醒包给指定设备

模块收到数据时断开与服务器的连接,恢复usb,RI脚输出高电平唤醒主控

主控被唤醒后,拉低模块WAKEUP_IN脚,快速恢复网络

主控唤醒

拉低模块WAKEUP_IN脚

模块收到数据时断开与服务器的连接,恢复usb,RI脚输出高电平

快速恢复网络

更多详情欢迎关注微信公众号



打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 相关推荐

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分