|
我的bootloader地址为0x00000-0x13FFF,APP地址为0x14000-7FFFF,我在app中定义了一段section(0x18000 size为28byte)用来存一些数据,现在的问题是,自己定义的这段section之前除了14000-14400之外是空的,为什么我的程序没存在14400-18000这段地址里?
部分link文件如下。
define region m_flash_config_region = mem:[from m_flash_config_start to m_flash_config_end];
define region TEXT_region = mem:[from m_interrupts_start to m_interrupts_end]
| mem:[from m_text_start to m_text_end];
define region DATA_region = mem:[from m_data_start to m_data_end];
define region DATA_region_2 = mem:[from m_data_2_start to m_data_2_end-__size_cstack__ - _size_m_fbl_];
define region FBL_region = mem:[from m_fbl_start to m_fbl_end];
define region CSTACK_region = mem:[from m_data_2_end-__size_cstack__+1 to m_data_2_end];
define region m_interrupts_ram_region = mem:[from m_interrupts_ram_start to m_interrupts_ram_end];
define region Checksum_Header = mem:[from 0x00018000 size 0x28];
place at address mem: m_interrupts_start { readonly section .intvec };
place in m_flash_config_region { section FlashConfig };
place in TEXT_region { readonly };
place in TEXT_region { block __CODE_ROM };
place in DATA_region { block RW };
place in DATA_region { block __CODE_RAM };
place in DATA_region_2 { block customSectionBlock };
place in DATA_region_2 { block ZI };
place in DATA_region_2 { last block HEAP };
place in FBL_region { block __FBL_RAM};
place in CSTACK_region { block CSTACK };
place in m_interrupts_ram_region { section m_interrupts_ram };
place in Checksum_Header { readonly section MY_Checksum_Header };
部分hex如下:
:1043E000359F0300359F0300359F0300359F030071
:1043F000359F0300359F0300359F0300FFFFFFFF3C
:10440000FFFFFFFFFFFFFFFFFFFFFFFFFE7FFFFF3D
:108000005555FFFF750001010040010000200300ED
:108010000040010000200000A5A5A5A5A5A5A5A5D7
:10802000A5A5A5A5A5A5A5A510B50024E4B22B2C52 |
阿莫论坛20周年了!感谢大家的支持与爱护!!
月入3000的是反美的。收入3万是亲美的。收入30万是移民美国的。收入300万是取得绿卡后回国,教唆那些3000来反美的!
|