你的浏览器版本过低,可能导致网站不能正常访问!为了你能正常使用网站功能,请使用这些浏览器。
举报
moyanming2013 发表于 2016-3-22 10:35 参考使用分散加载文件。
农夫水 发表于 2016-3-22 11:08 使用at 例如 int a _at(0x68000000); 这样 a就在后边的地址中
zhangcy0217 发表于 2016-3-22 11:14 启动文件中已经有: Stack_Size EQU 0x00000400
moyanming2013 发表于 2016-3-22 22:32 分散加载文件的具体帮助内容请你参考下keil的说明手册。 这个相对比较复杂些。 ...
启动文件中已经有:
Stack_Size EQU 0x00000400
AREA STACK, NOINIT, READWRITE, ALIGN=3
Stack_Mem SPACE Stack_Size
__initial_sp
; <h> Heap Configuration
; <o> Heap Size (in Bytes) <0x0-0xFFFFFFFF:8>
; </h>
Heap_Size EQU 0x00000200
AREA HEAP, NOINIT, READWRITE, ALIGN=3
__heap_base
Heap_Mem SPACE Heap_Size
__heap_limit
在加载文件中是否还需要 Stack 和 Heap? 比如:
RW_IRAM1 0x20000000 0x00000400 { ; stack 1K
startup_stm32f2xx.o (STACK, +ZI)
}
RW_IRAM1 +0 0x00000200 { ; heap 512
startup_stm32f2xx.o (HEAP, +ZI)
}
谢谢! 这种方式可以了,这样用:
rt_uint8_t comrx_mq_buf[COMRX_MQ_LEN] __attribute__((at(0x68000000)));
分散加载文件的具体帮助内容请你参考下keil的说明手册。
这个相对比较复杂些。
好的,谢谢!