2016 - 2024

感恩一路有你

EMW5080 BootLoader更新方法

浏览量:2868 时间:2024-01-15 20:16:44 作者:采采

步骤一:划分ECU系统的存储空间

在进行EMW5080 BootLoader的更新之前,需要先对ECU系统的存储空间进行划分。这是为了确保BootLoader程序和应用程序能够正确地存储和运行。通过合理划分存储空间,可以有效避免冲突和错误。

步骤二:判断ECU系统请求类型

在进行BootLoader更新时,需要判断ECU系统接收到的是应用程序更新请求还是BootLoader更新请求。根据不同的请求类型,采取不同的更新方式。

步骤三:增量更新应用程序代码区

如果ECU系统接收到的是应用程序更新请求,那么需要使用增量更新方式对应用程序代码区进行更新。增量更新可以减少更新时间和存储空间的占用,提高效率。

串口部分代码说明

关于串口部分代码,在本文中不做详细解释。请查阅相关型号的用户手册获取更多信息。需要注意的是,在BootLoader中不能开中断。因此,在串口接收方面,我们采取循环等待接收的方式,只有在需要接收新数据时才会接收串口消息。

修改链接文件

我们在IAR的安装目录下的STM8config文件夹中找到lnkstm8s003f3.icf文件。然后将其复制到BootLoader工程目录下,并以文本方式打开该链接文件。对于APP应用程序,我们需要将其中的NearFuncCode、FarFuncCode和HugeFuncCode的起始地址均从0x8000修改为0x8400。这样可以确保BootLoader和应用程序之间不会发生冲突。

对于BootLoader程序来说,链接文件可以不做修改。但是修改链接文件的好处是,当BootLoader程序大小超过设定值时(例如1KB),IAR在编译链接时可以检测出来。具体的修改方法请参考下图示例。

重新编写的EMW5080 BootLoader更新方法及相关代码解析

版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。