uControl
1 de 5
http://www.ucontrol.com.ar/Articulos/trainer40a/trainer40a.htm
[[EN CONSTRUCCION ]]
Principal Documentos
Proyectos Productos Links
Contacto
Placa entrenadora para PICs de 40 pines LINKS: [PCB] [PDF]
Vamos a describir la construcción de una placa central para microcontroladores de 40 pines, tales como el potente 16F877A o el 18F2420, entre otros. Este proyecto seria la continuación lógica del que llamamos Placa entrenadora para PICs de 40 pines. Dentro de los microcontroladores de Microchips mas potentes en encapsulados de 40 pines se encuentra el muy difundido PIC16F877A, que posee 33 pines de entrada/salida, una memoria interna de 8 Kb y una EEPROM de 368 bytes. También incluye un conversor analógico digital de 8 canales de 10 bits, sumamente interesante para proyectos que involucren lecturas de temperaturas, tensiones, etc. Los proyectos mas interesantes que involucren microcontroladores en general hacen uso de los mas grandes, debido a sus características avanzadas. Esta placa permitirá que aprendamos a usarlos.
Fotografía del proyecto terminado.
El circuito de esta placa central de nuestro sistema de módulos se diseño teniendo en mente la posibilidad de expansión. Para ello, la placa cuenta con 8 conectores molex de 10 vías, cada una con conexión a cuatro pines del micro, tal como hacíamos en la placa para PICs de 18 pines. De hecho, y para que podamos utilizar los mismos módulos en ambas placas, la disposición de pines en estos conectores es la misma que utilizamos antes y que podemos ver en la imagen siguiente. De esta manera, cada conector dispondrá de un pin con 5Voltios, uno de masa, y cuatro de datos, por lo que en cada conector tendremos publicado medio puerto del PIC.
Para evitar tener que sacar el microcontrolador para reprogramarlo, incluiremos en las placas centrales un conector conocido como ICSP (In Circuit Serial Programing) que permite la programación del PIC mediante un simple cable conectado a nuestro programador. Placa 40 pines En muchos casos, al depurar un programa se producen situaciones en los que el programa entra en bucles sin fin, o debido a algún desbordamiento interno deja de responder. Para ello, el pulsador RESET se encarga de llevar momentáneamente el pin 1 del microcontrolador a GND, de manera de que el programa se reinicie. Si sacamos la cuenta, ocho conectores con 4 líneas de datos cada uno nos dan un total de 32 líneas de expansión. El PIC16F877A dispone de 33 líneas de I/O, y algunos micros de 40 pines tienen dos más
15/01/2007 16:25
uControl
2 de 5
http://www.ucontrol.com.ar/Articulos/trainer40a/trainer40a.htm
(en los pines 13 y 14, que el 16F877A utiliza para el oscilador). Estas tres líneas de E/S se encuentran ruteadas sobre la misma placa a tres jumpers, JP1 a JP3, que permiten la utilización de esos pines como entrada (un pulsador) o salida (un led). Respecto del oscilador externo, se encuentra construido sobre tres cristales y dos condensadores cerámicos de 22 pF. Por supuesto, solo podemos utilizar un cristal por vez, para ello el jumper JP4 permite seleccionar el de 4MHz, el de 8MHz o el más veloz de 20MHz. Si estamos utilizando algún PIC de la serie 18F, podemos quitar este jumper y utilizar el oscilador interno, y aprovechar esos dos pines como E/S. Debemos ser cuidadosos con la colocación de estos jumpers, ya que si lo hacemos de manera errónea muy posiblemente el microcontrolador no funcionara. Respecto de la alimentación, esta resuelta mediante la utilización de un regulador de voltaje convencional, del tipo LM7805, y los condensadores respectivos, por lo que podemos conectar nuestra placa a una fuente de corriente continua de entre 7.5 y 24 voltios, cuidando la polaridad. Un led, indicado como POWER en la imagen, es el encargado de avisarnos que la placa se encuentra alimentada. Cuando diseñemos algún modulo para conectar a esta placa, debemos recordar que la corriente máxima que entrega este regulador de voltaje es de aproximadamente un Amper. Si el consumo es mayor, deberemos dotar al modulo de su propia fuente de alimentación.
Esquema de los puertos de la entrenadora. Microchip prevé la programación de sus micros sin quitarlos de la placa en la que están colocados. Esto es posible gracias a las resistencias de 220 ohms que podemos ver en los pines PORTB.6 y PORTB.7 (Clock y Data respectivamente), mas la resistencia de 4700 ohms y el diodo 1N4148 que conectan el pin PORTA.4 (Vpp) a masa. De esta manera, si quitamos la alimentación de la placa de pruebas, y conectamos el cable entre el programador y este conector, podremos enviar el programa seleccionado desde el ordenador al microcontrolador. Las resistencias en PORTB.6 y PORTB.7 ayudan a aislar el circuito que este conectado a ellas de las tensiones entregadas por el programador. No obstante, y según que componentes haya conectados al “conector C” puede convenir quitar el cable plano que une al modulo en cuestión con la placa central, de manera de evitar inconvenientes. Las pruebas que hemos llevado a cabo se han realizado utilizando el programador USB GTP-PLUS, pero
15/01/2007 16:25
uControl
3 de 5
http://www.ucontrol.com.ar/Articulos/trainer40a/trainer40a.htm
cualquier programador con conector ICSP servirá. Tengamos cuidado al construir el cable que une el programador con nuestra placa, ya que si confundimos algún conductor podemos dañar el microcontrolador o el programador (¡o ambos!).
Esquema eléctrico del entrenador.
El conector ICSP Este conector de cinco pines es el encargado de permitirnos la programación de los micros colocados en la placa sin necesidad de removerlos.
15/01/2007 16:25
uControl
4 de 5
http://www.ucontrol.com.ar/Articulos/trainer40a/trainer40a.htm
Esto es posible gracias a las resistencias de 1000 ohms que podemos ver en los pines PORTB.6 y PORTB.7, mas la resistencia de 2200 ohms y el diodo 1N4148 que conectan el pin PORTA.4 a masa. De esta manera, si quitamos la alimentación de la placa de pruebas, y conectamos el cable entre el programador y este conector, podremos enviar el programa seleccionado desde el ordenador al microcontrolador. Las resistencias en PORTB.6 y PORTB.7 ayudan a aislar el circuito que este conectado a ellas de las tensiones entregadas por el programador. No obstante, y según que componentes haya conectados al “conector C” puede convenir quitar el cable plano que une al modulo en cuestión con la placa central, de manera de evitar inconvenientes. Las pruebas que hemos llevado a cabo se han realizado utilizando el programador USB GTP-PLUS, pero cualquier programador con conector ICSP servirá. Y si no disponemos de uno, por supuesto siempre existe la alternativa de remover el microcontrolador, programarlo, y volver a ponerlo en el zócalo. En estos casos, es posible que queramos gastar un poco mas de dinero y dotar a nuestra placa central de un zócalo ZIF (Zero Insertion Force) de manera de facilitar esta tarea. Construcción Lo primero es construir la placa base, para lo que utilizaremos el método constructivo de circuitos impresos ya visto, a partir de un PCB virgen cobreado en una sola cara de unos 8 x 8 centímetros. Una vez realizada la placa, procedemos a agujerearla y limpiarla bien, para no tener dificultades con la soldadura. Luego procedemos a soldar los componentes, colocando primero los mas bajos, tales como el zócalo para el microcontrolador, los puentes, resistores y diodos, luego los pulsadores, LEDs y condensadores cerámicos, y por ultimo la bornera, conectores, pines de bronce para los jumpers, condensador electrolítico, etc. Debemos tener cuidado con la posición de los conectores, ya que si los ponemos al revés luego no entraran correctamente los cables de expansión. Una vez realizadas todas las soldaduras, conviene dedicar unos minutos a asegurarnos de que no haya cortocircuitos que provoquen fallas. Para terminar con las soldaduras, debemos realizar tres puentes en el lado del cobre de la placa, utilizando para ello cables finos forrados para evitar cortocircuitos. La posición de esos cables puede verse en la foto que acompaña el artículo. Si todo esta correcto, podemos aplicar a nuestra placa una capa de barniz en aerosol del lado de las soldaduras, de manera que se evite el contacto del cobre con el aire, para que no se sulfate. Aunque podemos montar la placa con solo un cristal y omitiendo los pulsadores, es conveniente tener todos los elementos a mano, ya que una vez que hayamos barnizado la placa para protegerla es mas difícil soldar los componentes que nos hayan faltado.
15/01/2007 16:25
uControl
5 de 5
http://www.ucontrol.com.ar/Articulos/trainer40a/trainer40a.htm
Lista de componentes La lista de componentes que necesitamos para construir esta placa es la siguiente: 1 bornera para circuito impreso (alimentación) 8 conectores molex de 10 vías 1 conector para ICSP, de 5 pines 1 zócalo DIP de 40 pines 3 condensadores cerámicos de .1 uF 2 condensadores cerámicos de 22 pF 1 condensador electrolítico de 470uF/25V 1 LED rojo 3 LEDs verdes 4 pulsadores para circuito impreso 1 diodo 1N4148 1 diodo 1N4007 5 resistores de 220 ohms 1 resistor de 4K7 1 resistores de 470 Ohms 3 Resistores de 10K 1 Regulador de voltaje LM 7805 1 cristal de 4 MHz. 1 cristal de 8 MHz. 1 cristal de 20 MHz. Pines de bronce, puentes, jumpers, PCB virgen, etc. Junto a la placa para controladores de 18 pines, el presente proyecto es una utilísima herramienta de aprendizaje, dado que ahora mucho tiempo de desarrollo al hobbysta. Este sistema de módulos que proponemos justamente tiene esa función: permitir el desarrollo, experimentación y prueba de programas o de cualquier idea que tengamos sin necesidad de construir un prototipo en cada caso. En breve veremos como construir una placa de entradas y salidas digitales, y una con cuatro reles, de manera de poder utilizar este sistema de módulos para controlar cargas de hasta 10 amperes.
PCB recién terminado
Placa lista. Observar los puentes necesarios!
www.ucontrol.com.ar | Desarrollo de sistemas de automatización y control | Pehuajó - Buenos Aires - Argentina e-mail:
[email protected]
15/01/2007 16:25