社区导航

 

搜索
查看: 93|回复: 0

[资料分享] CC2630 TIMAC协议栈低功耗问题

[复制链接]

6562

TA的帖子

19

TA的资源

纯净的硅(初级)

Rank: 4

发表于 2020-5-12 22:21 | 显示全部楼层 |阅读模式

项目功能: 采集5s数据发送——休眠5s——采集5s数据发送,循环往复

平台: CC2630

协议栈:timac_1_05_02_43299

 

问题描述:  在休眠5s的过程中,整体电流在7,8ma,只比数据发送低1ma,这是不科学的。验证没有event在跑的时候

 

是可以到3,400ua的电流消耗的(主要是板子上的传感器功耗)。

 

看了TI的RTOS,TIMAC协议介绍,以及社区的问答,都没有给出解决问题的办法或者提到这一现象。

 

着重强调的都只有一点:RTOS会管理功耗。

 

试了一下   联网——采集5s数据发送——断网——休眠5s——联网——采集5s数据发送——断网,这样的方案,但是对于同一个协调器,每次联网都会重新分配shortaddress,到

 

了0x10地址后,就不能再进行连接,终端持续搜索信道。这个方案PASS掉。

 

解决方法:之后想看看RTOS到底是如何实现低功耗管理的,遂搜索 IDLE 关键词,有了意外的发现。

   

这里有一句话:TRUE if the MAC enables its receiver during idle periods 。 继续搜索MAC_RX_ON_WHEN_IDLE 关键字,发现如下判断,赋值函数。

 

再搜索 msa_IsDirectMsg  发现他的初值虽然是 FALSE,但是在按键处理函数,即扫描信道函数   MSA_ScanReq(MAC_SCAN_ACTIVE, 3); 之前却赋值了MSA_DIRECT_MSG_ENABLED,MSA_DIRECT_MSG_ENABLED 是 TRUE的宏定义。

 

这样问题就很明朗了,原来是系统设置,在IDLE模式下,射频部分没有关闭导致的电流消耗。

 

只要将MSA_DIRECT_MSG_ENABLED 宏定义改为 FALSE 即可。

此帖出自无线连接论坛


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

关闭

站长推荐上一条 1/8 下一条

  • 论坛活动 E手掌握

    扫码关注
    EEWORLD 官方微信

  • EE福利  唾手可得

    扫码关注
    EE福利 唾手可得

词云| Archiver|手机版|小黑屋|电子工程世界 ( 京ICP证 060456 )

GMT+8, 2020-7-15 19:08 , Processed in 0.087797 second(s), 20 queries , Gzip On, MemCache On.

快速回复 返回顶部 返回列表