Difference between revisions of "Maple JTAG How To"

From OpenCircuits
Jump to navigation Jump to search
Line 1: Line 1:
This is a page about using [http://en.wikipedia.org/wiki/Joint_Test_Action_Group JTAG] with Maple - JTAG will allow you to use a debugger like GDB to debug programs running on the Maple. You can also use the JTAG adapter to re-flash (re-install) the bootloader in case you "brick" the board and can't install programs on it via the bootloader.
+
This is a page about using [http://en.wikipedia.org/wiki/Joint_Test_Action_Group JTAG] with Maple - JTAG will allow you to use a debugger program like GDB to debug programs running on the Maple. You can also use the JTAG adapter to re-flash (re-install) the bootloader in case you "brick" the board and can't install programs on it via the bootloader.
  
 
== JTAG Debugger ==
 
== JTAG Debugger ==
Line 32: Line 32:
 
gdb_port 3333
 
gdb_port 3333
 
</pre>
 
</pre>
Replace this line:
+
Replace this line:
 
<pre>
 
<pre>
 
-flash bank stm32x 0x08000000 0x00020000 0 0 $_TARGETNAME
 
-flash bank stm32x 0x08000000 0x00020000 0 0 $_TARGETNAME

Revision as of 20:26, 20 December 2010

This is a page about using JTAG with Maple - JTAG will allow you to use a debugger program like GDB to debug programs running on the Maple. You can also use the JTAG adapter to re-flash (re-install) the bootloader in case you "brick" the board and can't install programs on it via the bootloader.

JTAG Debugger

You need a piece of hardware called a JTAG debugger to manage the connection and debugging of the Maple. These plug into your computer via USB and into the Maple via its JTAG port.

If you know of other JTAG debuggers that are known to work, add them here.

JTAG Adapter

Maple's 8-pin JTAG port is non-standard, so you need an adapter circuit to go between the ARM 20-pin connector and the Maple 8-pin connector.

OpenOCD

OpenOCD is a program that can talk with the JTAG debugger. You can give commands to it directly, or you can configure GDB to use it to control your Maple board.

Download the latest version of OpenOCD, build it, and install it. Then you can use Maple's build tools (Make) to run the JTAG debugger, or run it standalone so you can connect via another program.

You will need to edit the OpenOCD configuration files to make them work with recent OpenOCD versions. Make the following changes:

  • File support/openocd/run.cfg:
    • Add at the beginning of the file
#daemon configuration
telnet_port 4444
gdb_port 3333

Replace this line:

-flash bank stm32x 0x08000000 0x00020000 0 0 $_TARGETNAME

with this:

set _FLASHNAME $_CHIPNAME.flash
flash bank $_FLASHNAME stm32x 0x08000000 0x00020000 0 0 $_TARGETNAME

Eclipse C/C++

You