今天终于把YMODE升级协议给写好了,用的是串口的IDLE中断,测试通过,能完整的接收到YMODE上位机发送的数据,然后写入到外部FLASH中,校验无误后再写入到内部FLASH中,最后是跳转到应用程序,但是我发现在跳转的时候卡死了,也无法跟踪调试找不到问题出现的原因,只能用对比现象来排查问题。于是将之前的仅支持跳转程序下载进去,发现能正常跳转到APP,说明程序已经升级好了。于是乎逐行代码排查,终于发现了一个重要的线索,在仅跳转的IAP代码中没有开启IDLE中断,抱着试试看的态度将此句屏蔽,结果出乎意料,成功跳转到应用程序了。现在虽然找到原因,但是如果不能用IDLE中断接收YMODE协议数据就要从新改写底层驱动了,有没有大神能支招?
不是其它中断不影响,如果在跳转半途中发生了中断或者跳转到新环境后还产生了IAP里配置的中断都可能有问题。
有点思路了
我试过把中断全部复位禁能都是不行的,只要置位IDLEIE位就跳不过去,这个应该是BUG吧
一周热门 更多>