Enviando información de depuración desde MSP430 a la consola CCS

6

Estoy depurando un código escrito para el MSP430F2132, que tiene muy poca memoria flash disponible para el programa. Para depurar correctamente, debo enviar información a un terminal para que pueda almacenarse y verse más tarde. Normalmente usaría printf o un comando similar (putchar, quizás) y lo vincularía a la consola CCS 6.1. Sin embargo, debido a la falta de memoria de programa en el micro, no puedo usar estas funciones. Tampoco tengo la opción de modificar la placa para hacer uso de un canal UART incorporado en el micro. Estoy conectado a la micro usando la interfaz de depuración USB MSP-FET430UIF, que supuestamente implementa una interfaz UART de canal posterior, pero creo que esto requiere conexiones especiales con el objetivo que no tengo. ¿Tengo alguna opción que use muy poca memoria que me permita almacenar información de depuración? Solo necesito enviar dos ints largos en cada ciclo.

EDITAR:

Tras una inspección adicional (el diseño no era originalmente el mío), observo que las "conexiones especiales al objetivo" requeridas para el MSP-FET430UIF (simplemente a los pines UCA0RXD y UCA0TXD en el micro objetivo) existen, pero las señales se convierten a RS-485 utilizando transceptores en la placa de interfaz (un dispositivo de prueba) y la placa de destino. Tal vez pueda usar el canal UART FET430UIF después de todo, aunque todavía tengo que encontrar buenas instrucciones sobre cómo hacerlo. Si alguien aquí tiene experiencia haciendo esto y será capaz de ofrecer orientación, sería muy útil.

    
pregunta DerStrom8

1 respuesta

1

Si tiene una conexión JTAG en funcionamiento, puede usar el depurador incorporado de CCS para todas sus necesidades de depuración.

Simplemente almacene sus valores de depuración en una matriz y, opcionalmente, configure una cláusula "if" con __no_operation () para un punto de ruptura para comprobar qué está pasando periódicamente. O simplemente haga una pausa en la ejecución después de volver y ver los datos recopilados.

Alternativamente, en lugar de usar la memoria hambrienta de printf para la salida estándar, puede escribir a stderr con fprintf. Es mucho más lento y no utiliza almacenamiento en búfer, pero para informes de estado periódicos puede ser suficiente.

    
respondido por el Barleyman

Lea otras preguntas en las etiquetas