工具/软件:Code Composer Studio
我使用 safeti 库。
我想知道堆栈的大小。
在 cmd 文件中、我设置了存储器、下面是几个部分。
/*------------------ *
/*内存映射 */
存储器
{
引导程序(X) :origin=0x00000000 length=0x00000020
FLASH0 (RX) :origin=0x00000020 length=0x001FFFE0
FLASH1 (RX) :origin=0x00200000 length=0x00200000
堆栈 (RW) :origin=0x08000000 length=0x00021800
RAM (RW) :origin=0x8021800 length=0x19000
HIGH_Handler (rwx) :origin=0x803A800 length=0x000800
profile (RW) :origin=0x803B000 length=0x00008000 //添加用于分析目的*/
日志(RW) :origin=0x8043000 length=0x00003000 ffill=0xDEADBEF/*添加用于记录目的*/
FEE (R) :origin=0xF0200000 length=0x00000064 fill=0xDEADBEF/*用于 FEE 测试,仅对示例应用有效*/
}
/*------------------ *
/*段配置 */
部分
{
.expt_vecs :start( ulFlashStartAddr ){}>向量
sl_stflash_SRAM :run = high_handler、load = FLASH0|FLASH1、load_start (ulHighHandlerLoadStart)、load_end (ulHighHandlerLoadEnd)、
load_size (ulHighHandlerSize)、run_start (ulHighHandlerStartAddr)、run_end (ulHighHandlerEndAddr)
.text :{}>FLASH0|FLASH1
const :end( ulFlashEndAddr )
{}> FLASH0|FLASH1
.cinit :{}>FLASH0|FLASH1
.pinit :{}>FLASH0|FLASH1
stack_data_svc :{. += 1024;}>堆栈、RUN_START (StackModeSVC)
stack_data_fiq :{. += 1024;}>堆栈、run_start (StackModeFIQ)
STACK_DATA_IRQ :{. += 1024;}>堆栈、run_start (StackModeIRQ)
stack_data_abt :{。 += 1024;}>堆栈、run_start (StackModeABT)
stack_data_und :{. += 1024;}>堆栈、run_start (StackModeUND)
stack_data_sys :{. += 132096;}>叠块、RUN_START (StackModeSYS)
.bss :{}> RAM
.data :{}> RAM
.sysmem :{}>RAM
log_data :start( ulLOGStartAddr ),end( ulLOGEndAddr )> log
profile_data :start( ulPROFESStartAddr ),end( ulPROFESEndAddr )> profile
}
然后、在映射文件中装满所使用的堆栈。
存储器配置
名称 源 长度 使用 未使用 的属性 填充
------------ ---- ------ ---- ---- --------
向量 00000000 00000020 00000020 00000000 X
FLASH0 00000020 001fffe0 00019dd8 001e6208 R X
FLASH1 00200000 00200000 00000000 00200000 R X
堆栈 08000000 00021800 00021800 00000000 RW
RAM 08021800 00019000 000043c0 00014c40 RW
HIGH_Handler 0803a800 00000800 00000330 000004d0 RW X
配置文件 0803B000 00008000 00000000 00008000 RW
log 08043000 00003000 00003000 00000000 RW 死牛肉
F0200000 00000064 00000064 00000000 R dad牛肉
然后、我想知道 用户堆栈在哪里? 对于用户来说、使用132096尺寸的堆叠是正确的设置?