打印
[应用方案]

用RS232来更新固件

[复制链接]
2641|23
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
youtome|  楼主 | 2024-5-19 15:02 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
请参考8051 ISP via COM port user manual.

特别注意的是请务必照其操作步骤来操作,操作步骤如下:

1.将ISP Code烧到您的IC的ISP Space区域里,并将HWBS Enable。(ISP_by_COM_v1.00.BIN)

2.将线路接好。RS232 Rx -> 8051 P3.0 and RS232 Tx -> 8051 P3.1

3.执行AP,并且关掉电源。

4.先按下Update Target,然后再打开电源。

使用特权

评论回复
沙发
huquanz711| | 2024-5-21 08:28 | 只看该作者
就是串口ISP,只是把电平接口换成了RS232

使用特权

评论回复
板凳
tifmill| | 2024-6-4 09:43 | 只看该作者
对于没有内置Bootloader的单片机,开发者需要自行编写Bootloader。这通常涉及到对单片机内部存储器映射和启动流程的深入理解。

使用特权

评论回复
地板
alvpeg| | 2024-6-5 15:29 | 只看该作者
现代单片机 已经内置了支持多种接口(包括串口、I2C、CAN、SPI、USB等)的Bootloader。这大大简化了固件更新的过程,因为开发者无需自己编写Bootloader,只需利用内置功能即可。

使用特权

评论回复
5
backlugin| | 2024-6-7 10:23 | 只看该作者
在进行固件更新时,必须注意数据传输的完整性和正确性,以及防止在更新过程中出现设备损坏的风险

使用特权

评论回复
6
uptown| | 2024-6-7 20:13 | 只看该作者
一些单片机可能支持在应用程序中直接进行固件更新 ,而其他单片机则可能需要特殊的引导加载程序来处理固件更新。

使用特权

评论回复
7
timfordlare| | 2024-6-8 11:11 | 只看该作者
上传完成后,可能需要单片机自行运行一些验证程序来确认新固件的有效性和完整性。

使用特权

评论回复
8
hearstnorman323| | 2024-6-8 11:57 | 只看该作者
在进行固件更新时,要确保电源稳定,避免意外断电导致单片机损坏。

使用特权

评论回复
9
youtome|  楼主 | 2024-6-10 16:57 | 只看该作者
能够将固件文件通过RS232接口发送到单片机。这个程序需要在计算机上运行,并且能够与单片机进行通信。

使用特权

评论回复
10
averyleigh| | 2024-6-10 17:57 | 只看该作者
使用通信软件通过RS232接口将新的固件文件上传到单片机中。这个过程可能需要几分钟时间,具体取决于固件的大小和波特率。

使用特权

评论回复
11
gouguoccc| | 2024-6-10 22:46 | 只看该作者
RS232主要就是通过串口来实现IAP功能

使用特权

评论回复
12
mollylawrence| | 2024-6-11 17:09 | 只看该作者
可能需要在特定条件下重启单片机以进入Bootloader模式,例如通过保持某个按钮按下的方式等。

使用特权

评论回复
13
jtracy3| | 2024-6-12 14:04 | 只看该作者
通过串行通信发送更新命令到单片机。
单片机响应命令,并开始通过串行接口接收新的程序代码。
接收到的数据被写入单片机的Flash存储器中。
更新过程完成后,单片机重新启动并加载新固件。

使用特权

评论回复
14
vivilyly| | 2024-6-14 14:20 | 只看该作者
使用适合单片机的开发环境和工具链来编译和生成新的固件。同时,可能需要一个终端程序来观察和控制数据传输过程。

使用特权

评论回复
15
benjaminka| | 2024-6-14 17:27 | 只看该作者
记录下固件升级的时间和版本信息,以便于未来的追踪和管理。

使用特权

评论回复
16
i1mcu| | 2024-6-14 19:35 | 只看该作者
单片机接收到固件数据后,会将其写入Flash存储器,替换旧的固件。

使用特权

评论回复
17
modesty3jonah| | 2024-6-15 20:38 | 只看该作者

设计错误处理流程,如重试、部分更新、回滚到旧版本等。

使用特权

评论回复
18
yeates333| | 2024-6-16 11:05 | 只看该作者
Bootloader是单片机在上电或复位后首先运行的一段代码,它负责加载并启动主应用程序。在固件更新过程中,Bootloader还负责接收新固件、擦除旧固件以及写入新固件的功能。

使用特权

评论回复
19
lzmm| | 2024-6-16 16:00 | 只看该作者
当需要更新固件时,Bootloader会先判断是否有更新标志被设置,例如通过特定的引脚状态或收到特定的信号等。一旦检测到更新标志,Bootloader就会从指定的源(如RS232接口)接收新的固件数据,并将其写入到单片机的程序存储区中。

使用特权

评论回复
20
i1mcu| | 2024-6-16 21:21 | 只看该作者
程序将通过串口将新的固件代码发送到单片机,并控制单片机的复位等操作

使用特权

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

本版积分规则

29

主题

3896

帖子

2

粉丝