Yahoo Groups archive

Lpc2000

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

Message

Re: [lpc2000] newbie question - booting

2006-03-24 by Tom Walsh

kathy_wright_ca wrote:

>I've been developing code for several months on the Keil 2130 board 
>with a 2138 - no problems I haven't been able to figure out so far. 
>
>  
>
Your best bet is to get some type of JTAG running so that you can debug 
the code.  Depending on your JTAG, you may need to place a loop at the 
startup entry label to give the processor some delay so the JTAG can 
reset the board and catch the processor before it starts to excute any 
code beyond the delay loop.  This is what I use on the LPC2106 to allow 
an Abatron BDI2000 to "catch" the processor:

============ begin crt0.S ================
_start:
start:
;
      ldr   r0, JTAG2
      ldr   r1, PINSELREG
      str   r0, [r1]       // activate secondary JTAG port.
;
      mov   r3, #0x10000
startdelay:
      subs  r3, r3, #1
      bne   startdelay     // give debugger time to catch us.
;

============== snip ===================

The above delay is needed on the LPC2106 as I am switching to the 
secondary JTAG and the BDI2000 has no control until that code executes.  
On the LPC2138, no loop is needed as it catches the processor nicely at 
the first opcode.  With a wiggler (lower speed JTAG device), you may 
still need a slight delay loop to catch the processor before it slams 
into whatever bad code you have.


Regards,

TomW


-- 
Tom Walsh - WN3L - Embedded Systems Consultant
http://openhardware.net, http://cyberiansoftware.com
"Windows? No thanks, I have work to do..."
----------------------------------------------------

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.