En la página web de microchip podemos encontrar la placa de desarrollo para pruebas PICDEM 2.

Entre los ejemplos suministrados por Proteus, se encuentra un proyecto llamado PICDEM2 Evaluation Board, con el diagrama (distribuido en varias páginas), el circuito impreso y la vista en 3D.

Este ejemplo suministrado no contiene las fuentes suministradas por Microchip como ejemplo y no permite la simulación del código. Así que proponemos esta unidad didáctica derivada del ejemplo original para lograr hacerlo.
En primer lugar, tenemos que instalar el compilador XC8 de Microchip en nuestro ordenador. Existe una versión gratuita con limitaciones referentes a optimización que a nuestros efectos es más que suficiente. Una vez instalado en nuestro equipo el compilador (si usamos la versión 2.30) se encuentra en la carpeta: C:\Program Files\Microchip\xc8\v2.30. Lógicamente la carpeta con el número de versión variará según la versión que instalemos.
Una vez que ya tenemos el compilador XC8 vamos a construir nuestro proyecto. Para ahorrarnos trabajo, al final de esta unidad se encuentra un botón para solicitar el envío de la unidad con el proyecto completamente listo para funcionar. Hay que tener en cuenta que se ha realizado con la versión 8.11 de Proteus y, por lo tanto, para poder utilizarlo hay que tener esa versión o superior instalada en nuestro ordenador.
El diseño electrónico se distribuye en tres hojas siguiendo los mismos pasos que el ejemplo del que partimos suministrado con Proteus:

La primera contiene todos los dispositivos periféricos y es la más importante desde el punto de vista de la ejecución de la simulación porque es dónde podremos simular todo el funcionamiento de nuestra placa de pruebas. Hemos hecho unos pequeños cambios con respecto al original. Los "jumpers" los hemos puesto en serie con interruptores activos para facilitar su uso durante la simulación en tiempo real. Especialmente el jumper J9 es muy necesario porque tener el sonido resultante en el altavoz continuamente es muy molesto y conviene poder desactivarlo de forma sencilla para usarlo sólo cuando simulamos esta parte del programa. Hemos añadido un medidor de frecuencia para visualizar las frecuencias utilizadas para gobernar el altavoz pizoeléctrico, el terminal virtual para simular la consola y el depurador del bus i2c para poder controlar las comunicaciones en el bus i2c y hemos cambiado los nombres de algunos conectores para adaptar todo el diseño al microprocesador que vamos a usar.

La segunda contiene los zócalos de los procesadores y otros periféricos de comunicaciones.

En el zócalo de 40 pines hemos enlazado una hoja hija que contiene el microprocesador que vamos a usar en nuestra simulación. En este caso hemos situado en él, el microprocesador PIC16F1937 que es para el que viene preparado el código suministrado por Microchip.


Por último la tercera pantalla contiene la fuente de alimentación y los conectores.

Ya tenemos nuestro diseño electrónico listo. En la pestaña PCB podemos ver nuestra placa de circuito impreso.

En la pestaña Vista 3D la visión tridimensional de la misma.

En la pestaña lista de materiales podemos encontrar la relación de componentes utilizados.

A continuación, tenemos que decirle a Proteus donde tiene que encontrar el compilador XC8 que estamos usando. Lo haremos usando la pestaña código fuente con la opción 'Configuración de compiladores' del menú sistema.

Por defecto, Proteus busca el compilador XC8 de 32 bits en la carpeta Program Files (x86). Como nostros hemos instalado la versión 2.30 que es de 64 bits, queda instalada en la carpeta que mencionamos más arriba. Así que tenemos que utilizar la opción 'Manual' para buscar el directorio y que Proteus lo encuentre.

Hemos creado el proyecto nuevo desde la pestaña código fuente. Hemos usado las fuentes suministradas por Microchip, corrigiendo unos errores menores que tenían los archivos.

Hemos modificado la configuración del proyecto para indicarle que vamos a usar la versión 'lite' (la gratuita) para evitar errores en la compilación.


Hemos compilado y el proceso se ha desarrollado correctamente.

Y ya podemos arrancar la simulación. Al hacerlo veremos una pantalla similar a la presentada en la imagen siguiente. Se puede observar los pulsadores disponibles, el potenciómetro, el display LCD con la información, el terminal virtual que hace las funciones de consola, el analizador de los datos transmitidos a través del bus i2c y el medidor de frecuencias.

Utilizando los pulsadores S2 y S3 (pines RA4 y RB0) se pueden ir pasando por las distintas secciones. El programa tiene cuatro (en el display se puede ir viendo en la línea superior en cuál nos encontramos): temperatura, reloj, voltímetro y zumbador. En el manual de uso de la placa PICDEM2 se detalla el funcionamiento de cada sección.
En el modo temperatura, con el simulador del termómetro i2c (dispositivo U5) podemos modificar la temperatura que será medida en la sección temperatura. La temperatura se ve en el display, en la consola y las comunicaciones entre el termómetro y el microprocesador en el analizador del bus i2c.

En el modo reloj podemos usar los pulsadores S2 y S3 para cambiar la hora que se muestra en el display y comprobar luego el funcionamiento del mismo en el display.

En el modo voltímetro podemos usar el potenciometro R16 para ir modificando la tensión de entrada en pin RA0. El voltaje se puede leer en el voltímetro virtual situado junto al potenciómetro, en el display y en la consola.

Por último, en el modo zumbador, podemos utilizar los pulsadores S2 y S3 para cambiar la frecuencia generada en la salida PWM del pin RC2. El programa va creando las frecuencias correspondientes a las diferentes notas musicales . Para oir en el altavoz del PC la nota en cuestión y ver la frecuencia generada en el medidor de frecuencias, tenemos que cerrar el jumper J9 (en nuestro caso el interruptor que pusimos al lado para poder hacerlo durante la simulación). En el display LCD y en la consola, se visualiza el valor PWM (% sobre el total) y la nota musical (en inglés).

Una vez que hemos comprobado el funcionamiento del código propuesto como ejemplo por microchip, la unidad didáctica nos permite utilizar Proteus para escribir nuestro propio código y comprobar su comportamiento usando todos los dispositivos que la placa pone a nuestra disposición.
Creemos que esta unidad didáctica es una magnífica herramienta para que el alumno pueda aprender las posibilidades que brinda Proteus para crear una placa de pruebas del microprocesador PIC16F1937, practicar su programación, observar los efectos de su código de forma intuitiva y descubrir las herramientas de depuración disponibles.
Puede solicitar el envío de la unidad didáctica de forma gratuita utilizando el siguiente enlace: Esta dirección de correo electrónico está siendo protegida contra los robots de spam. Necesita tener JavaScript habilitado para poder verlo.