微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > 射频无线通信设计 > CC2650芯片电源管理设置问题

CC2650芯片电源管理设置问题

时间:10-02 整理:3721RD 点击:

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);这句话。请大神指点一下。谢谢了

首先协议栈里面POWER_SAVING应该加了对吧。
然后你的poll rate这些是多少,
测试出来的功耗是多少个uA,首先判断是否已经进入低功耗状态
然后要看下是否还有外设还供着电,主要指芯片的外设模块单元。
测试的时候最好把芯片外围的连接电路断开掉

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top