En este cuadro de diálogo también se pueden cambiar los siguientes parámetros:
•FRAMES PER SECOND: numero de veces que la pantalla de ISIS se refresca en un segundo (por defecto 20).
•TIMESTEP PER FRAME: indica el tiempo de simulación por cada uno de los frames; lo ideal es que sea el valor inverso del escogido en la opción FRAMES PER SECOND.
•ANIMATIONS OPTIONS: permite habilitar la visualización de las sondas de tensión y corriente, mostrar los niveles lógicos en los pines, mostrar el nivel de tensión en los cables mediante colores o mostrar la dirección de la corriente en los cables mediante flechas.
•VOLTAGE/CURRENT RANGES: permite determinar el umbral de tensión (±V) y corriente para utilizar en la visualización de las correspondientes ANIMATIONS OPTIONS.
En este punto se puede simular (y animar) un sistema con el PICmicro (figura 37). Lo más interesante de la simulación con microcontroladores es la utilización de las herramientas de depuración. Es decir, visualizar mediante ventanas las distintas partes internas del microcontrolador: memoria de programa, memoria de datos, pila, etc. La mayor parte de estas ventanas sólo se pueden visualizar durante una PAUSA.
Figura 37. Una simulación en marcha
Desde el menú DEBUG (figura 38) también se puede iniciar la simulación pero pensando en la depuración. Con la opción START/RESTAR DEBUGGING se puede iniciar la simulación pero haciendo una pausa para ver las distintas ventanas de depuración. También se puede ejecutar el programa directamente con la opción EXECUTE, EXECUTE WITHOUT BREAKPOINT o EXECUTE FOR SPECIFIED TIME que permite ejecutar directamente un programa, ejecutarlo sin puntos de ruptura (en el caso de tenerlos) y ejecutarlo en un tiempo concreto.
Figura 38. El menú DEBUG antes de la simulación
Desde esta ventana también se puede reinicializar la memoria EEPROM del microcontrolador mediante RESET PERSISTENT MODEL DATA. Al producirse una pausa, el menú DEBUG se modifica (figura 39) mostrando las correspondientes herramientas de depuración.
Figura 39. El menú DEBUG en una pausa
Estas herramientas son (figura 40):
•SIMULATION LOG: Mensajes resultantes de la simulación.
•WATCH WINDOWS: Ventana de visualización de posiciones de memoria. Permite añadir la que el usuario desea ver.
•PIC CPU REGISTERS: Muestra los registros FSR del PIC.
•PIC CPU DATA MEMORY: Muestra la memoria de datos (RAM).
•PIC CPU EPROM MEMORY: Muestra la memoria de datos (EPROM).
•PIC CPU PROGRAM MEMORY: Muestra la memoria de programa.
•PIC CPU STACK: Muestra la pila.
Figura 40. Ventanas de depuración
La ventana WATCH WINDOW es la más versátil puesto que se pueden añadir variables y modificar su visualización. Al pulsar el botón derecho sobre la ventana se abre un menú contextual (figura 41). Con ADD ITEMS (name/address) se añade la variable a visualizar directamente con el nombre predefinido (figura 42) en el PIC o, en el caso de variables propias del programador, se pueden visualizar por dirección (figura 43), donde se le indica el nombre, la dirección en hexadecimal, el tipo de dato (byte, word, etc.) y el formato de visualización (binario, decimal, etc.). El tipo de dato y el formato también se puede cambiar desde DATA TYPE y DISPLAY FORMAT.
Figura 41. Menú contextual de WATCH WINDOWS
Con WATCHPOINT CONDITION se pueden habilitar puntos de ruptura mediante condiciones sobre las distintas variables (figura 44); se indica la variable, la máscara de la condición (NONE, AND, OR, XOR) y el tipo de condición (NONE, ON CHANGE, EQUALS, etc.).
Figura 42. Add by Name
Figura 43. Add by Address
Figura 44. Puntos de ruptura
Hay una ventana de depuración que sólo se visualiza si se ha incorporado un fichero COD o COF al microcontrolador, se trata de la ventana CPU SOURCE CODE (figura 45). Con esta ventana se puede seguir la simulación línea a línea del archivo de código fuente.
En esta ventana (también en el menú DEBUG) están disponibles unos botones de control (figura 46).
Figura 45. La ventana CPU Source code
Figura 46. Los controles para la simulación
•
•
•
•
•
•
Hay una ventana de diagnóstico que facilita la depuración, almacenando los errores, mensajes de diagnóstico y avisos producidos durante el proceso de simulación (figura 47). En la barra de estado (zona inferior del área de trabajo) se muestra un aviso (figura 48); con una pulsación en el aviso aparece la ventana de diagnosis.