This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

CC2650

Other Parts Discussed in Thread: 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);这句话。请大神指点一下。谢谢了