最近在做DSP28335的串口升级,写升级方案写了一个月(50页的完整项目方案),确定好方案和细节后就开始实施,又经过2个月的加班加点调试和测试,最终稳定实现了串口升级功能。
一、升级方式
由于是要求做成通用升级框架,并且为了适应成本要求,这里采用boot+app的设计,这种升级方式只适用于本地升级。当然如果想网络升级,也是可以的,需要另一个单片机先通过网络将升级固件接收完毕后,再给dsp升级,其本质还是本地升级。
二、上位机设计
上位机是在vs2022上用c#开发的,上位机可以实时显示升级进度,界面美观大方,操作灵敏,并且具备随时导出升级log的功能。
三、升级逻辑
app运行过程中收到升级指令,程序复位,进入boot,在boot中收到升级指令,立马执行升级流程,升级完毕后直接跳转app。
四、升级过程异常处理
升级过程中,如果出现超时、最终校验错误等,均终止升级流程(如果是分包传输过程中的校验错误,那么会将错误的包重发,并不会终止流程),需要从头开始重新升级。
五、设计特点
①采用分包传输,提高升级可靠性
②标准的函数接口、协议等,通用性非常强,并且扩展性非常强
③总体上设计简单,思路清晰,特别容易上手、掌握
④50页详细DSP软件升级项目方案,带你从升级方式,dsp启动流程,cmd如何设计,升级流程以及上位机设计等各个方面,详细描述,非常适合新手学习和扩展。
六、如何获取
见“二、上位机设计”界面~