Texas Instruments F28035. Problema al descargar software

Estoy desarrollando una aplicación basada en F28035 con CCSv6 . La primera versión del software se desarrolló utilizando el Experimenter Kit junto con la ControlCARD F28035 .

En la segunda etapa de desarrollo, la ControlCARD debe conectarse a un hardware de desarrollo propio. La conexión de hardware (USB) se basa en el mismo hardware presente en el Experimenter Kit (FT2232 - adaptador FTDI). Cuando quiero descargar el software de CCSv6 al hardware de desarrollo propio, recibo el siguiente mensaje de error:

C28xx: Error connecting to the target: (Error -1135 @ 0x0) The emulator 
reported an error. Confirm emulator configuration and connections, reset the 
emulator, and retry the operation. (Emulation package 5.1.507.0)

Luego ejecuté una prueba de conexión de CCSv6 , que obtuvo el siguiente resultado:

[Start: Texas Instruments XDS100v1 USB Emulator]

Execute the command:

%ccs_base%/common/uscif/dbgjtag -f %boarddatafile% -rv -o -F inform,logfile=yes -S pathlength -S integrity

[Result]


-----[Print the board config pathname(s)]------------------------------------

/home/martin/.ti/ti/0/0/BrdDat/testBoard.dat

-----[Print the reset-command software log-file]-----------------------------

This utility has selected a 100- or 510-class product.
This utility will load the adapter 'libjioserdesusb.so'.
The library build date was 'May 21 2014'.
The library build time was '13:04:29'.
The library package version is '5.1.507.0'.
The library component version is '35.34.40.0'.
The controller does not use a programmable FPGA.
The controller has a version number of '4' (0x00000004).
The controller has an insertion length of '0' (0x00000000).
This utility will attempt to reset the controller.
This utility has successfully reset the controller.

-----[Print the reset-command hardware log-file]-----------------------------

The scan-path will be reset by toggling the JTAG TRST signal.
The controller is the FTDI FT2232 with USB interface.
The link from controller to target is direct (without cable).
The software is configured for FTDI FT2232 features.
The controller cannot monitor the value on the EMU[0] pin.
The controller cannot monitor the value on the EMU[1] pin.
The controller cannot control the timing on output pins.
The controller cannot control the timing on input pins.
The scan-path link-delay has been set to exactly '0' (0x0000).

-----[The log-file for the JTAG TCLK output generated from the PLL]----------

There is no hardware for programming the JTAG TCLK frequency.

-----[Measure the source and frequency of the final JTAG TCLKR input]--------

There is no hardware for measuring the JTAG TCLK frequency.

-----[Perform the standard path-length test on the JTAG IR and DR]-----------

This path-length test uses blocks of 512 32-bit words.

The test for the JTAG IR instruction path-length succeeded.
The JTAG IR instruction path-length is 39 bits.

The test for the JTAG DR bypass path-length succeeded.
The JTAG DR bypass path-length is 2 bits.

-----[Perform the Integrity scan-test on the JTAG IR]------------------------

This test will use blocks of 512 32-bit words.
This test will be applied just once.

Do a test using 0xFFFFFFFF.
Scan tests: 1, skipped: 0, failed: 0
Do a test using 0x00000000.
Scan tests: 2, skipped: 0, failed: 0
Do a test using 0xFE03E0E2.
Scan tests: 3, skipped: 0, failed: 0
Do a test using 0x01FC1F1D.
Scan tests: 4, skipped: 0, failed: 0
Do a test using 0x5533CCAA.
Scan tests: 5, skipped: 0, failed: 0
Do a test using 0xAACC3355.
Scan tests: 6, skipped: 0, failed: 0
All of the values were scanned correctly.

The JTAG IR Integrity scan-test has succeeded.

-----[Perform the Integrity scan-test on the JTAG DR]------------------------

This test will use blocks of 512 32-bit words.
This test will be applied just once.

Do a test using 0xFFFFFFFF.
Scan tests: 1, skipped: 0, failed: 0
Do a test using 0x00000000.
Scan tests: 2, skipped: 0, failed: 0
Do a test using 0xFE03E0E2.
Scan tests: 3, skipped: 0, failed: 0
Do a test using 0x01FC1F1D.
Scan tests: 4, skipped: 0, failed: 0
Do a test using 0x5533CCAA.
Scan tests: 5, skipped: 0, failed: 0
Do a test using 0xAACC3355.
Scan tests: 6, skipped: 0, failed: 0
All of the values were scanned correctly.

The JTAG DR Integrity scan-test has succeeded.

[End: Texas Instruments XDS100v1 USB Emulator]

En esta salida, no se observa ningún informe de error. Sin embargo, existe una diferencia con respecto a la misma ejecución de prueba para el kit Experimenter .

En este caso (hardware de desarrollo propio), el parámetro "Longitud de la ruta de instrucción JTAG IR" es 39, mientras que para el Experimenter Kit es 38, y el parámetro "JTAG DR bypass path-length" es 2, mientras que para el Experimenter Kit es 1. No sé si esto puede causar el error, pero es la única diferencia que veo entre el Experimenter Kit y el hardware de desarrollo propio. Experimenter Kit funciona bien, hardware de desarrollo propio no.

Por supuesto, comprobé con un osciloscopio la actividad en 5 líneas de JTAG.

¿Alguien puede sugerir alguna idea?

¿Qué hay de los diagramas de circuito y los diseños de PCB de ambas placas?
Sí. Subiré esquemas lo antes posible.

Respuestas (1)

El circuito tiene cuatro optoacopladores entre el emulador y la controlCARD. Estos optoacopladores se especifican como ISO7220A. El problema es que la velocidad de transmisión establecida por defecto en XDS100v1 (CCSv6) es de 1 Mbps y la velocidad máxima de los optoacopladores es de 1 Mbps. La solución fue reducir la tasa de transmisión. De todos modos, se impone una adaptación del diseño, para implementar la conexión por optoacopladores ISO7220C (la velocidad máxima de transmisión es de 25 Mbps).

¡Gracias @Andyaka por tu interés!

Esta no es una respuesta, pero debería ser una modificación a la pregunta original.
Utilice el enlace de edición de su pregunta para agregar información adicional. El botón Publicar respuesta debe usarse solo para respuestas completas a la pregunta.
@placeholder: ¿Cómo es que esto no es una respuesta? Lea la oración que comienza, "La solución fue..."
@DanielGrillo. ¡Lo siento por mi ingles! La respuesta se publica para explicar la solución que encontré al problema, no para agregar información adicional. Una vez más, ¡perdón por mi inglés!
@DaveTweed bastante justo, está escrito con detalles adicionales, lo que me desconcertó.