secondbootloader问题

5个职位/ 0个新职位
最后发表
李阳
离线
最后看到:10个月2个星期前
专家
加入:2014-09-24 11:51
secondbootloader问题

嗨,对话框

我的设备有时不能用。当我更新固件时,我发现程序将停止这段代码“while (!(GetWord16(SYS_STAT_REG) & PER_IS_UP));”,这是在第二个引导加载程序。

当设备进入这种状态时。即使我重置了设备,如果我再次更新固件,它总是停止到那个代码。只有我把da14580 POWER DOWN,设备才能正常工作。

然后我做了一个测试。没有更新,只有当我调用函数:platform_reset(PLATFORM_RESET_ARG);程序会停止到那个代码。

附件:
设备:
MT_dialog
离线
最后看到:6个月,4个星期前
工作人员
加入:2015-06-08 34
嗨,李阳,

嗨,李阳,

你能分享更多关于你的设置的信息吗?你是如何更新你的固件的,你使用SUOTA吗?使用SUOTA后发生这个事件?只有当你切断电源并重新插入系统时,你的设备才会恢复正常?

由于MT_dialog

李阳
离线
最后看到:10个月2个星期前
专家
加入:2014-09-24 11:51
嗨,对话框

嗨,对话框

是的,我使用SUOTA (usb加密狗和smartSnippets更新),使用SUOTA后发生此事件(smartSnippets说“[INFO @15-12-16 09:34:29]固件下载完成”)。当mcu进入那个状态,如果我重置mcu(连接复位引脚到VDD3V),它将运行新的固件。
据我所知,当单片机复位时,GPIO处于:输入下拉状态。然后我设备上的LED就会亮起来。我关闭LED后的代码"while (!(GetWord16(SYS_STAT_REG) & PER_IS_UP));所以经过我的SUOTA设备,LED是亮的。我想在(…)的时候节目就停止了。

由于李阳

MT_dialog
离线
最后看到:6个月,4个星期前
工作人员
加入:2015-06-08 34
嗨,李阳,

嗨,李阳,

这似乎有点奇怪,您的代码在这里卡住了,因为辅助引导加载程序中的前一个命令是启用外围设备。也许你的代码卡在别的地方了?因为你正在使用SUOTA,我想你也使用spi,也许你有spi在电源关闭模式和da不能启动,也许这就是为什么当你电源循环你的设备正确启动。

Thansk MT_dialog

李阳
离线
最后看到:10个月2个星期前
专家
加入:2014-09-24 11:51
嗨,MT_dialog

嗨,MT_dialog

哦,我忘了主启动,也许他不能启动。我怎样才能找到季节呢?
程序是一样的,但是设备会在相同的时间进入那个状态。其他时候SUOTA会。

谢谢李阳。