JTAG debugging fails in new target hardware

Started by life speed September 13, 2007
Hi,

I am new to the world of ARM7, having previously used PICs. Now I
need more processing power and high-precision math so I decided to
step up to the world of ARM.

I worked with a software developer on a Phytec eval board using an
LPC2294 to develop code using the IAR development environment and
JTrace debugger which includes ETM debugging capabilities.

When the actual target hardware was completed, I connected the JTAG
and ETM cables to the target, changed the configuration file to
reflect the LPC2212 in my hardware, and tried to debug.

This produced the error:
"Could not find supported CPU core on JTAG chain
Bad JTAG communication: Write to IR: expected 0x1, got 0x0 (TAP
command:2) @ Off 0x5."

then:
"FATAL ERROR
Invalid core Id. (00000000)
Session aborted!"

The JTrace debugger sees target power. I have verified connectivity
of the JTAG and ETM connectors, power supplies, 10 MHz external
clock, etc. The lines RTCK on the JTAG connector and TRACESYNC on
the ETM connector are grounded thru a 10K resistor, which I believe
puts the LPC2212 in debug mode. the RST line is pulled high thru a
10K resistor on the board, but I think the JTrace can easily overide
this.

This same JTrace will connect to the Phytec eval board.

Can anyone offer any insight into what might be causing my problem?
I am about ready to solder in a new ARM processor, but something
tells me that won't change a thing. I do not have any reason to
believe I have blown it up.

Lifespeed

An Engineer's Guide to the LPC2100 Series

--- In l..., "life speed" wrote:
>
> Hi,
>
> I am new to the world of ARM7, having previously used PICs. Now I
> need more processing power and high-precision math so I decided to
> step up to the world of ARM.
>
> I worked with a software developer on a Phytec eval board using an
> LPC2294 to develop code using the IAR development environment and
> JTrace debugger which includes ETM debugging capabilities.
>
> When the actual target hardware was completed, I connected the JTAG
> and ETM cables to the target, changed the configuration file to
> reflect the LPC2212 in my hardware, and tried to debug.
>
> This produced the error:
> "Could not find supported CPU core on JTAG chain
> Bad JTAG communication: Write to IR: expected 0x1, got 0x0 (TAP
> command:2) @ Off 0x5."
>
> then:
> "FATAL ERROR
> Invalid core Id. (00000000)
> Session aborted!"
>
> The JTrace debugger sees target power. I have verified connectivity
> of the JTAG and ETM connectors, power supplies, 10 MHz external
> clock, etc. The lines RTCK on the JTAG connector and TRACESYNC on
> the ETM connector are grounded thru a 10K resistor, which I believe
> puts the LPC2212 in debug mode. the RST line is pulled high thru a
> 10K resistor on the board, but I think the JTrace can easily overide
> this.
>
> This same JTrace will connect to the Phytec eval board.
>
> Can anyone offer any insight into what might be causing my problem?
> I am about ready to solder in a new ARM processor, but something
> tells me that won't change a thing. I do not have any reason to
> believe I have blown it up.
>
> Lifespeed
>

I always copy from others:
http://www.olimex.com/dev/images/lpc-e22xx-sch.gif This schematic
shows the connections and pull-up/down resistors. You need a jumper
on the RTCK line to get the pull-down resistor out of the circuit.

Richard
--- In l..., "rtstofer" wrote:
> I always copy from others:
> http://www.olimex.com/dev/images/lpc-e22xx-sch.gif This schematic
> shows the connections and pull-up/down resistors. You need a jumper
> on the RTCK line to get the pull-down resistor out of the circuit.
>
> Richard

I also used examples from others for the JTAG/ETM connectors and
pullup/pulldown resistors. I am pretty sure those are correct.

I have been leaving the RTCK line pulled to ground. Please clarify;
the RTCK should be pulled low during power up while the RST line is
low, then allowed to go high? Is the debugger responsible for pulling
RST low?

I know on the Phytec board I did not have to manipulate the jumpers to
debug.

Thanks for your help.