芯科的8位MCU是否有可能变成砖头?也就是说,有没有可能使得MCU进入一个不可被修改或者不能被调试适配器连接的不可恢复状态。
是的,有几种方式可能使得该情况发生。其主要原因是设备在复位后并变得无反应前调试适配器没有足够时间访问设备。调试适配器在设备复位且具有响应能力时需要少量时间来连接设备。所以在设备复位之后执行任何暂停设备的操作都会导致设备变得不可恢复。
主要的操作包括:
* 切换到不工作的时钟
* 进入低功耗模式
* 设备复位中
为了避免该问题,建议在用户固件起始部分及执行其它程序前加一个小的延时(1ms)。这个延时在MCU使自己失效前给调试适配器提供足够的时间连接并暂停它。该延迟可以在最终测试和投产代码中移除。
8位MCU变砖头