應(yīng)用場景:在項目開發(fā)過程中,可能需要對于內(nèi)存進行指定??赡苄枰娣胖蛔x的數(shù)據(jù)或者可執(zhí)行的數(shù)據(jù)。但是無法判斷這部分的內(nèi)存空間是否具有對應(yīng)的權(quán)限。這個情況下面可以在Debug模式下,通過Memory Map查看內(nèi)存映射的權(quán)限勤快。
1、Memory Map通過Debug->Memory Map打開


2、在Memory Map窗口中,包含了以下幾個部分。
(1) Current Mapped:顯示當前映射的內(nèi)存范圍。這些地址對應(yīng)于μVision IDE將邏輯段映 射到物理段的方式。
例如,0x00xxxx表示DATA、IDATA或EDATA空間中的地址;0x01xxxx表示XDATA空間中的地址,0xFFxxxx表示CODE空間中的地址。
(2) Kill Selected Range:從列表中移除所選的映射范圍
(3) Map Range:填寫需要設(shè)置的內(nèi)存范圍。
內(nèi)存范圍可以包括起始地址和結(jié)束地址,在這種情況下,范圍內(nèi)的每個字節(jié)都按照Read、Write、Execute復(fù)選框中指定的方式映射。該方框可以只包括一個字節(jié)地址,在這種情況下,字節(jié)映射為復(fù)選框所指定的。
(4) ReadWriteExecute: 可以讀取寫入執(zhí)行的內(nèi)存范圍。
(5) Map Range:將指定的內(nèi)存范圍添加到列表中。