En esta entrega empezaremos a diseñar un entrenador para las familias de microcontroladores PIC y AVR. Para poder emprender el diseño de la placa de entrenamiento necesitaremos el software Eagle PCB versión 5.10 o superior.
Para el desarrollo de este curso usaremos 2 placas de entrenamiento diferentes para poder utilizar ambas familias de dispositivos. Esto se debe a que los PIC y AVR no comparten la misma distribución de pines dentro de sus dispositivos, por lo tanto diseñar una placa que se adapte a ambas familias de microcontroladores resultaría impráctico.
Dos pautas a tener en cuenta a la hora de diseñar este tipo de circuitos son las siguientes:
Funcionalidad.
Economía.
Necesitamos que nuestro entrenador nos de las mejores características al mejor precio ya que la premisa de este curso es el hecho de no tener que gastar grandes cantidades de dinero para aprender a programar.
Las especificaciones técnicas de nuestra placa de entrenamiento serían las siguientes:
Fuente de alimentación filtrada y regulada de 5v con una capacidad de carga de 1A.
Microcontrolador con 2Kb de ROM y 128 bytes de RAM.
Cristal de cuarzo como fuente de reloj del microcontrolador.
Puerto RS232 para comunicaciones seriales.
Puerto ICSP – ISP para programación.
Puertos del microcontrolador liberados para conectar periféricos externos.
Protección contra cortocircuitos e inversión de polaridad en la alimentación.
Fuente de alimentación:
Como fuente de alimentación de nuestro sistema usaremos un transformador de 220v / 110v C.A (Corriente Alterna) a 12v C.C (Corriente continua), con una capacidad de carga de 1.5 a 2A. Este dispositivo pueden adquirirlo en cualquier tienda de electrónica o electricidad a un precio no mayor de U$S 6.
En la fotografía pueden ver el aspecto del mismo.
La tensión que entrega el transformador, no es compatible con las especificaciones del entrenador de 5v / 1A. Por esto necesitaremos un dispositivo externo llamado regulador de voltaje, el mismo entrega una tensión de salida fija regulada a partir de una tensión de entrada variable.
El dispositivo ideal para cumplir esta tarea es el LM7805 de ST semiconductores. Este circuito integrado de 3 pines entrega una tensión de 5v a la salida con una capacidad de carga de 1A, usando solo 2 capacitores como componentes externos asociados.
Microcontrolador:
El microcontrolador que usaremos en nuestras primeras prácticas de programación tiene que cumplir los requisitos mostrados más arriba de poseer una memoria de programa de 2Kb y una memoria de datos o memoria RAM de 128 bytes.
Para la familia de dispositivos AVR usaremos el ATtiny2313 con un costo de U$S 3. En cuanto a la familia de dispositivos microchip PIC utilizaremos el PIC16F628A con un costo similar al ATtiny2313.
En las fotografías podemos ver ambos microcontroladores.
Microcontrolador AVR que usaremos.
Microcotrolador de Microchip que usaremos.
Ambos dispositivos necesitan una fuente de reloj para poder sincronizar todas las operaciones internas de la CPU. Debido a esto usaremos un cristal externo de 4Mhz.
Comunicaciones RS232:
En muchas de nuestras prácticas necesitaremos un monitor para poder correjir errores en nuestros programas, visualizar mensajes, introducir datos al sistema,etc. Para este propósito usaremos el puerto de comunicaciones RS232 ya que es la forma más económica de visualizar datos.
Más adelante veremos el uso de las pantallas LCD, como un método alterno al uso del puerto RS232 para visualizar mensajes.
Como elemento hardware para las comunicaciones usaremos el circuito integrado MAX232 que adapta los niveles de tensión del microcontrolador para poder comunicarse con el puerto serie de la PC.
Para poder conectar elementos externos a nuestro entrenador usaremos conectores del tipo ICD o Molex. Estos conectores ofrecen muy poca fatiga mecánica , por lo tanto son ideales para las prácticas en donde se conectan y desconectan dispositivos de forma continua.
En la próxima entrega les mostraré el diseño final del circuito y la placa de circuito impreso para que puedan armarlo. A esta altura tendríamos que tener el programador y nuestra placa de entrenamiento listas para poder dar comienzo a nuestras prácticas de programación.
En la anterior entrega vimos los elementos necesarios para poder construir un entrenador para microcontroladores PIC y AVR. En esta edición vamos a ver la construcción de la placa para microcontroladores AVR.
Las características finales de nuestro entrenador, para dispositivos AVR, son las siguientes:
Fuente de alimentación regulada y estabilizada utilizando el circuito integrado LM7805. El mismo nos dará una tensión fija de 5v, con una capacidad de carga de 1,5A Máx. Como componentes externos asociados a este dispositivo, tenemos 2 capacitores de 100uF/25v como elementos de filtrado.
Puente de diodos para protección contra inversión de polaridad y como elemento de rectificación, en caso de usar una fuente de alimentación de corriente alterna (C.A).
Puerto serie RS232 implementado utilizando el circuito integrado MAX232. Para visualizar las comunicaciones, se han colocado 2 indicadores tipo LED de 3mm, TX (transmisión de datos) y RX (Recepción de datos).
Cristal de cuarzo de 4Mhz con capacitores de filtrado de 22pf.
Microcontrolador ATtiny2313 – 20PU: 2Kb de ROM y 128 bytes de RAM.
Botón de reset del microcontrolador. Este botón cumple con la función de reset en caso de haber un fallo en la ejecución del programa o que el microcontrolador entre en un bucle infinito sin retorno.
Puertos libres disponibles en conectores IDC de 10 pines. Para poder añadir componentes anexos al entrenador se usarán cables y adaptadores para la placa experimental como se mostrará más adelante.
Conector ICSP para la programación del microcontrolador. Aquí conectaremos nuestro programador, sin necesidad de sacar el dispositivo de su zócalo.
En la imagen podemos ver como están distribuidos los diferentes componentes que integran la placa.
Esta placa de desarrollo contiene todo lo necesario para poder realizar las prácticas de programación del curso que dictaremos.
En total serán aproximadamente 70 a 80 prácticas que se distribuirán a través de las sucesivas entregas del curso.
Todas las pruebas se realizarán utilizando una placa experimental donde conectaremos los componentes asociados al entrenador, como pueden ser:
LED’s.
Pulsadores.
Display’s LCD.
Display’s de 7 segmentos.
Sensores infrarojos.
Memorias EEPROM, etc.
Una imagen de la placa experimental que usaremos es la siguiente.
Todas los programas de ejemplo se realizarán integramente en C de AVR – GCC. Las prácticas vendrán acompañadas con un pequeño video de explicación para que les quede un documento explicativo de cada práctica.
En la próxima entrega les mostraré la placa de desarrollo que utilizaremos para los microcontroladores PIC.
Una vez montados ambos entrenadores, les enseñaré algunas pruebas de funcionamiento para dejar todo listo para comenzar a programar.
[resaltado] Este artículo fue escrito originalmente por Jonathan Moyano para Ikkaro[/resaltado]
como conectar el pic al conector ICSP/ISP para grabarlo?¿
gracias
Hola, buenas noches, necesito saber donde puedo encontrar el .HEX para programar el 18F2550 de este proyecto? Gracias de antemano y muy completo tu tutorial.
me he armado el proyecto del programador pero me salen un error de voltaje en vpp y el de device detected
no se que se deja el segundo… el primero supongo que debe existir un corto por ahy… el cual no he podido encontrar…
ssi no es mucho pedir la configuracion de los pines de conector ICSP para comprobar bien con el Troubleshoot.
Hola me gustaría que me ayudaran un poquito por favor si es posible con el conector iscp la descripción de cada pin y los transistores y los pad que están al lado del conector iscp no tienen especificación es un puente, gracias.
Hola amigos de ikkaro les escribo para pedirles si me pueden facilitar el esquema del programador de pic o donde puedo encontrar lo he buscado en su pagina pero no lo encuentro espero su respuesta gracias..