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.

cc3200 reboot 无法启动

Other Parts Discussed in Thread: UNIFLASH

我没有使用TI ota的lib进行OTA升级,自己写的一个简单的tcp socket ,服务端也是简单的用socket 进行文件传输,收到升级的新文件后,调用了

static void RebootMCU()
{
  //
  // Configure hibernate RTC wakeup
  //
  PRCMHibernateWakeupSourceEnable(PRCM_HIB_SLOW_CLK_CTR);
  //
  // Delay loop
  //
  Report("Delay loop...\r\n");
  MAP_UtilsDelay(8000000);
  //
  // Set wake up time
  //
  Report("Set wake up time...\r\n");
  PRCMHibernateIntervalSet(330);
  //
  // Request hibernate
  //
  Report("Request hibernate...\r\n");
  PRCMHibernateEnter();
  //
  // Control should never reach here
  //
  while(1)
  {
  }
}
这个函数后,系统无法重启,从串口看log,卡住了(没有重新从main启动)。我烧录的application_bootloader是从SDK中编译出来的,没有改动,升级后用Uniflash 查看的文件列表 见附件。而且发现升级后读取/sys/mcubootinfo.bin 明明是把img状态写进去了,而且也把文件正常关闭了,但是当我软件重启失败后,用硬件reset,后再次打印文件内容,发现读取的还是默认的数值, 所以我有点怀疑,软件reset 可能是卡在了读取/sys/mcubootinfo.bin 整个文件的操作上,这只是猜测。