EC20的支持以下幾種工作模式,睡眠模式包括MCU主機睡眠和EC20睡眠。
- 當MCU主機不睡眠時,通過AT+QICSK =1(發送完之后串口被禁用不再響應AT指令),DTR=1(投票EC20可以進入睡眠)觸發EC20進入睡眠;當服務器有新消息到來時MCU主機收到URC提醒,此時DTR=0來喚醒EC20就可以來讀內容了;如果睡眠期間沒有服務器來數據又想發數據隨時拉低DTR即可發數據。如果讀完后還需要睡眠,繼續AT+QICSK =1,DTR=1;如果后面不在睡眠則AT+QICSK =0.
- 當主機也休眠,此時單片機把APready設置為輸出,通過 AT+QCFG="apready",1,0,120來設置:使能APready,MCU結束休眠的有效電平為0=低電平,檢測周期為120ms.當主機准備進入休眠時,apready =1即通知EC20主機已經進入休眠,此時如果EC20收到服務器數據,EC20會緩存URC並通過RI通知主機MCU新的數據到來,主機此時DTR=0(EC20不要睡了),apready =0(我已經醒了,你可以上報來的URC信息了),EC20檢測到APREADY是活躍信號后就上報URC.
1 注意修改URC提醒端口:默認是在USB AT端口,如果使用主串口要進行修改配置:AT+QURCCFG=\"urcport\",\"uart1\"\r\n"
2 AT+QCFG="risignaltype","physical" ,確保RI總能在端口得到提醒
3 按照串口連接方法設計原理圖,用AT+QCFG=""配置RI提醒時的電平。
4 AT+QCFG="apready",<enable>[,<level>,[<interval>]].使能APready並設置主機醒來后EC20可以上報時的有效電平。注意EC20手冊上沒有該指令但支持該功能。
5 AT+QINDCFG配置模塊的URC功能