打印
[MM32硬件]

如何实现通过串行接口或USB接口进行升级?

[复制链接]
楼主: 而服务器人
手机看帖
扫描二维码
随时随地手机跟帖
21
mmbs| | 2024-7-14 13:08 | 只看该作者 回帖奖励 |倒序浏览
在单片机上实现一个引导加载程序,该程序在单片机启动时首先运行。Bootloader负责接收通过UART发送的固件数据

使用特权

评论回复
22
saservice| | 2024-7-14 16:10 | 只看该作者
更新完成后,Bootloader通常会重启单片机,并从新的应用程序开始执行。

使用特权

评论回复
23
jackcat| | 2024-7-15 10:42 | 只看该作者
于USB接口可能暴露给不安全的环境,因此在实现USB固件升级时,需要特别注意数据的安全性和完整性。可以使用加密和签名技术来保护固件数据不被篡改。

使用特权

评论回复
24
saservice| | 2024-7-15 14:05 | 只看该作者
编写Bootloader程序,使其能够通过串行接口接收数据。

使用特权

评论回复
25
louliana| | 2024-7-16 15:00 | 只看该作者
Bootloader接收到数据后,进行校验,如果校验成功,则擦除旧固件并写入新固件。

使用特权

评论回复
26
10299823| | 2024-7-16 18:14 | 只看该作者
常需要实现一个引导加载程序              

使用特权

评论回复
27
sheflynn| | 2024-7-16 21:22 | 只看该作者
Bootloader和PC端之间需要有一个通信协议,如UART协议,用于传输固件数据。

使用特权

评论回复
28
1988020566| | 2024-7-17 09:08 | 只看该作者
升级步骤:
使用串口工具将固件文件通过YMODEM协议发送到单片机。
单片机上的bootloader接收文件,并将其写入到单片机的存储器中。
写入完成后,bootloader会跳转到新的应用程序,完成升级过程

使用特权

评论回复
29
primojones| | 2024-7-17 12:25 | 只看该作者
选择并实现一个适合于串行通信的协议,如XMODEM、YMODEM或自定义协议。

使用特权

评论回复
30
backlugin| | 2024-7-17 15:46 | 只看该作者
Bootloader是一段固件,它在单片机上电或复位时首先被执行,负责从外部接口接收新的应用程序代码并将其写入到单片机的非易失性存储器(如Flash)中。

使用特权

评论回复
31
wwppd| | 2024-7-17 19:09 | 只看该作者
bootloader读取固件文件,并将其烧写到Application对应的地址空间。

使用特权

评论回复
32
lzbf| | 2024-7-17 22:36 | 只看该作者
当设备处于DFU模式时,它表现为一个USB设备,可以被计算机识别。

使用特权

评论回复
33
lihuami| | 2024-7-18 20:09 | 只看该作者
需要一个支持YMODEM协议的串口工具,如SecureCRT,用于发送升级文件

使用特权

评论回复
34
olivem55arlowe| | 2024-7-19 10:58 | 只看该作者
使用串行终端软件或定制的上位机软件向单片机发送固件数据。

使用特权

评论回复
35
macpherson| | 2024-7-19 14:13 | 只看该作者
在升级模式下,单片机等待来自串行接口或USB接口的数据,并将其写入到闪存中。

使用特权

评论回复
36
地瓜patch| | 2024-7-30 22:05 | 只看该作者
地址跳转,app跳boot,升级完成,跳回app

使用特权

评论回复
37
suncat0504| | 2024-7-31 19:38 | 只看该作者
如果底层有支持的处理,通过设置,就可以简单启动升级就好了。就像计算机软件那样,只需要确认就行。

使用特权

评论回复
38
鹿鼎计| | 2024-8-1 11:36 | 只看该作者
有必要在MCU固件中定义一个升级协议。

使用特权

评论回复
39
digit0| | 2024-8-2 11:28 | 只看该作者
您需要设计一个能够识别dfu模式并处理固件升级的引导程序。

使用特权

评论回复
40
朝生| | 2024-8-2 19:47 | 只看该作者
串口升级已经非常成熟,也是最简单的升级方式,除了sd或者u盘升级。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则