hi,
i am using olimex lpc2294 evaluation board and eclipse for writing the firmware…i want to know how to write script file(cmd file) for lpc2294
can anyone help me…
with thanks
aravind
hi,
i am using olimex lpc2294 evaluation board and eclipse for writing the firmware…i want to know how to write script file(cmd file) for lpc2294
can anyone help me…
with thanks
aravind
I suggest you try an be somewhat more specific… what exactly is it that you are trying to accomplish?
My guess is you are looking for a way to download the built code to the LPC, but as I said, this is only a guess.
Hi,
I think you want to know how to write a linking script file, right? I suggest you to read this document “Using ld, the GNU linker”. Just Google it.
Here’s an example.
ENTRY(_startup)
/* specify the LPC2106 memory areas */
MEMORY
{
flash : ORIGIN = 0, LENGTH = 128K /* FLASH ROM */
ram_isp_low(A) : ORIGIN = 0x40000120, LENGTH = 223 /* variables used by Philips ISP bootloader */
ram : ORIGIN = 0x40000200, LENGTH = 64992 /* free RAM area */
ram_isp_high(A) : ORIGIN = 0x4000FFE0, LENGTH = 32 /* variables used by Philips ISP bootloader */
}
/* define a global symbol _stack_end */
_stack_end = 0x4000FEDC;
/* now define the output sections */
SECTIONS
{
. = 0; /* set location counter to address zero */
startup : { (.startup)} >flash / the startup code goes into FLASH */
.text : /* collect all sections that should go into FLASH after startup */
{
(.text) / all .text sections (code) */
(.rodata) / all .rodata sections (constants, strings, etc.) */
(.rodata) /* all .rodata* sections (constants, strings, etc.) */
(.glue_7) / all .glue_7 sections (no idea what these are) */
(.glue_7t) / all .glue_7t sections (no idea what these are) */
_etext = .; /* define a global symbol _etext just after the last code byte */
} >flash /* put all the above into FLASH */
.data : /* collect all initialized .data sections that go into RAM */
{
_data = .; /* create a global symbol marking the start of the .data section */
(.data) / all .data sections */
_edata = .; /* define a global symbol marking the end of the .data section */
} >ram AT >flash /* put all the above into RAM (but load the LMA copy into FLASH) */
.bss : /* collect all uninitialized .bss sections that go into RAM */
{
_bss_start = .; /* define a global symbol marking the start of the .bss section */
(.bss) / all .bss sections */
} >ram /* put all the above in RAM (it will be cleared in the startup code */
. = ALIGN(4); /* advance location counter to the next 32-bit boundary */
_bss_end = . ; /* define a global symbol marking the end of the .bss section */
}
_end = .; /* define a global symbol marking the end of application RAM */
Regards,
Kevin