0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線(xiàn)課程
  • 觀(guān)看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

RZ Loader APP工程修改方法

瑞薩MCU小百科 ? 來(lái)源:瑞薩MCU小百科 ? 2024-01-09 12:08 ? 次閱讀

一、使用場(chǎng)景

客戶(hù)在使用N2L做多協(xié)議產(chǎn)品時(shí),在不同的產(chǎn)品上,需要同時(shí)將幾種協(xié)議的程序燒錄進(jìn)flash中,然后通過(guò)不同的撥碼或功能碼配置來(lái)選擇加載不同協(xié)議,此種情況下,就需要使用bootloader做程序的引導(dǎo)選擇功能。此時(shí)則需要將產(chǎn)品代碼分成2個(gè)工程,即一個(gè)Bootloader工程,一個(gè)Application工程,Bootloader工程里做不同協(xié)議的選擇,加載功能,根據(jù)需求加載不同協(xié)議運(yùn)行。

由于RZ工程正常啟動(dòng)時(shí),代碼分成LDR部分和user部分,所以Bootloader可以分別對(duì)Application以上2部分進(jìn)行加載,在Bootloader工程里里復(fù)制application的LDR部分到BTCM里運(yùn)行,由于LDR程序里有根據(jù)user代碼、數(shù)據(jù)的起始地址和長(zhǎng)度定義,從flash區(qū)拷貝到RAM區(qū)運(yùn)行的代碼,所以只要LDR程序運(yùn)行起來(lái),代碼則可以自動(dòng)完成user程序的加載運(yùn)行。

二、加了bootloader后的啟動(dòng)流程

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

步驟解析:

1

芯片內(nèi)部boot根據(jù)loader Parameters加載bootloader的LDR代碼到BTCM的0x102000地址區(qū)。

2

bootloader的LDR程序運(yùn)行后,會(huì)根據(jù)icf文件的配置從flash區(qū)加載bootloader的user代碼(包括data段、prg段、rodata段等)到ATCM運(yùn)行。

3

Bootloader的user里需要添加代碼來(lái)搬移application的LDR到BTCM運(yùn)行。

4

Application的LDR運(yùn)行后,會(huì)根據(jù)application的icf文件配置加載application的user代碼,并運(yùn)行整個(gè)程序。

1. Bootloader程序和application是2個(gè)獨(dú)立的工程

2. loader Parameters只配置bootloader工程的就可以,application是通過(guò)bootloader加載的,所以不需要更改此參數(shù)

3.bootloader和application的LDR部分復(fù)用BTCM的0x102000地址空間

4.由于本來(lái)是一次啟動(dòng)加載的過(guò)程,現(xiàn)在是啟了2次,在startup文件開(kāi)頭的特權(quán)模式下的操作不能重復(fù)進(jìn)行,否則會(huì)報(bào)錯(cuò),所以在application工程中要屏蔽掉此部分代碼

三、bootloader工程修改過(guò)程

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

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

1

確定要加載的幾個(gè)不同程序的FLASH地址

2

使用FSP工具配置一個(gè)工程

3

增加copy application的代碼和跳轉(zhuǎn)代碼

四、App修改點(diǎn)

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在原有獨(dú)立工程基礎(chǔ)上按設(shè)置的FLASH地址做偏移,所有flash的配置都要加對(duì)應(yīng)的偏移,圖示以EIP為例

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

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

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

2

Startup.c里system_init中屏蔽掉對(duì)特權(quán)模式的操作

3

調(diào)試時(shí)要注意bootloader和application里幾個(gè)MPU_REGION的設(shè)置保持一致

審核編輯:黃飛

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀(guān)點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • FlaSh
    +關(guān)注

    關(guān)注

    10

    文章

    1610

    瀏覽量

    147573
  • bootloader
    +關(guān)注

    關(guān)注

    2

    文章

    233

    瀏覽量

    45467
  • LDR
    LDR
    +關(guān)注

    關(guān)注

    0

    文章

    98

    瀏覽量

    7538

原文標(biāo)題:RZ Loader APP工程修改方法

文章出處:【微信號(hào):瑞薩MCU小百科,微信公眾號(hào):瑞薩MCU小百科】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    TC397的Bootloader燒錄APP工程后可以跳轉(zhuǎn)執(zhí)行,但是APP工程里面的以太網(wǎng)功能會(huì)出現(xiàn)異常,為什么?

    再次燒寫(xiě)),但是以太網(wǎng)功能異常; 請(qǐng)問(wèn)這個(gè)一般是什么原因造成的呢。(燒寫(xiě)的這個(gè)APP工程的鏈接文件進(jìn)行了修改,如果APP工程的鏈接文件不
    發(fā)表于 07-22 08:10

    變頻器功率修改方法

    ? ? ? 本文主要介紹變頻器功率修改方法,主要介紹常用牌子及其型號(hào),希望對(duì)業(yè)內(nèi)人士有所幫助。變頻器功率修改有什么好處?很多牌子的變頻器電源板、驅(qū)動(dòng)板、主板都可以通用,只要型號(hào)、體積、硬件一樣,可以
    的頭像 發(fā)表于 07-21 16:55 ?888次閱讀
    變頻器功率<b class='flag-5'>修改</b><b class='flag-5'>方法</b>

    ESP32-S3如何在blufi工程代碼里去修改設(shè)備的藍(lán)牙名稱(chēng)?

    你們好,請(qǐng)問(wèn)我想在blufi工程代碼里去修改設(shè)備的藍(lán)牙名稱(chēng),我修改#define BLUFI_DEVICE_NAME 的名稱(chēng)發(fā)現(xiàn)無(wú)效,但是如果用app點(diǎn)擊連接之后下次重啟顯示的藍(lán)牙名稱(chēng)
    發(fā)表于 06-07 06:56

    STM32F103C8T6在bootloader使用了USB中斷后,app區(qū)再使用usb中斷,直接不會(huì)跳轉(zhuǎn)到app區(qū),怎么解決?

    主控是STM32F103C8T6,程序是我移植的之前寫(xiě)bootloader和APP的代碼,是使用的串口IAP(在串口上使用一點(diǎn)問(wèn)題沒(méi)有)。我現(xiàn)在遇到的情況是在boot loader使用了USB中斷
    發(fā)表于 05-21 08:00

    數(shù)據(jù)點(diǎn)修改后未生效的解決方案

    在使用機(jī)智云App時(shí),有時(shí)候修改了數(shù)據(jù)點(diǎn)后卻發(fā)現(xiàn)沒(méi)有任何變化。這可能是由于設(shè)備綁定或App代碼更新等原因?qū)е碌?。針?duì)這一問(wèn)題,我們可以采取以下解決方案:官網(wǎng)通用調(diào)試App1、如果是虛擬
    的頭像 發(fā)表于 05-08 08:10 ?246次閱讀
    數(shù)據(jù)點(diǎn)<b class='flag-5'>修改</b>后未生效的解決方案

    易靈思Jtag_bridge_loader生成-v2

    Deliverables界面根據(jù)自己的需要選擇相應(yīng)的demo,如果沒(méi)有找到自己想用的器件就選擇相近的生成之后自己修改器件 。 (5)生成IP之后,會(huì)在IP目錄文件夾下生成一個(gè)example design,打開(kāi)該工程。 這里需要說(shuō)
    的頭像 發(fā)表于 04-15 16:34 ?1159次閱讀
    易靈思Jtag_bridge_<b class='flag-5'>loader</b>生成-v2

    瑞薩RZ/V2L預(yù)訓(xùn)練的人工智能模型

    RZ/V2L還與RZ/G2L封裝和引腳兼容。這使得RZ/G2L用戶(hù)可輕松升級(jí)至RZ/V2L,以獲得額外的人工智能功能,而無(wú)需修改系統(tǒng)配置,從
    發(fā)表于 03-21 13:51 ?349次閱讀
    瑞薩<b class='flag-5'>RZ</b>/V2L預(yù)訓(xùn)練的人工智能模型

    STM32F103C8T6在boot loader使用USB中斷后,app區(qū)再使用usb中斷不會(huì)跳轉(zhuǎn)到app區(qū)的原因?

    主控是STM32F103C8T6,程序是我移植的之前寫(xiě)bootloader和APP的代碼,是使用的串口IAP(在串口上使用一點(diǎn)問(wèn)題沒(méi)有)。我現(xiàn)在遇到的情況是在boot loader使用了USB中斷
    發(fā)表于 03-11 07:10

    RZ/G2L、RZ/G2LC和RZ/G2UL的SMARC EVK啟動(dòng)指南Rev.1.01

    電子發(fā)燒友網(wǎng)站提供《RZ/G2L、RZ/G2LC和RZ/G2UL的SMARC EVK啟動(dòng)指南Rev.1.01.pdf》資料免費(fèi)下載
    發(fā)表于 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啟動(dòng)指南Rev.1.01

    RZ/G1H、RZ/G1M、RZ/G1N和 RZ/G1E Linux啟動(dòng)指南

    電子發(fā)燒友網(wǎng)站提供《RZ/G1H、RZ/G1M、RZ/G1N和 RZ/G1E Linux啟動(dòng)指南.pdf》資料免費(fèi)下載
    發(fā)表于 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啟動(dòng)指南

    RZ/T2M、RZ/N2L、RZ/T2L組 硬件設(shè)計(jì)指南

    電子發(fā)燒友網(wǎng)站提供《RZ/T2M、RZ/N2L、RZ/T2L組 硬件設(shè)計(jì)指南.pdf》資料免費(fèi)下載
    發(fā)表于 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組 硬件設(shè)計(jì)指南

    RZ/G2L RZ/G2LC RZ/G2UL RZ/G3S靈活軟件包應(yīng)用說(shuō)明

    電子發(fā)燒友網(wǎng)站提供《RZ/G2L RZ/G2LC RZ/G2UL RZ/G3S靈活軟件包應(yīng)用說(shuō)明.pdf》資料免費(fèi)下載
    發(fā)表于 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靈活軟件包應(yīng)用說(shuō)明

    PN代碼適配客戶(hù)板子修改方法

    Renesas RZ/N2L入門(mén)套件 + 用于使用RZ/N2L MPU進(jìn)行評(píng)估或開(kāi)發(fā)。
    的頭像 發(fā)表于 01-10 12:20 ?1569次閱讀
    PN代碼適配客戶(hù)板子<b class='flag-5'>修改</b><b class='flag-5'>方法</b>

    maskrom進(jìn)入loader模式

    Maskrom模式的定義、用途、進(jìn)入方法以及與之相關(guān)的技術(shù)細(xì)節(jié)。 一、什么是Maskrom模式 Maskrom模式,也稱(chēng)為Loader模式,是一種特殊的啟動(dòng)模式,一般用于恢復(fù)或維修有問(wèn)題的設(shè)備。這種模式允許用戶(hù)直接與設(shè)備的硬件進(jìn)行交互,而不需要經(jīng)過(guò)操作系統(tǒng)。在Maskro
    的頭像 發(fā)表于 01-08 10:39 ?5647次閱讀

    RZ/T2M RZ/N2L RZ/T2L系列應(yīng)用心得

    RZ/T2M和RZ/N2L共用各種軟件協(xié)議棧支持情況。
    的頭像 發(fā)表于 11-15 16:09 ?1862次閱讀
    <b class='flag-5'>RZ</b>/T2M <b class='flag-5'>RZ</b>/N2L <b class='flag-5'>RZ</b>/T2L系列應(yīng)用心得