STM32实现程序通过网络在线升级

2019-10-16 03:23发布

有哪位大神做过STM32实现程序通过网络在线升级的,求助,欢迎大家积极踊跃的指导。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
10条回答
正点原子
1楼-- · 2019-10-16 03:39
xiaoyu_stm32 发表于 2016-7-9 09:31
TCP已经可以实现简单的通信了

实现了TCP数据传输,接下来就简单了。
参考我们的IAP实验就好了。只是你的数据来源是TCP,我们的例程是串口。
FreeRTOS
2楼-- · 2019-10-16 08:28
跟本地升级一样,只是得做一个服务器来读取升级文件,然后分块发送,但TCP网络有分包机制,例如一个4KB的数据包有可能会分成好几个1KB的分包,这个处理起来最麻烦,其他就没什么了
xiaoyu_stm32
3楼-- · 2019-10-16 10:48
FreeRTOS 发表于 2016-7-8 14:46
跟本地升级一样,只是得做一个服务器来读取升级文件,然后分块发送,但TCP网络有分包机制,例如一个4KB的数 ...

听得和天书一样。云里雾里的.......
xiaoyu_stm32
4楼-- · 2019-10-16 15:03
yklstudent 发表于 2016-7-8 17:17
楼主先实现TCP通信再说,然后再谈升级吧

TCP已经可以实现简单的通信了
xiaoyu_stm32
5楼-- · 2019-10-16 15:20
 精彩回答 2  元偷偷看……
513393302@qq.co
6楼-- · 2019-10-16 19:17
xiaoyu_stm32 发表于 2016-7-11 16:09
原子程序在运行过程中,有程序要更新,它是跳回到IAP程序中,实现程序的更新吗?如果是,IAP和APP程序是如 ...

可以用软件复位。无论是硬件复位还是软件复位,单片机都是从FLASH起始地址开始执行的,Bootloader代码一般都是从这里开始。
可以在FLASH中某个地址存一个状态标记,要升级时清除这个标记然后软件复位。Bootloader执行完成后把这个标记写上,这样就不会重复进入Bootloader了

一周热门 更多>