At 06:53 PM 2/15/05 +0200, Anton Erasmus wrote:
>IThe section after the uart0Puts works. When I press a key on the serial
>terminal, it is
>echoed correctly back. So it seems that the baud rate etc. is correct. If
>I compile the
>code with no optimisation (Default is set to O2), then it prints the
>"Hello World!" as
>expected. If I add a uart0Putch('U') before the uart0Puts, the U is
>printed. If I add more,
>then sometimes the "Hello World!" is printed correctly. I have looked in
>the hex file
>generated, and the ASCII data is put in the .rodata section as expected.
>It looks as if
>the ASCII strings are aligned at 4 byte boundaries, so I do not think it
>is an alignment
>problem.
>Has anyone else had problems with literal strings using gcc 3.4.3 ? Any
>suggestions on
>where I can look to find the problem would be appreciated.
Just a thought (I haven't tested 3.4.3) but this looks what you would
expect if constant data wasn't being referenced correctly. IE ld was
placing the data in flash and expecting it to be copied to RAM (and the
startup wasn't expecting the constant area to have to move). Have you
checked your link script?
Of course that leads to the question of why the link script changed, but I
can see misplacing it.
Robert
" 'Freedom' has no meaning of itself. There are always restrictions,
be they legal, genetic, or physical. If you don't believe me, try to
chew a radio signal. "
Kelvin Throop, IIIMessage
Re: [lpc2000] Problem with GNUARM 3.4.3
2005-02-15 by Robert Adsett
Attachments
- No local attachments were found for this message.