Yahoo Groups archive

Lpc2000

Index last updated: 2026-04-28 23:31 UTC

Message

Re: LPC2106 IAP

2004-03-24 by deballendeballen

--- In lpc2000@yahoogroups.com, David Bermingham <crwpulsar@y...> 
wrote:
> Yeah, I call iap_entry(command,result) and the next line of the code 
is printf something and it never calls the printf. I pretty much 
copied the philips code from the app note because this stuff is new to 
me!(Like most of it!!!) so it must be incorrect parameter passing??

I guess you are using the GCC compiler and the ARM instruction set? 
Because I'm using that (along with AsIDE) and had exactly the same 
problem.

After some reading, and googling and some more reading and some 
assembly debugging we found some clues that lead to the solution. 

In short: turn on the compiler option '-mthumb-interwork'. This is 
nessecary since the bootloader function you are accessing is written 
in Thumb code, see page 193 of the user manual of 2003 okt 02. 

You should jump from ARM to Thumb using the BX instruction from the 
ARM instruction set. This is automatically done by your compiler but 
GCC has this function (thumb-interwork) disabled by default since it 
generates slightly bigger code. When you switch it on you shuld be 
fine...

Hope that helped!
Greetings,
Herman

Attachments

Move to quarantaine

This moves the raw source file on disk only. The archive index is not changed automatically, so you still need to run a manual refresh afterward.