Blackhawk Tutorial

How to use the Blackhawk USB200 JTAG Emulator

The following page contains Blackhawk USB200 tutorial information.

The USB200 tutorial starts with explaining how to debug or program flash with multiple USB200 JTAG emulators connected to your system.

More how-to information will be added as it becomes available. Until then you can refer to the TI XDS200 Wiki.


Debugging with Multiple USB200 JTAG Emulators

The following Blackhawk tutorial explains how to configure your system to debug with multiple USB200 JTAG emulators connected to your system.

Step 1 - List the COM Ports

The first step is to determine what COM ports the USB200 units you have connected to your system are using. To do this, you will use the xds2xx_portchk command by executing it from a command prompt window.

The lines that contains CCS Port Address (Generic) contain the port number used by Code Composer Studio. The results of the command will look similar to the output below. In this example, we have two USB200 emulators connected to generic ports 0 and 1.

Enumerated: XDS2xx Emulator CDC Serial Port (COM4)
    CCS Port Address (Specific): 0xc004
    CCS Port Address (Generic) : 0
Enumerated: XDS2xx Emulator CDC Serial Port (COM7)
    CCS Port Address (Specific): 0xc007
    CCS Port Address (Generic) : 1

Found 2 XDS2xx Emulators Connected

Step 2 - List the Serial Numbers

The next step first step is to determine which USB200 units are connected to the COM ports found above. In our example, we need to figure our which USB200 units are connected to ports 0 and 1. Otherwise we will not know which unit is connected to a specific target board. The best way to match the port to a specific unit is by serial number, since every USB200 unit has a unique serial number.

To list the serial number you will use the xds2xx_conf command. This command accepts a port number (found in step 1). It is the third parameter in the example.

In the output you will see a line that starts with serialNum=. This line contains the serial number of the unit for the port eneterd on the command line. The results of the command will look similar to the output below. In this example, the serial number for the unit at port 0 is 00:0F:D2:51:11:97. You can repeat the command for port 1 to verify that serial number.

C:\ti\ccsv7\ccs_base\emulation\xds2xx>xds2xx_conf.exe get xds2xxu 0
emuCtrlType=Bit bang

Step 3 - Configure Software

Now that you know which port each of the USB200 units are connected, you can configure your software accordingly.

Code Composer Studio

In Code Composer Studio this is done in the CCS target configration dialog (advanced tab). As the image below shows, you can specify the emulator port to address the proper unit in the advanced tab (located on the bottom of the dialog).

USB200 Target Configuration

In the above image of a target configuration, you select the advanced tab at the bottom and then highlight/select the emulator listed in the connections area. This will display the connection properties to the right, where you can enter the appropriate port number in the text field named Debug Probe I/O Port Number. In this example, the USB200 with the name ending in Probe_1 was the unit I set to I/O port 1.

TI UniFlash

For UniFlash, you follow simlar configuration as the target configuration in CCS.

Blackhawk Flashburn

When configuring BhFlashBurn, you will specify the port in the DAT file, not on the command line. Below is an example of the DAT file contents showing where the port is set using the ecom_port parameter. This is not the entire DAT file, just the USCIF section showing where to specify the port.

You can distinguish which emulator and port to use by creating/editing two different DAT files, then use the specific DAT file on the command line to access the appropriate USB200.

# config version=3.5
$ uscif
$ /