miércoles, 27 de marzo de 2013

Programador con PIC18F2550



Índice:
  
- Introducción                                                                  
- Desarrollo
- Materiales
- Circuito eléctrico
- Armado de las Plaquetas
- Imágenes del Programador
- Pasos antes de su conexión
- Funcionamiento                                                           
- Conclusiones                                               

Introducción
Esta actividad tiene el objetivo de aprender a usar una herramienta profesional de diseño de circuitos impresos electrónicos, y la resolución de un circuito complejo con la herramienta de desarrollo elegida, en nuestro caso KICAD, un software libre.

En este caso realizaremos un circuito complejo que es un programador  para microcontroladores PIC - PICKIT2 (clon) con interfaz USB.
Luego de su realización explicaremos en forma consisa como se comunica el el Programador PICKIT 2 y como funciona.
Utilizaremos el integrado PIC18F2550. http://www.datasheetcatalog.org/datasheet/microchip/39617a.pdf

Materiales:
1 Plaqueta epoxi de 10x10 cm.
2 Resistores de 470Ω
2 Resistores de 4K7Ω
3 Resistores de 330Ω
1 Resistor de 1K Ω
1 Resistor de 2K7 Ω
1 Resistor de 100K Ω
3 Resistores de 10K Ω
1 Resistor de 100 Ω
1 LED Rojo de 5mm
1 LED Verde de 5mm
1 Capacitor de 10uF
2 Capacitores de 100nF
2 Capacitores de 47Uf x 25V
2 Capacitores de 15pF
2 Diodos 1N4148
3 Transistores BC548
1 Transistor de BC557
1 Inductor de 680mH
1 Zócalo langosta de 28 patas
1 Switch
1 Integrado PIC 18F2550
1 Cristal de 20MH
4 Tornillos y 4 tuercas
Acrílico negro.
Separadores plásticos.


Circuito eléctrico


Circuito Impreso.
    ·      EN KICAD
Lado pista




Serigrafía





    ·      EN PCB WIZARD
Lado pista




Serigrafía


Armado de la plaqueta
Plaqueta
1) Confeccionamos el circuito en el KICAD:
Para ello tuvimos que abrir el programa KiCad, y crear un nuevo archivo, y guardarlo en una carpeta donde almacenaremos nuestro archivos.
Presionaremos en el EeSchema (editor de esquema) y copiaremos el esquema del progamador:

Luego de hacer el circuito hay que pulsar Annotate Eschematic, que este nombrará automáticamente los componentes, luego presionar el Perform electric rules check (ERC) para corroborar que este todo bien conectado. Finalmente pulsaremos Generated netlist, para que nos cree una lista de componentes.
Luego presionaremos  Cvpcb (Asosiación Componentes/Módulos) donde tendremos que ver que cada componente este con su respectivo modulo (en tamaño).
Finalmente Pcbnew (editor de circuitos impresos) donde pulsaremos Read Neatlist y examinaremos y leeremos la netlist, para luego ordenar los componentes y proceder a finalizar la plaqueta.

2) Imprimimos la serigrafía y el circuito del lado pista en una hoja ilustración. Luego lo planchamos 60 segundos en la plaqueta y cortamos el excedente de la plaqueta.

3) Procesamos la plaqueta en el percloruro férrico aprox. 30 minutos, y luego le pasamos virulana para sacarle el excedente de toner. Finalmente le pasamos flux de lado del cobre.

4) Agujereamos la plaqueta:
- Para los sujetores del RJ12 una de 3 mm.
- Para la masa del conector USB una de 1mm.
- Para los tornillos una de 3,25mm.
- Para el resto de los componentes una de 0,8 mm.   
         
5) Luego soldamos cada componente en el lugar correspondiente, para ello nos guíamos en la serigrafía que planchamos en la parte posterior al cobre.
En la soldadura utilizamos estaño 60/40 de 1mm.

6) Con el acrílico medimos con respecto a la plaqueta y cortamos dos trozos para poner en la misma, sujetamos los dos cortes con tornillos y pusimos separadores entre el lado de cobre y el lado de componentes.


Imágenes del programador terminado
                          

               Vista lateral                                                                                  Vista superior
Pasos antes de su conexión
¿Qué debemos hacer antes de conectar el programador a la PC?
1) Verificar el circuito electrico, y que otra persona, que no haya hecho la plaqueta, verifique el circuito (que los pads no estén en cortocircuito, etc)
2) Verificar con un multímetro que el conector USB este bien conectados al terminar USB
3) Verificar con un multímetro la línea de 5V, GND, D+ y D- que estén bien conectados al uC y el pin 20 del zócalo (5V) con puntos claves, L1 entre 5V y GND
4) Conectamos el cable USB sin el Microcontrolador, si el led se enciende es por que funciona; si no enciende tendremos que ver si está mal conectado el LED o volver a verificar el circuito eléctrico.
5) Conectamos el uC y medimos entre los pines del uC, entre los pines 20 y 19, y; 20 y 8, para ver si hay aproximadamente 5V, también verificar entre los pines 19 y 8 para saber si hay 0 V.
6) Medir entre el emisor Q3 y tierra, donde tiene que haber 5V menos la caída de tensión del inductor y el diodo.
7) Estando conectado el programador a la PC, vamos a Administrador de dispositivos para saber si está bien instalado el dispositivo, o si no lo reconoce es porque hay algo mal en el circuito.
8) Abrir el programa PICKIT 2, al iniciarlo deberá decir PICKIT 2 ID=Hoss corrected, y para verificar si están bien las conexiones vamos a tools, check comunicación y deberá encenderse y apagarse el LED Bussy.
9) Ir a Tools, Rename, Clear Unit ID, para cambiar el nombre; e ir a tools, troubleshoot, ir a la Step 2 y testear el VPP, si aparece Test passed estará andando correctamente.
Funcionamiento
Cuando el programador está conectado, el transistor Q1 está abierto, por ende le llegan 5V al emisor del transistro Q3.
Al conectarlo a la pc, el microcontrolador envia pulsos a través de Vpp_Pump haciendo que Q1 cierra y abra constantemente. El Inductor se opone al cambio de corriente, generando picos de tensión más altos, estos se almacenan en el capacitor y el diodo permite que se almacene sin que descargue a tierra.
Al mismo tiempo el resistor R8 y R9 funcionan como divisor de tensión, y este mide la diferencia entre la tensión que cae en el divisor y la tensión que se encuentra en el emisor Q3, enviándolo al microcontrolador, donde este modifica constantemente los pulsos dependiendo si se excedió o llega a faltar tensión, enviándolo nuevamente por Vpp_Pump

Conclusiones




El funcionamiento del programador es simple: El programador lo que hace es comunicarse con la pc para tomar los datos de un archivo ejecutable .hex (hexadecimal), esto es un archivo de texto que va a contener un programa y el programador genera las señales nesesarias para que el microcontrolador entienda estos datos que surgen de haber hecho el programa.

El flujo de trabajo es:     
  ·       Escritura del programa (pqm) en lenguaje asm.
  ·       Ensamblaje  del programa (es decir traduce el programa a un lenguaje entendible por la máquina)
  ·       Simulación / Debug
  ·       Programación


El programador es una herramienta de desarrollo.
El PIC18F2550 hace un puente entre la Pc y el micro, saca la data y la acomoda de tal manera que pase por 5 cables, especialmente por (PGD y PGC).
Antes de ponerlo en marcha hay que programarlo.
Para ponerlo en modo programación hay que utilizar la tensión Vpp, que es una tensión especial, que se utiliza para ponerlo en el modo mencionado.
El microchip primero es programado y luego se corre el programa.

No hay comentarios:

Publicar un comentario