[MM32硬件] 如何实现通过串行接口或USB接口进行升级?

[复制链接]
7229|65
mmbs 发表于 2024-7-14 13:08 | 显示全部楼层
在单片机上实现一个引导加载程序,该程序在单片机启动时首先运行。Bootloader负责接收通过UART发送的固件数据
saservice 发表于 2024-7-14 16:10 | 显示全部楼层
更新完成后,Bootloader通常会重启单片机,并从新的应用程序开始执行。
jackcat 发表于 2024-7-15 10:42 | 显示全部楼层
于USB接口可能暴露给不安全的环境,因此在实现USB固件升级时,需要特别注意数据的安全性和完整性。可以使用加密和签名技术来保护固件数据不被篡改。
saservice 发表于 2024-7-15 14:05 | 显示全部楼层
编写Bootloader程序,使其能够通过串行接口接收数据。
louliana 发表于 2024-7-16 15:00 | 显示全部楼层
Bootloader接收到数据后,进行校验,如果校验成功,则擦除旧固件并写入新固件。
10299823 发表于 2024-7-16 18:14 | 显示全部楼层
常需要实现一个引导加载程序              
sheflynn 发表于 2024-7-16 21:22 | 显示全部楼层
Bootloader和PC端之间需要有一个通信协议,如UART协议,用于传输固件数据。
1988020566 发表于 2024-7-17 09:08 | 显示全部楼层
升级步骤:
使用串口工具将固件文件通过YMODEM协议发送到单片机。
单片机上的bootloader接收文件,并将其写入到单片机的存储器中。
写入完成后,bootloader会跳转到新的应用程序,完成升级过程
primojones 发表于 2024-7-17 12:25 | 显示全部楼层
选择并实现一个适合于串行通信的协议,如XMODEM、YMODEM或自定义协议。
backlugin 发表于 2024-7-17 15:46 | 显示全部楼层
Bootloader是一段固件,它在单片机上电或复位时首先被执行,负责从外部接口接收新的应用程序代码并将其写入到单片机的非易失性存储器(如Flash)中。
wwppd 发表于 2024-7-17 19:09 | 显示全部楼层
bootloader读取固件文件,并将其烧写到Application对应的地址空间。
lzbf 发表于 2024-7-17 22:36 | 显示全部楼层
当设备处于DFU模式时,它表现为一个USB设备,可以被计算机识别。
lihuami 发表于 2024-7-18 20:09 | 显示全部楼层
需要一个支持YMODEM协议的串口工具,如SecureCRT,用于发送升级文件
olivem55arlowe 发表于 2024-7-19 10:58 | 显示全部楼层
使用串行终端软件或定制的上位机软件向单片机发送固件数据。
macpherson 发表于 2024-7-19 14:13 | 显示全部楼层
在升级模式下,单片机等待来自串行接口或USB接口的数据,并将其写入到闪存中。
地瓜patch 发表于 2024-7-30 22:05 | 显示全部楼层
地址跳转,app跳boot,升级完成,跳回app
suncat0504 发表于 2024-7-31 19:38 | 显示全部楼层
如果底层有支持的处理,通过设置,就可以简单启动升级就好了。就像计算机软件那样,只需要确认就行。
鹿鼎计 发表于 2024-8-1 11:36 | 显示全部楼层
有必要在MCU固件中定义一个升级协议。
digit0 发表于 2024-8-2 11:28 | 显示全部楼层
您需要设计一个能够识别dfu模式并处理固件升级的引导程序。
朝生 发表于 2024-8-2 19:47 | 显示全部楼层
串口升级已经非常成熟,也是最简单的升级方式,除了sd或者u盘升级。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 在线客服 返回列表 返回顶部