Módulo programador serial para PIC

De Wikitronica
Saltar a: navegación, buscar


Microcontroladores

Un microcontrolador (abreviado μC, UC o MCU) es un programable, capaz de ejecutar las órdenes grabadas en su memoria. Está compuesto de varios bloques funcionales, los cuales cumplen una tarea específica. Un microcontrolador incluye en su interior las tres principales unidades funcionales de una

PICmicro

Los PIC son una familia de microcontroladores tipo RISC fabricados por Microchip Technology Inc. y derivados del PIC1650, originalmente desarrollado por la división de microelectrónica de General Instrument.

Programación del PIC

Para transferir el código de un ordenador al PIC normalmente se usa un dispositivo llamado Programador. La mayoría de PICs que Microchip distribuye hoy en día incorporan ICSP (In Circuit Serial Programming, programación serie incorporada) o LVP (Low Voltage Programming, programación a bajo voltaje), lo que permite programar el PIC directamente en el circuito destino. Para la ICSP se usan los pines RB6 y RB7 (En algunos modelos pueden usarse otros pines como el GP0 y GP1 o el RA0 y RA1) como reloj y datos y el MCLR para activar el modo programación aplicando un voltaje de 13 voltios. Existen muchos programadores de PICs, desde los más simples que dejan al software los detalles de comunicaciones, a los más complejos, que pueden verificar el dispositivo a diversas tensiones de alimentación e implementan en hardware casi todas las funcionalidades. Muchos de estos programadores complejos incluyen ellos mismos PICs preprogramados como interfaz para enviar las órdenes al PIC que se desea programar. Uno de los programadores más simples es el TE20, que utiliza la línea TX del puerto RS232 como alimentación y las líneas DTR y CTS para mandar o recibir datos cuando el microcontrolador está en modo programación. El software de programación puede ser el ICprog, muy común entre la gente que utiliza este tipo de microcontroladores. Entornos de programación basados en intérpretes BASIC ponen al alcance de cualquiera proyectos que parecieran ser ambiciosos.

Programador de Microcontroladores de PICmicro PIC-PG1A

Entre los programadores de PIC existentes este PIC-PG1A es uno de los mas sencillos y económicos pero de igual forma eficientes, el cual utiliza protocolo serial RS232 para su comunicación con el computador y así transferir los datos al PIC, entre los microcontroladores que este dispositivo soporta son:

  • PIC12C508
  • PIC12C509
  • PIC12CE518
  • PIC12CE519
  • PIC12C671
  • PIC16C61
  • PIC16C74
  • PIC16F627
  • PIC16F871
  • PIC16F874
  • PIC16F877
  • Entre otros con características similares

Puerto Serial

Este programador trabaja con el protocolo serial ICD de 6 pines.

Puerto ICD/ICSP.

Esquemático

El esquemático mostrado a continuación es el correspondiente al programador PIC-PG1A

Esquemático

Lista de Componentes (BOM)

Cantidad Descripción RefDes Precio (BsF. año 2014)
1 Conector DB9 J1 1.2
1 RESISTOR, 1.5kΩ R2 3
1 RESISTOR, 10kΩ R1 4
4 DIODO, 1N4148 D1, D4, D5, D6 22
2 CAPACITOR, 100µF C1, C2 6
1 LED LED1 30
1 CONECTOR, HDR2X3 J2 2
1 DIODO ZENER, 1N5234B D3 2
1 DIODO ZENER, 1N5231B D2 42
2 BJT_NPN, BC338 Q3, Q4 80

Circuito Implementado

Diseño en computadora en 3D del Circuito Impreso

Circuito Final
Circuito Final Cara Superior
Circuito Final Cara Inferior

Mediante Tarjetas PCB Reticuladas tipo Proto

Circuito Final Vista Superior
Circuito Final Vista Inferior
Disposicion de Pines.
Interconexión entre el circuito programador y la tarjeta de desarrollo
Detalle de la conexión, la flecha negra en el cable indica el pin 1


Ventajas

Este tipo de implementación principalmente se utiliza para pruebas e implementación rápida de circuitos simples, ademas de ser mas económicos en su implementación ya que no se requiere utilizar procesos químicos ni de perforación mediante materiales que pueden resultar costosos, también es un método que no requiere medidas de seguridad mayores. Otra ventaja notables es la facilidad de incluir componentes luego de su finalización cosa que en los otros métodos tiende a ser imposible por la inexistencia de nodos de cobre en la tarjeta en puntos nuevos.

Desventajas

Los circuitos implementados dentro de estas tarjetas de desarrollo tienden a ser mas grandes que los implementados por métodos mas profesionales, ademas muchas veces requieren la inclusión de un cableado entre componentes ( como se puede observar en la imagen mostrada anteriormente) para su conexión lo que lo hace un trabajo menos limpio y estable.

Mediante Tarjetas PCB con proceso químico y/o de perforación

Ventajas

Esta implementación es por lo general mas eficiente en la utilización de los espacios, también permite el traspaso directo del diseño en computador del circuito al medio físico sin posibilidades de diferencias entre lo diseñado y simulado en computadoras y lo implementado en la tarjeta, Otras de las ventajas es la posibilidad de incluir el footprint de los componentes en la tarjeta PCB.

Desventajas

Los procesos químicos resultan ser peligrosos y de mediano costosos por lo que la ley exige la implementación de ciertas medidas de seguridad en los laboratorios para que los técnicos no sufran problemas de salud ni se haga un mal manejo de los desechos químicos, en el caso de la perforación existen dos métodos perforar los espacios para los componentes posterior al baño químico, o el proceso sin implementación química que es la división del los buses del circuitos al resto del cobre mediante una fresadora especializada que puede imprimir el diseño de computadora con esta fresa, en el primer caso la maquinaria puede ser un taladro de banco el cual tiene un costo medio pero su utilización no es autónoma, en el segundo caso la utilización es autónoma pero estas maquinas tienen valores muy altos.


Manual de usuario IC-Prog

Descarga del Software IC-Prog

1.En primer lugar, se debe buscar el software IC-Prog en internet. Para acceder a ella ingresamos al siguiente enlace: http://www.ic-prog.com/

Paso 1: Descarga del software.

2. Una vez que se haya ingresado en dicha página, se debe hacer clic sobre la imagen central que aparece en la pantalla, la cual es el hipervínculo para entrar al sitio web (http://www.ic-prog.com/index1.htm).


3. Seguidamente, se debe proceder a hacer clic sobre el enlace llamado Download donde encontraremos una lista que contiene las diferentes versiones disponibles del IC-Prog:


Paso 3: Acceder a enlace se descarga.


4. En dicha lista, se debe proceder a descargar la versión más reciente del software programador (IC-Prog Software 1.06C Multi-Lingual (updated 5th April 2011)). Y a su vez, se debe descargar el driver de compatibilidad con Windows NT/2000 para poder correr dicho software en una versión de Windows superior a XP (IC-Prog NT/2000 driver).

Paso 4: Descarga del drivers y ultima versión del software.


5. Luego se deben guardar ambos archivos en una misma carpeta para proceder con la configuración del programa.


Configuración del software

6. Si estamos en una versión mayor a Windows XP: En primer lugar, se debe hacer clic derecho sobre el ícono de icprog y luego entrar a las propiedades.

Paso 5: Configuración del Software.

7. Seguidamente se debe seleccionar el modo de compatibilidad en Windows XP (Service Pack 2) para poder ejecutar dicho programa con éxito.


Paso 6: Compatibilidad.

8. Al aceptar dicha configuración, se debe ejecutar el programa dando doble clic sobre el ícono de IC-Prog y deberá salir un aviso especificando que se debe hacer la configuración del programa si es la primera vez que se ejecuta en dicha máquina. Para proceder se debe dar clic a OK.

Paso 7: Ejecutar software.


9. Aquí, se debe seleccionar el Programmer en modo JDM Programmer, la interfaz en Windows Api, el puerto en el cual esté conectado el conector DB9 del programador (generalmente COM1 para el conector DB9 en el computador). Y, el Delay que especifiquemos determinará la velocidad con la que se programará el microcontrolador. Donde, entre menor sea el tiempo de Delay, mayor será la velocidad de programación y verificación de los datos.


Paso 9: Configuración del software.


10. Luego, en la barra de menú se debe desplegar la lista de Settings y luego dar clic en Options. Una vez aquí, se debe habilitar en la pestaña Misc el puntero a “Enable NT/2000/XP Driver”, como se muestra en la imagen. Al activar esta opción, saldrá un aviso de confirmación de restauración del IC-Prog y se le deberá dar clic en Yes.


Paso 10: Configuración del software.


11. Después se reiniciará el IC-Prog y al cargar nuevamente se deberá ir nuevamente al menú de opciones y en la pestaña de Programming seleccionar ambas opciones.

Paso 11: Configuración del software.

12. De igual manera, en la pestaña Smartcard se deberá seleccionar el puerto en el cual se haya conectado el cable del programador en la computadora (generalmente COM1 para el conector DB9 en el computador).


Paso 12: Configuración del software.

Proceso de programación

13. Ya realizada la configuración del IC-Prog. También se puede seleccionar el cambio de idioma del programa a español y se debe desplegar en el menú de Ajustes la selección del dispositivo que se desea programar (en este caso el PIC16F877).


Paso 13: Programación del software.


14. El siguiente paso corresponde a abrir el archivo de extensión .HEX generado a partir de un compilador de código y el cual contiene los datos que serán leídos y programados por el IC-Prog hacia el microcontrolador (Caso de ejemplo (JoelLCD.HEX).



Paso 14: Programación del software.


15. Por último, una vez realizadas todas las configuraciones correspondientes será necesario seleccionar los bits de configuración con los que se programará el PIC. Donde, en el Oscilador se requerirá seleccionar el modo HS si se utilizará un cristal de una frecuencia mayor a 4MHz, XT si es menor o igual a 4MHz, y en los bits de configuración generalmente se deben dejar todas las casillas vacías (dependiendo la aplicación que se vaya a realizar).

Paso 15: Programación del software.


Finalmente el botón programar todo representado por un rayo, programará el microcontrolador y posteriormente debe mostrar un mensaje de estado donde indica si fue programado exitosamente.

Paso 16: Programar.

Resolución de Problemas básicos

En caso de presentar un mensaje de error en la programación se deben seguir las siguientes indicaciones.

● Revisar la correcta conexión de cada componente de la tarjeta del programador.

● Asegurarse que encienda el led de estado al conectar el programador a la PC.

● Identificar bien los pines de salida del programador antes de conectarlos con la tarjeta de desarrollo.