This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

TMS320F2812 and XDS100v2 Emulator Question about "Wait in Reset"

Other Parts Discussed in Thread: TMS320F2812, TMS320F28069

We have been using an "XDS510PP Plus" JTAG emulator (via PC's parallel port) with our TMS320F2812 target board for many years.  We now want to use the USB-based XDS100v2 JTAG emulator with our TMS320F2812 target board.

For power sequencing, we first apply power to the emulator, then apply power to the TMS320F2812 target board.

The old XDS510PP emulator holds the TMS320F2812 in 'reset', even before launching Code Composer Studio.  This is a 'good' feature.  Not sure how the emulator does this, but I'm guessing that the emulator applies a 'high' voltage to /TRST as soon as it is powered-on.  In any case, our application code (stored in the TMS320F2812 flash memory) desireably does not execute.

Now, a description of the issue.  We now want to use the XDS100v2 emulator.  However, we have learned on other projects, that the XDS100v2 does not apply a high voltage to /TRST until after Code Composer Studio 'connects'.  Thus, we think the following is going to occur:

(Note:  Boot Mode = GPIOF4, GPIOF12, GPIOF3, GPIOF2 = 1XXX (Jump To Flash address 0x3F7FF6)

1. Power is applied to XDS100v2 emulator.
2. Power is applied to TMS320F2812 target board.
3. The TMS320F2812 begins executing code immediately.
...
4. Launch Code Composer Studio

In step #3 above, the TMS320F2812 begins executing code immediately and jumps to flash at 0x3F7FF6, which will not even have valid code if the device is new, or might have 'harmful' application code that really shouldn't be executed.

The TMS320F2812 does not have "Wait in Reset" capability like some of the other TI microcontroller devices; for example, the TMS320F28069 Boot ROM uses GPIO34 to implement a "Wait for Emulator" capability.

Is there some way to force the TMS320F2812 to "wait" until the XDS100v2 emulator connection is established via Code Composer Studio, instead of executing code?

Eric

 

  • Eric R. said:
    The old XDS510PP emulator holds the TMS320F2812 in 'reset', even before launching Code Composer Studio.  This is a 'good' feature.  Not sure how the emulator does this, but I'm guessing that the emulator applies a 'high' voltage to /TRST as soon as it is powered-on. 

    Hi Eric,

    Yes the wait-in-reset mode was designed just for what you have described.  It is actually performed by setting EMU0 = low and EMU1 = high by the emulator.

    Eric R. said:
    Now, a description of the issue.  We now want to use the XDS100v2 emulator.  However, we have learned on other projects, that the XDS100v2 does not apply a high voltage to /TRST until after Code Composer Studio 'connects'.

    The XDS100 supports wait-in-reset.  For CCS 5, you can configure this by going into the target connection information and select "advanced setup".  Next click on the emulator name.  A number of properties will be displayed. Looking at my CCS install the default is "disabled - both EMU0/EMU1 remain high-z".  Try changing this to EMU0 = low and EMU1 = high.

    Eric R. said:
    The TMS320F2812 does not have "Wait in Reset" capability like some of the other TI microcontroller devices; for example, the TMS320F28069 Boot ROM uses GPIO34 to implement a "Wait for Emulator" capability.

    We added the boot ROM wait option just as a backup to the hardware wait-in-reset mode.  Also some of the piccolo devices don't have EMU0/1 pinned out on power on (they are MUXed). 

    Regards

    Lori

  • Lori,

    Thanks.  That is great information.

    Eric