0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

RZ Loader APP工程修改方法

瑞萨MCU小百科 来源:瑞萨MCU小百科 2024-01-09 12:08 次阅读

一、使用场景

客户在使用N2L做多协议产品时,在不同的产品上,需要同时将几种协议的程序烧录进flash中,然后通过不同的拨码或功能码配置来选择加载不同协议,此种情况下,就需要使用bootloader做程序的引导选择功能。此时则需要将产品代码分成2个工程,即一个Bootloader工程,一个Application工程,Bootloader工程里做不同协议的选择,加载功能,根据需求加载不同协议运行。

由于RZ工程正常启动时,代码分成LDR部分和user部分,所以Bootloader可以分别对Application以上2部分进行加载,在Bootloader工程里里复制application的LDR部分到BTCM里运行,由于LDR程序里有根据user代码、数据的起始地址和长度定义,从flash区拷贝到RAM区运行的代码,所以只要LDR程序运行起来,代码则可以自动完成user程序的加载运行。

二、加了bootloader后的启动流程

6bfad2f6-aea4-11ee-8b88-92fbcf53809c.png

步骤解析:

1

芯片内部boot根据loader Parameters加载bootloader的LDR代码到BTCM的0x102000地址区。

2

bootloader的LDR程序运行后,会根据icf文件的配置从flash区加载bootloader的user代码(包括data段、prg段、rodata段等)到ATCM运行。

3

Bootloader的user里需要添加代码来搬移application的LDR到BTCM运行。

4

Application的LDR运行后,会根据application的icf文件配置加载application的user代码,并运行整个程序。

1. Bootloader程序和application是2个独立的工程

2. loader Parameters只配置bootloader工程的就可以,application是通过bootloader加载的,所以不需要更改此参数

3.bootloader和application的LDR部分复用BTCM的0x102000地址空间

4.由于本来是一次启动加载的过程,现在是启了2次,在startup文件开头的特权模式下的操作不能重复进行,否则会报错,所以在application工程中要屏蔽掉此部分代码

三、bootloader工程修改过程

6c1694e6-aea4-11ee-8b88-92fbcf53809c.png

6c29897a-aea4-11ee-8b88-92fbcf53809c.png

1

确定要加载的几个不同程序的FLASH地址

2

使用FSP工具配置一个工程

3

增加copy application的代码和跳转代码

四、App修改点

6c3196e2-aea4-11ee-8b88-92fbcf53809c.png

6c3b49c6-aea4-11ee-8b88-92fbcf53809c.png

6c421616-aea4-11ee-8b88-92fbcf53809c.png

6c5a5fc8-aea4-11ee-8b88-92fbcf53809c.png

6c3b49c6-aea4-11ee-8b88-92fbcf53809c.png

6c83464a-aea4-11ee-8b88-92fbcf53809c.png

1

icf在原有独立工程基础上按设置的FLASH地址做偏移,所有flash的配置都要加对应的偏移,图示以EIP为例

6c9accde-aea4-11ee-8b88-92fbcf53809c.png

6c3b49c6-aea4-11ee-8b88-92fbcf53809c.png

6cb37888-aea4-11ee-8b88-92fbcf53809c.png

2

Startup.c里system_init中屏蔽掉对特权模式的操作

3

调试时要注意bootloader和application里几个MPU_REGION的设置保持一致

审核编辑:黄飞

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • FlaSh
    +关注

    关注

    10

    文章

    1614

    浏览量

    147683
  • bootloader
    +关注

    关注

    2

    文章

    234

    浏览量

    45513
  • LDR
    LDR
    +关注

    关注

    0

    文章

    98

    浏览量

    7553

原文标题:RZ Loader APP工程修改方法

文章出处:【微信号:瑞萨MCU小百科,微信公众号:瑞萨MCU小百科】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    TC397的Bootloader烧录APP工程后可以跳转执行,但是APP工程里面的以太网功能会出现异常,为什么?

    再次烧写),但是以太网功能异常; 请问这个一般是什么原因造成的呢。(烧写的这个APP工程的链接文件进行了修改,如果APP工程的链接文件不
    发表于 07-22 08:10

    变频器功率修改方法

          本文主要介绍变频器功率修改方法,主要介绍常用牌子及其型号,希望对业内人士有所帮助。变频器功率修改有什么好处?很多牌子的变频器电源板、驱动板、主板都可以通用,只要型号、体积、硬件一样,可以
    的头像 发表于 07-21 16:55 1107次阅读
    变频器功率<b class='flag-5'>修改</b><b class='flag-5'>方法</b>

    ESP32-S3如何在blufi工程代码里去修改设备的蓝牙名称?

    你们好,请问我想在blufi工程代码里去修改设备的蓝牙名称,我修改#define BLUFI_DEVICE_NAME 的名称发现无效,但是如果用app点击连接之后下次重启显示的蓝牙名称
    发表于 06-07 06:56

    STM32F103C8T6在bootloader使用了USB中断后,app区再使用usb中断,直接不会跳转到app区,怎么解决?

    主控是STM32F103C8T6,程序是我移植的之前写bootloader和APP的代码,是使用的串口IAP(在串口上使用一点问题没有)。我现在遇到的情况是在boot loader使用了USB中断
    发表于 05-21 08:00

    数据点修改后未生效的解决方案

    在使用机智云App时,有时候修改了数据点后却发现没有任何变化。这可能是由于设备绑定或App代码更新等原因导致的。针对这一问题,我们可以采取以下解决方案:官网通用调试App1、如果是虚拟
    的头像 发表于 05-08 08:10 279次阅读
    数据点<b class='flag-5'>修改</b>后未生效的解决方案

    易灵思Jtag_bridge_loader生成-v2

    Deliverables界面根据自己的需要选择相应的demo,如果没有找到自己想用的器件就选择相近的生成之后自己修改器件 。 (5)生成IP之后,会在IP目录文件夹下生成一个example design,打开该工程。 这里需要说
    的头像 发表于 04-15 16:34 1250次阅读
    易灵思Jtag_bridge_<b class='flag-5'>loader</b>生成-v2

    瑞萨RZ/V2L预训练的人工智能模型

    RZ/V2L还与RZ/G2L封装和引脚兼容。这使得RZ/G2L用户可轻松升级至RZ/V2L,以获得额外的人工智能功能,而无需修改系统配置,从
    发表于 03-21 13:51 376次阅读
    瑞萨<b class='flag-5'>RZ</b>/V2L预训练的人工智能模型

    STM32F103C8T6在boot loader使用USB中断后,app区再使用usb中断不会跳转到app区的原因?

    主控是STM32F103C8T6,程序是我移植的之前写bootloader和APP的代码,是使用的串口IAP(在串口上使用一点问题没有)。我现在遇到的情况是在boot loader使用了USB中断
    发表于 03-11 07:10

    RZ/G2L、RZ/G2LC和RZ/G2UL的SMARC EVK启动指南Rev.1.01

    电子发烧友网站提供《RZ/G2L、RZ/G2LC和RZ/G2UL的SMARC EVK启动指南Rev.1.01.pdf》资料免费下载
    发表于 02-02 09:45 1次下载
    <b class='flag-5'>RZ</b>/G2L、<b class='flag-5'>RZ</b>/G2LC和<b class='flag-5'>RZ</b>/G2UL的SMARC EVK启动指南Rev.1.01

    RZ/G1H、RZ/G1M、RZ/G1N和 RZ/G1E Linux启动指南

    电子发烧友网站提供《RZ/G1H、RZ/G1M、RZ/G1N和 RZ/G1E Linux启动指南.pdf》资料免费下载
    发表于 02-02 09:43 0次下载
    <b class='flag-5'>RZ</b>/G1H、<b class='flag-5'>RZ</b>/G1M、<b class='flag-5'>RZ</b>/G1N和  <b class='flag-5'>RZ</b>/G1E  Linux启动指南

    RZ/T2M、RZ/N2L、RZ/T2L组 硬件设计指南

    电子发烧友网站提供《RZ/T2M、RZ/N2L、RZ/T2L组 硬件设计指南.pdf》资料免费下载
    发表于 02-02 09:39 2次下载
    <b class='flag-5'>RZ</b>/T2M、<b class='flag-5'>RZ</b>/N2L、<b class='flag-5'>RZ</b>/T2L组 硬件设计指南

    RZ/G2L RZ/G2LC RZ/G2UL RZ/G3S灵活软件包应用说明

    电子发烧友网站提供《RZ/G2L RZ/G2LC RZ/G2UL RZ/G3S灵活软件包应用说明.pdf》资料免费下载
    发表于 01-14 10:46 1次下载
    <b class='flag-5'>RZ</b>/G2L <b class='flag-5'>RZ</b>/G2LC <b class='flag-5'>RZ</b>/G2UL <b class='flag-5'>RZ</b>/G3S灵活软件包应用说明

    PN代码适配客户板子修改方法

    Renesas RZ/N2L入门套件 + 用于使用RZ/N2L MPU进行评估或开发。
    的头像 发表于 01-10 12:20 1609次阅读
    PN代码适配客户板子<b class='flag-5'>修改</b><b class='flag-5'>方法</b>

    maskrom进入loader模式

    Maskrom模式的定义、用途、进入方法以及与之相关的技术细节。 一、什么是Maskrom模式 Maskrom模式,也称为Loader模式,是一种特殊的启动模式,一般用于恢复或维修有问题的设备。这种模式允许用户直接与设备的硬件进行交互,而不需要经过操作系统。在Maskro
    的头像 发表于 01-08 10:39 6073次阅读

    linux修改静态ip地址方法

    在Linux系统中修改静态IP地址可以通过多种方式实现。在本文中,我们将介绍两种常见的方法:命令行方式和配置文件方式。无论你是初学者还是有经验的Linux用户,本文都将向你展示如何使用这两种方法
    的头像 发表于 11-17 10:36 5754次阅读