Arduino‎ > ‎

Simulación

Una de las ventajas del Arduino es que trabaja con los conocidos chips ATmega de la empresa Atmel, por lo que existen paquetes de software que nos permitirán simular el comportamiento de dichos chips en nuestro ordenador con componentes virtuales, por lo que podremos reducir aún más el coste de desarrollo y aumentar la comodidad al no tener que estar pasando el programa al Arduino cada vez que compilamos el código.

Labcenter Electronics es la desarrolladora de la suite de diseño Proteus a la que pertenece el programa Isis, que permite la simulación de chips ATmega y será la que usemos para probar los circuitos que necesitemos a lo largo de los proyectos.

Splash del inicio de Proteus

Dicho programa, aunque de muy buena calidad, es de pago y por tanto hay que hacerse con una licencia de al menos el 'Proteus VSM for AVR' para poder simular el chip del Arduino.

Proteus y Arduino

Una vez instalado el programa, descargaremos el fichero correspondiente a la placa de Arduino que queramos simular:
Si abrimos el esquema correspondiente al Duemilanove con el Proteus, nos encontraremos con la siguiente vista:

El Arduino Duemilanove con sus pines de conexión

En ella se puede ver el modelo Duemilanove de Arduino con los elementos que componen dicha placa, como el LED de indicación de encendido, el led 'L' conectado a la patilla digital 13, las patillas nombradas, etc.

Para poder simular el código, deberemos decirle al chip qué código y dónde se encuentra y para ello deberemos acceder al microcontrolador del Arduino.
Esto lo conseguiremos haciendo clic encima del Arduino, con la combinación de teclas CTRL+C accederemos al circuito que forma el Arduino en sí y haciendo doble clic sobre el microcontrolador se nos abrirá la ventana de configuración del ATmega328P.

El ATmega328 que compone el Arduino Duemilanove

Una vez allí sólo nos queda cargar el código haciendo clic en el icono de la carpeta de Program File: y buscar el archivo .hex generado por el Arduino durante la compilación.

Ventana de configuración del ATmega

El microcontrolador ya sabe que tiene que ejecutar, por lo que salimos de la ventana aceptando los cambios, pulsamos CTRL+X para volver al circuito del Arduino y hacemos clic sobre el boton de play para iniciar la ejecución del código, pudiendo ver su resultado si todo ha ido bien.

Una vez que hayamos indicado la ruta al archivo .hex, no hace falta que se la volvamos a indicar, directamente modificamos el código, le damos a verificar y al darle al play en el Proteus, automáticamente tomará la nueva versión del código. También se puede verificar el código mientras la simulación está en curso sin ningún problema.

Obteniendo el .hex

El código compilado se guarda en una carpeta temporal, por lo que su acceso no será sencillo. Para conocer la ruta en donde se guarda el .hex tendremos que habilitar la opción para mostrar la salida del compilador. Para ello vamos dentro del software de Arduino a File -> Preferences y activamos la opción de Show verbose output during compilation.

Activar la salida del compilador


Luego cuando verifiquemos (de esta forma no intenta mandarlo al Arduino) el código nos mostrará al terminar la ruta.

Ruta al archivo .hex

Hay que tener en cuenta que la ruta del archivo pasa por carpetas ocultas y para mostrarlas haremos la siguiente secuencia:
  1. Inicio -> Panel de control -> Opciones de carpeta
  2. Abrimos la pestaña 'Ver'
  3. Activamos 'Mostrar todos los archivos y carpetas ocultas'
ċ
mega.DSN
(138k)
Chiva,
15 mar. 2012 15:48
ċ
uno.DSN
(100k)
Chiva,
15 mar. 2012 15:47
Comments