Forums

ARM7/LPC21xx debugging capabilities

Started by Oliver Betz October 16, 2004
Hello All,

reading some of the specs I'm still not completely sure about the
debugging capabilities of a LPC21xx.

Can I access memory "non intrusive" while the program is executing
(like BDM in the 68HC(S)12 or the HCS08?)?

Or does a memory read always interrupt program execution for some
cycles?

If "non intrusive" is possible: is this a standard feature of
debuggers?

Any general hints about good debuggers?

Links to web sites about this topic also welcome.

Thanks in advance,

Oliver
-- 
Oliver Betz, Muenchen (oliverbetz.de)
Oliver Betz wrote:

>Hello All, > >reading some of the specs I'm still not completely sure about the >debugging capabilities of a LPC21xx. > >Can I access memory "non intrusive" while the program is executing >(like BDM in the 68HC(S)12 or the HCS08?)? > >... >
It depends? If you are using JTAG, I think you are access memory while the program is running. If you are using a monitor, then no. -- // richard http://www.imagecraft.com
> reading some of the specs I'm still not completely sure about the > debugging capabilities of a LPC21xx.
Have a look at http://groups.yahoo.com/group/lpc2000/ or post your question there. There are a lot of experts which (i think) can help you ! Regards, Martin
Hi Oliver,

the LPC21xx has two debugging interfaces. One is called JTAG and
allows most things that BDM can do. This is supported by many
debuggers, such as Keil, IAR, ... but also by the emulator vendors
like Nohau, Hitex, Ashling (and many others) support this device via
JTAG and the second option which is called ETM (embedded trace
macrocell).  This option allows real-time, non-intrusive codetrace.
ETM requires an additional 9 pins which will not be availble for I/O
if you use them for debugging. By the way, it seems that Philips is
more serious about debugging options than e.g. Atmel or ST
Mircoelectronics with their ARM7 devices. All three offer JTAG but
only Philips offers trace capability with ETM. For more questions
about the LPC2000 family the user group in Yahoo is an excellent
source of information. You can find it here:
http://groups.yahoo.com/group/lpc2000/

Greetings an Schwob in the US
p.s. comparing the LPC21xx to the HCS08 is like comparing a BMW
5-series M to a Ford Taurus (similar to a Mondeo in Europe). Both are
similar in size and can transport 5 people but the performance is VERY
different. Luckily the price difference in the microcontrollers does
not exist if you compare similar memory sizes.

Oliver Betz <OBetz@despammed.com> wrote in message news:<4170e71b.2506757@z1.oliverbetz.de>...
> Hello All, > > reading some of the specs I'm still not completely sure about the > debugging capabilities of a LPC21xx. > > Can I access memory "non intrusive" while the program is executing > (like BDM in the 68HC(S)12 or the HCS08?)? > > Or does a memory read always interrupt program execution for some > cycles? > > If "non intrusive" is possible: is this a standard feature of > debuggers? > > Any general hints about good debuggers? > > Links to web sites about this topic also welcome. > > Thanks in advance, > > Oliver
schwobus@aol.com (Schwob) wrote:

>the LPC21xx has two debugging interfaces. One is called JTAG and >allows most things that BDM can do. This is supported by many
but I didn't find any information about accessing memory during program execution. [...]
>JTAG and the second option which is called ETM (embedded trace >macrocell). This option allows real-time, non-intrusive codetrace. >ETM requires an additional 9 pins which will not be availble for I/O
hmm, 9 additional pins is pretty much. But I need only variable access most times. [...]
>only Philips offers trace capability with ETM. For more questions >about the LPC2000 family the user group in Yahoo is an excellent >source of information. You can find it here: >http://groups.yahoo.com/group/lpc2000/
I will ask there.
>p.s. comparing the LPC21xx to the HCS08 is like comparing a BMW
certainly, I only wanted to compare the debug interface capabilities. The LPC21xx could be an alternative to the HCS12 I'm using at the moment. The Motorola BDM background memory access is a really nice feature in small embedded applications, because I can watch the state of my program without debug code (well, maybe make some variables global). BTW, I never used a HCS08, only HC08 (cheap, small) and HC(S)12 because a HCS12 has a better performance/price ratio.
>5-series M to a Ford Taurus (similar to a Mondeo in Europe). Both are
hmm, too much software in modern cars. Could be I have to buy a Lada next time <g>. Oliver -- Oliver Betz, Muenchen (oliverbetz.de)