|
大家好,我是痞子衡,是正經(jīng)搞技術(shù)的痞子。今天痞子衡給大家介紹的是MCUXpresso IDE下將應(yīng)用程序RW段分散鏈接的幾種方法。
+ K2 ]9 b% A# N, ~9 d. f早期的 MCU 芯片,一般都會(huì)嵌入內(nèi)部 Flash 和 RAM,并且 Flash 和 RAM 都只有一塊(即均在連續(xù)的映射地址范圍內(nèi)),因此在鏈接應(yīng)用程序時(shí)處理比較簡(jiǎn)單,程序 RO 段全部放在單一 Flash 空間,程序 RW 段全部放在單一 RAM 空間即可。" e& p+ @1 y3 F
隨著時(shí)代發(fā)展,現(xiàn)在的 MCU 越來(lái)越高端了,比如那些 Cortex-M7 內(nèi)核的 MCU 中(最典型的代表 - 恩智浦 i.MXRT 系列)普遍引入了高速 TCM RAM,然后芯片內(nèi)部也還有一些普通 On-chip RAM,當(dāng)然芯片也能支持外擴(kuò)大容量 SDRAM、PSRAM 等,在這種情況下就出現(xiàn)了多塊地址空間不連續(xù)的 RAM 區(qū)域,這時(shí)候該如何鏈接程序 RW 段到這些分散的 RAM 空間里呢?* h" E# ^7 S0 F+ K
最近痞子衡在支持一個(gè)美國(guó)G客戶,客戶做項(xiàng)目選用的 MCUXpresso IDE,在這個(gè) IDE 下客戶沒(méi)有找到完美的 RW 段分散鏈接解決方案。今天痞子衡就給大家介紹一下 MCUXpresso IDE 下分散鏈接的幾種方法,也順便提一下 IAR、MDK 下的做法。9 ^0 {; _. }+ z" T- n
Note:本篇是 《MCUXpresso IDE下工程鏈接文件配置管理與自動(dòng)生成機(jī)制》 一文的進(jìn)階篇。一、準(zhǔn)備開(kāi)發(fā)環(huán)境首先需要準(zhǔn)備好環(huán)境,包含必要的軟件,痞子衡的環(huán)境如下:; W- T0 l/ K+ V
集成開(kāi)發(fā)環(huán)境:MCUXpresso IDE_11.4.0_6224,點(diǎn)此下載軟件開(kāi)發(fā)包:SDK_2.10.0_EVK-MIMXRT1170(Toolchain需包含MCUXpresso IDE),點(diǎn)此下載二、引入RW段分散鏈接問(wèn)題我們先按照 《MCUXpresso IDE下SDK工程導(dǎo)入與workspace管理機(jī)制》 一文步驟從 SDK 包里導(dǎo)入生成一個(gè)工程(就選最簡(jiǎn)單的 hello_world 吧)。工程導(dǎo)入成功后,會(huì)在 \MCUXpressoIDE_11.4.0_6224\workspace\evkmimxrt1170_hello_world_demo_cm7 下看到 .project 工程文件,在 MCUXpresso IDE 下打開(kāi)這個(gè)工程,然后調(diào)整工程設(shè)置 Memory 定義中順序如下: |
|