130-SLM130(NB-IOT)C-SDK(OpenCPU)学习开发-低功耗(PSM,DRX,eDRX)


<p><iframe name=”ifd” src=”https://mnifdv.cn/resource/cnblogs/LearnEC616_SLM130″ frameborder=”0″ scrolling=”auto” width=”100%” height=”1500″></iframe></p>

<iframe frameborder=”0″ height=”1500″ name=”ifd” scrolling=”auto” src=”https://mnifdv.cn/resource/cnblogs/LearnEC616_SLM130″ width=”100%”></iframe>

 

先看PSM (Power Save Mode)节能模式

1,NB的节能模式是有两个时间参数控制 TAU时间 和 active时间

PSM模式是模组断开了网络连接,只能人为或者程序上唤醒模组.

 

在模组进入PSM模式以后, TAU时间是控制NB模组多长时间以后唤醒联网,

NB模组在空闲(不进行网络通信,一般指所有任务都在挂起)状态下,超过active时间模组进入PSM模式.

 

 

2,打开slpman_example 例程(按照下面的程序修改)

//设置最大睡眠深度 HIB
slpManSetPmuSleepMode(true, SLP_HIB_STATE, false);

   
appSetCFUN(0);//关闭网络通信
while(1){
  vTaskDelay(60000 / portTICK_PERIOD_MS);//延时
}

 

130-SLM130(NB-IOT)C-SDK(OpenCPU)学习开发-低功耗(PSM,DRX,eDRX)

 

 

 

 

 

 

3,编译slpman_example, 并下载到开发板

130-SLM130(NB-IOT)C-SDK(OpenCPU)学习开发-低功耗(PSM,DRX,eDRX)

 

 

130-SLM130(NB-IOT)C-SDK(OpenCPU)学习开发-低功耗(PSM,DRX,eDRX)

 

 

4,使用万用表可以看到功耗

130-SLM130(NB-IOT)C-SDK(OpenCPU)学习开发-低功耗(PSM,DRX,eDRX)

 

 

5,关于TAU时间和Active时间设置

这个两个时间可以在程序上设置,也可以在NB卡上设置(需要运营商设置)

在程序上设置

130-SLM130(NB-IOT)C-SDK(OpenCPU)学习开发-低功耗(PSM,DRX,eDRX)

 

 

 

 

让运营商在NB卡后台设置

130-SLM130(NB-IOT)C-SDK(OpenCPU)学习开发-低功耗(PSM,DRX,eDRX)

 

 

注意: EC616在注册上网络以后会获取NB卡后台设置的TAU时间和Active时间.

所以只要是后台设置了,那么程序里面会遵循后台的.

 

通过上面的设置,把程序下载到开发板,等待大概30S左右,模组进入低功耗.

 

 

6,关于PSM模式等级

130-SLM130(NB-IOT)C-SDK(OpenCPU)学习开发-低功耗(PSM,DRX,eDRX)

 

 

130-SLM130(NB-IOT)C-SDK(OpenCPU)学习开发-低功耗(PSM,DRX,eDRX)

 

 

130-SLM130(NB-IOT)C-SDK(OpenCPU)学习开发-低功耗(PSM,DRX,eDRX)

 

 

ACTIVT 和 IDEL 就是模组正常工作

SLEEP1 模式下模组就进入了休眠了(256KB SRAM, 16KB Ret SRAM, 断电保持IO还在工作(Ret IO)  )

SLEEP2 模式下模组就进入了休眠了(16KB Ret SRAM, 断电保持IO还在工作(Ret IO)  )

HIB 模式下模组就进入了休眠了(断电保持IO还在工作(Ret IO)  )

 

6,关于PSM模式等级

 

原创文章,作者:1402239773,如若转载,请注明出处:https://blog.ytso.com/276234.html

(0)
上一篇 2022年7月22日
下一篇 2022年7月22日

相关推荐

发表回复

登录后才能评论