CC2650芯片电源管理设置问题

2019-07-18 15:14发布

CC2650芯片电源管理设置问题
CC2650芯片,用的协议栈是ti-MAC,我看了官方的相关power management的文档。我在应用层添加了
          Power_releaseConstraint(Power_IDLE_PD_DISALLOW);
          Power_releaseConstraint(Power_NEED_FLASH_IN_IDLE);
电流好像下降了,但是降的不多。
我又添加了一句:
Power_releaseConstraint(Power_SB_DISALLOW);
电流没有降低反而升高了;通过单步调试,发现进入:
uint32 macStopRAT( void )
{
  rfOpCmd_SynchStartStopRat_t rfCmd;
  // call this instruction before CMD_SYNC_STOP_RAT or CMD_SYNC_START_RAT
  HWREG(AON_RTC_BASE + AON_RTC_O_CTL) |= AON_RTC_CTL_RTC_UPD_EN;
  // synch the RAT from the RTC and save the RAT value
  macGenericRadioCmd( CMD_SYNC_STOP_RAT, &rfCmd.rfOpCmd );
  
  {
    uint8 result = macSynchRadioCommand( &rfCmd.rfOpCmd );
    MAC_ASSERT(rfCmd.rfOpCmd.status == RFSTAT_DONE_OK );
  }
  // call this instruction after CMD_SYNC_STOP_RAT or CMD_SYNC_START_RAT
  HWREG(AON_RTC_BASE + AON_RTC_O_CTL) &= ~AON_RTC_CTL_RTC_UPD_EN;
  // Save RAT value
  return( rfCmd.ratVal );
}
在 macSynchRadioCommand( &rfCmd.rfOpCmd )函数里面->
while ( (cmdstaStatus = MB_SendCommand((uint32) pCmd)) == CMDSTA_SCH_ERR );
就循环了 一直等待  。好像是RAT没有办法关掉,还是我强行加了
Power_releaseConstraint(Power_SB_DISALLOW);这句话。请大神指点一下。谢谢了

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
1条回答
广电总局
1楼-- · 2019-07-18 18:09
首先协议栈里面POWER_SAVING应该加了对吧。

然后你的poll rate这些是多少,

测试出来的功耗是多少个uA,首先判断是否已经进入低功耗状态

然后要看下是否还有外设还供着电,主要指芯片的外设模块单元。

测试的时候最好把芯片外围的连接电路断开掉

一周热门 更多>