weller
Newbie level 4
Hi all,
I designed a print with a LM3S6965 microcontroller. This chip has a serial flash loader which the microcontroller can be programmed.
It's possible to use this flash loader to program the chip once time. After that, the flashloader is erased.
But it is also possible to use this flash loader to program the software followed by a start command, to start the software. And that is what I want to do.
In that case I know that I need to make a few changes. I try to a FreeRTOS example work on it.
Now I've changed the beginaddress of the FLASH in de linkerscript, and figured out what's start entry of the software (because i need this to give the correct start pointer to the serial flash loader.)
Also, in the datasheet of the LM3S6965 they about initialize the stackpointer to top. If I place that in my startupcode, it won't compile.
the compiler comes up with this message
If I ignore this and compile it without, the microcontroller do something port initialisation but then it freezes. It wil not become in the main for(; loop.
Is there something that i forget now or is there anyone who could give me a good solution?
I designed a print with a LM3S6965 microcontroller. This chip has a serial flash loader which the microcontroller can be programmed.
It's possible to use this flash loader to program the chip once time. After that, the flashloader is erased.
But it is also possible to use this flash loader to program the software followed by a start command, to start the software. And that is what I want to do.
In that case I know that I need to make a few changes. I try to a FreeRTOS example work on it.
Now I've changed the beginaddress of the FLASH in de linkerscript, and figured out what's start entry of the software (because i need this to give the correct start pointer to the serial flash loader.)
Also, in the datasheet of the LM3S6965 they about initialize the stackpointer to top. If I place that in my startupcode, it won't compile.
Code:
//
// Set the stack pointer to the "top" of the stack.
//
__asm("ldr sp, = g_ulStackTop");
__asm("ldr sp, g_ulStackTop");
the compiler comes up with this message
Code:
/tmp/ccSb5Uif.s: Assembler messages:
/tmp/ccSb5Uif.s:97: Error: cannot represent T32_OFFSET_IMM relocation in this object file format
make: *** [startup.o] Error 1
If I ignore this and compile it without, the microcontroller do something port initialisation but then it freezes. It wil not become in the main for(; loop.
Is there something that i forget now or is there anyone who could give me a good solution?