大学生
最后登录1970-1-1
在线时间 小时
注册时间2019-8-12
|
楼主 |
发表于 2019-10-24 16:57:58
|
显示全部楼层
应该是区分开,
这个是emwin头文件中 定义的大数组
AT_NONCACHEABLE_SECTION_ALIGN(uint8_t s_gui_memory[GUI_NUMBYTES * LCD_BYTES_PER_PIXEL], FRAME_BUFFER_ALIGN);
AT_NONCACHEABLE_SECTION_ALIGN(uint8_t s_vram_buffer[VRAM_SIZE * GUI_BUFFERS * LCD_BYTES_PER_PIXEL], FRAME_BUFFER_ALIGN);
这个是分散加载文件:
#define m_sdram_interrupts_start 0x80020000
#define m_sdram_interrupts_size 0x00000400
;SDRAM中的主体代码
#define m_sdram_text_start 0x80020400
;分配2M的代码空间
#define m_sdram_text_size 0x002DFC00
#define m_data_start 0x80300000
#define m_data_size 0x00100000
#define m_ncache_start 0x80400000
#define m_ncache_size 0x01C00000
#define m_data2_start 0x20000000
#define m_data2_size 0x00020000
#define m_data3_start 0x20200000
#define m_data3_size 0x00040000
/* Sizes */
#if (defined(__stack_size__))
#define Stack_Size __stack_size__
#else
#define Stack_Size 0x10000
#endif
#if (defined(__heap_size__))
#define Heap_Size __heap_size__
#else
#define Heap_Size 0x0A000
#endif
LR_m_text m_sdram_interrupts_start m_sdram_text_start+m_sdram_text_size-m_sdram_interrupts_size { ; load region size_region
; 在FALSH中的中断向量表
VECTOR_ROM m_sdram_interrupts_start m_sdram_interrupts_size { ; load address = execution address
* (RESET,+FIRST)
}
ER_m_text m_sdram_text_start m_sdram_text_size { ; load address = execution address
* (InRoot$$Sections)
.ANY (+RO)
}
RW_m_data m_data_start m_data_size-Stack_Size-Heap_Size { ; RW data
.ANY (+RW +ZI)
*(m_usb_dma_init_data)
*(m_usb_dma_noninit_data)
}
ARM_LIB_HEAP +0 EMPTY Heap_Size { ; Heap region growing up
}
ARM_LIB_STACK m_data_start+m_data_size EMPTY -Stack_Size { ; Stack region growing down
}
RW_m_ncache m_ncache_start m_ncache_size { ; ncache RW data
* (NonCacheable.init)
* (NonCacheable)
}
} |
|