JTAG Communication Failures

It is possible to run code on a Stellaris device that causes the device to lose JTAG communication.  The two most common causes are:

  1. Changing the system clock speed to something that the target system does not support.
  2. Changing the function of the Port C[3:0] pins, which are muxed with the JTAG pins.

If you accidentally do either of these things, you can restore communication with your target device by running the Debug Port Unlock utility in LMFlash Programmer as shown below.  Select the appropriate product class for your device.  If you don't know the class for your device, you can find it by reading the Device Identification 0 (DID0) register at address 0x400F.E000.  Then click on the "Unlock" button.

On Tempest- and Firestorm-class devices, the MAC address is erased by the Debug Port Unlock utility, so be sure to write down the number before running the utility.



36 Replies