📄 demo.lnk
字号:
/* ----------------------------------------------------------------------
* This is the default Link Editor Command Language file that specifies
* how an embedded application should be linked and located. Combined with
* the other Link Editor Command Files provided with the compiler, it
* provides a base to build your own file for your particular system.
*
* For a description of the different statements in this file, please
* refer to the D-LD User's Manual.
* ---------------------------------------------------------------------- */
MEMORY
{
iram :origin=0x01000000,length=4096
ram : origin=0x00001000,length=(0x01000000-0x00002000)
vect: org = 0x00000000, len = 0x400
}
SECTIONS
{
/* The Nucleus vector table is placed at address 0x0 */
.vectors : {} > vect
/* The first group contains code and constant data */
GROUP : {
/* First take all code from all objects and libraries */
.text (TEXT) : {
*(.text) *(.rodata) *(.rdata) *(.init) *(.fini) *(.eini)
. = (.+15) & ~15;
}
/* Next take all small CONST data */
.sdata2 (TEXT) : {}
} > ram
/* The second group will allocate space for the initialized data
* (.data/.sdata) and the unititialized data (.bss/.sbss) in the "ram" section.
*/
GROUP : {
.data (DATA) : {}
/* .sdata contains small address data */
.sdata (DATA) : {}
/* This will allocate the the .bss symbols */
.sbss (BSS) : {}
.bss (BSS) : {}
/* Any space left over will be used as a heap */
} >ram
}
/* Definitions of identifiers used by sbrk.c, init.c and the different
* crt0.s files. Their purpose is to control initialization and memory
* memory allocation.
*
* __HEAP_START : Used by sbrk.c. Start of memory used by malloc() etc.
* __HEAP_END : Used by sbrk.c. End of heap memory
* __SP_INIT : Used by crt0.s. Initial address of stack pointer
* __SP_END : Used by sbrk.c. Only used when stack probing
* __DATA_ROM : Used by init.c. Address of initialized data in ROM
* __DATA_RAM : Used by init.c. Address of initialized data in RAM
* __DATA_END : Used by init.c. End of allocated initialized data
* __BSS_START : Used by init.c. Start of uninitialized data
* __BSS_END : Used by init.c. End of data to be cleared
* ---------------------------------------------------------------------- */
__HEAP_START = ADDR(.bss)+SIZEOF(.bss);
__SP_INIT = ADDR(ram)+SIZEOF(ram);
__HEAP_END = __SP_INIT-0x800;
__SP_END = __HEAP_END;
__DATA_RAM = ADDR(.data);
__DATA_ROM = __DATA_RAM;
__DATA_END = ADDR(.sdata)+SIZEOF(.sdata);
__BSS_START = ADDR(.sbss);
__BSS_END = ADDR(.bss)+SIZEOF(.bss);
STKTOP = ADDR(.bss)+SIZEOF(.bss)+0x1000;
_sys_memory = STKTOP;
_clean1 = ADDR(.bss);
_size = SIZEOF(.bss);
/* Some targets use an extra underscore in front of identifiers
* ---------------------------------------------------------------------- */
___HEAP_START = __HEAP_START;
___HEAP_END = __HEAP_END;
___SP_INIT = __SP_INIT;
___SP_END = __SP_END;
___DATA_ROM = __DATA_ROM;
___DATA_RAM = __DATA_RAM;
___DATA_END = __DATA_END;
___BSS_START = __BSS_START;
___BSS_END = __BSS_END;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -