【案例分享】TI的28035掉电后程序无法保存问题

使用28035时,掉电程序无法正常运行。

问题详细描述:

使用80脚的28035时,第一次烧写程序后不断电的情况下程序正常运行,但是当掉电后再次上电,呼吸灯不亮,即程序没正常运行。再次重新烧写程序后,不断电的情况下功能又是正常的,但是只要一掉电,重复出现以上描述的情况。

问题具体分析:

因为控制器是升级版本,之前是没问题的,对比控制器更改前后的差异,加上之前对于28035的使用经验,怀疑是Boot Mode出了问题导致程序没正常保存在Flash里面。

问题解决方案:

【案例分享】TI的28035掉电后程序无法保存问题

图3.1 复位引脚测试波形

首先测试了复位引脚,发现芯片一直处于复位状态。结合之前使用28035的经验,怀疑问题与芯片的引导模式有关。

【案例分享】TI的28035掉电后程序无法保存问题

图3.2 与引导模式相关的示意图

其次就想到了查看28035的Boot Mode相关的引脚。发现是74(GPIO34)脚被用来控制三极管8050的基极,并且基极有一个10k的电阻下拉

测试发现这个脚在上电后一直被拉到0.6V。对比测试了74脚在悬空情况下上电后会被拉高至3.3V然后被拉低,即把74脚悬空没问题。

对比可知道74脚上电瞬间会存在上拉动作,但是上拉能力比较微弱,如果外部加有下拉电阻,就无法完成引到模式的动作,并且实际将下拉电阻改大到200k,即减弱下拉能力,依然无法解决问题。最终只能悬空该引脚才能解决问题。

总结和建议:

综上所述,为了避免使用时不必要的麻烦,28035的和Boot Mode相关的引脚,比如GPIO34脚不要用来作为普通IO口使用,避免不必要的麻烦。