Qué instalaciones/métodos existen para depurar y simular programas para microcontroladores PIC

En la universidad, aunque hice algo de programación y proyecto PIC, el proyecto era bastante simple. Siempre podemos poner un LED parpadeante como señal de vida en nuestro programa o hacer que el código se escriba en el puerto serie de vez en cuando para que el programador sepa que el código se está ejecutando correctamente. Sin embargo, estoy seguro de que existen algunas formas estándar adecuadas para (1) depurar y (2) simular el código PIC. Esto se vuelve importante cuando tenemos programas realmente grandes y complejos.

Creo que hay algún tipo de simulador para PIC, pero no puedo encontrar un enlace que diga "El simulador hace ABC y así es como se usa...". Entonces, ¿qué dicen los expertos aquí?

No uso PIC (utilizo principalmente el MSP430, donde el programador MSP430-FET se puede usar para la depuración), pero parece que algunos programadores, por ejemplo, PICKit3, admiten la depuración.
Tenga en cuenta la diferencia entre los métodos de ingeniería de software (análisis de cobertura de código, evaluación comparativa, control de revisión, etc.) y las herramientas que facilitan el uso de los métodos. @AdamLawrence le ha dado una buena respuesta sobre las herramientas. Creo que MPLAB X tiene una herramienta de análisis de cobertura de código.

Respuestas (3)

Los programadores/depuradores PICkit3 , ICD3 y REAL ICE de Microchip admiten varios niveles de depuración. Todo esto le permite pausar la ejecución, establecer puntos de interrupción y ver variables/SFR/registros de CPU/etc. REAL ICE también le permite transmitir datos a alta velocidad a través de DMCI.

Microchip también tiene su simulador MPLAB SIM , que hace un buen trabajo simulando las piezas (con excepciones, por supuesto). También existen herramientas de terceros como Proteus VSM .

Usé el MAPLAB Sim 12? hace años (creo que estaba basado en DOS en ese momento). Lo usé mucho para romper un enlace RS232 simple desde los primeros principios. Fue un poco tedioso calcular los tiempos de bits para probar la decodificación en serie en un pin. Una vez hecho, fue una buena prueba para asegurarme de que no me había metido en el tiempo durante el desarrollo posterior. Más tarde, desarrollé un enlace óptico alternativo de 125k baudios utilizando el UART. Aquí fue útil verificar el tiempo y registrar las interacciones durante las interrupciones FIFO, etc.

PICsim es un programa de código abierto que proporciona una forma de simular MCU PIC PIC16F628/16F877A/18F452. Simula un kit de desarrollo completo con componentes útiles como leds y teclado.

He usado Proteus 8 de labcenter electronics y lo encontré bastante útil para mi proyecto de graduación. Proporciona una variedad de componentes de circuitos y dispositivos que se pueden utilizar con gran ventaja. También tiene un compilador virtual para programas de microcontrolador.

http://www.labcenter.com/index.cfm