打印
[应用相关]

Bootloader传输介绍

[复制链接]
656|7
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
做过很多Bootloader升级的产品,感觉Bootloader还是很有意思的。通过芯片的一段程序,去更新剩余的程序。从而达到更新产品软件的作用。芯片自带的Bootloader是通过芯片厂家的协议,通过烧录器把程序更新到Flash里面。而我们自己为什么还要部分的空间再写一个Bootloader呢?因为我们想通过我们自己的方式,升级芯片里的软件。

传输方式那就太多了,基本有的通信方式理论上都可以进行传输升级,包括CAN、SPI、IIC、USART等等。做过汽车上面的CAN升级、USART升级、SD卡升级、OTA升级。其中CAN和USART升级都是在线升级,SD卡可以称之为离线升级。就是不用PC端,在线下插入SD卡,就可完成升级。(CAN和USART如果有硬件升级的设备,也可以做成离线升级)。

讲一下SD卡的升级,使用离线升级,设备端需要有SD卡槽,升级的时候,将升级的文件放入SD卡中,再插入卡槽完成升级。(SD卡使用的SPI驱动,原理上其实也可以称为SPI升级。。。)


使用特权

评论回复
沙发
tpgf| | 2024-9-3 13:09 | 只看该作者
TFTP是一种简单的文件传输协议,无需客户端和服务器复杂交互,常用于局域网内设备固件升级

使用特权

评论回复
板凳
SD卡使用的SPI驱动,原理上其实也可以称为SPI升级

使用特权

评论回复
地板
wakayi| | 2024-9-5 15:16 | 只看该作者
Bootloader检查主应用程序的有效性,若有效则跳转执行主应用程序,否则保持等待升级指令

使用特权

评论回复
5
wowu| | 2024-9-9 10:03 | 只看该作者
为确保数据传输的准确性,通常先将接收到的数据暂存在RAM中,并进行整体校验(如CRC校验),无误后再写入Flash

使用特权

评论回复
6
xiaoqizi| | 2024-9-12 10:18 | 只看该作者
更新完成后,Bootloader从新烧写的固件区域获取Reset_Handler指针和栈顶指针,然后跳转执行新的应用程序

使用特权

评论回复
7
paotangsan| | 2024-9-22 10:09 | 只看该作者
Bootloader传输是一种在嵌入式系统中用于升级和加载应用程序的机制,常见的传输协议包括ymodem、TFTP等

使用特权

评论回复
8
renzheshengui| | 2024-9-22 17:15 | 只看该作者
Bootloader检查主应用程序的有效性,若有效则跳转执行主应用程序,否则保持等待升级指令

使用特权

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

本版积分规则

189

主题

1862

帖子

1

粉丝