This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

printf on Flash target

I am using the LPC 2294 and trying to display messages through HyperTerminal, using printf in my main(). However, there is no display when I start loading and debugging my project. I made sure that I am using the correct serial port and HyperTerminal is connected correctly because I tried out the Hello demo and it works. The problem arises when I switch from external RAM to Flash. printf works on xRAM but not on flash. Why?

  • this looks like a configuration issue. Did you use an standard example (C:\Keil\ARM\Boards\Phytec\LPC229x\Hello) for testing?

    Make sure that the STARTUP.S settings are correct. Under Options for 'startup.s' - Asm - Define you should remove EXTERNAL_MODE when running from on-chip Flash.

  • Hi, thanks for replying to my post.

    I used the standard Hello demo and it executes fine (LED D3 blinks and HyperTerminal blinks "Hello World"). I don't have EXTERNAL_MODE defined in that target option.

    I'm thinking this could be a retarget issue? My program runs off xram fine, but when using the same exact codes on flash,it doesn't work. I commented out my printf's in flash and the LED blinks like how I written the code.

    That was when I started comparing the Hello demo which runs on flash to my program. I have 2target settings on 1 project to make it easy to switch from Flash to XRAM, but it works on xram but not flash.