栈名:S TAC K 大小:Stack_Size 只分配空间不做初始化或者初始化为0:NOINIT 可读可写:READWRITE : 按8 字节对齐:ALI GN=3 栈顶地址:__in it ia l_s p Stack_Size EQ U 0x00000400 A R EA S TAC K, NOINIT, READWRITE , ALI GN=3 Stack_Mem S PA C E Stack_Size __in it ia l_s p 请问以上程序中的:__in it ia l_s p 这个没有定义编译器怎么知道它呢 谢谢 |
RE:stm32启动代码问题
回复:stm32启动代码问题
RE:stm32启动代码问题
; Heap Configuration
; Heap Size (in Bytes)
;
Heap_Size EQU 0x00000200
AREA HEAP, NOINIT, READWRITE, ALIGN=3
最上面的是栈的设置,
RE:stm32启动代码问题
RE:stm32启动代码问题
C语言编译出来都的内容包括: RO(代码)、RW(数据/也就是有初始化的变量)、ZI(未初始化的变量)。
这个是ARM构架的内容。
EQU是汇编指令,
ALIGN是预编译指令,用来做全局变量对齐的。
A R EA S TAC K, NOINIT, READWRITE , ALI GN=3
RE:stm32启动代码问题