Autor Tema: PIC TRAINER, una serie de placas entrenadoras módulares para PICs.  (Leído 122311 veces)

Ariel

  • Global Moderator
  • dsPIC
  • ****
  • Mensajes: 10753
    • uControl
PIC TRAINER, una serie de placas entrenadoras módulares para PICs.
« en: Septiembre 24, 2008, 05:11:09 pm »
PIC TRAINER
Una serie de placas entrenadoras módulares para PICs.

ULTIMO MOMENTO: Ya podes comprar las placas armadas! :bang:


Introducción
Te proponemos la construcción de tu propia placa entrenadora para microcontroladores PIC. Con este sistema, basado en diferentes módulos, podrás aprender todo lo que necesitas sobre el funcionamiento de estos circuitos integrados, sin necesidad de gastar una pequeña fortuna.


Si recién estas dando tus primeros pasos en el mundo de los microcontroladores PIC, es posible que te encuentres ligeramente abrumado por la cantidad de conceptos que debes asimilar para poder desarrollar tus proyectos.

Esto es inevitable, ya que para que un proyecto basado en un microcontrolador no sea un fracaso, debemos dominar tanto el diseño del circuito electrónico como la confección del programa que se encargará de hacerlo funcionar.

La idea detrás de una placa “entrenadora” o “trainer” es disponer de una herramienta que nos aporte un hardware probado, confiable, que podamos utilizar cuando queremos probar alguna pieza de software, sin necesidad de construir un circuito especial para ello. Podemos ver a un entrenador como un “proyecto universal”, que dispone de prácticamente todos los elementos que necesitamos para probar nuestro software.


El PIC TRAINER
Hace un par de años, cuando comencé a interesarme por la electrónica y los microcontroladores, rápidamente me di cuenta que disponer de un entrenador podría ahorrarme bastante tiempo, y evitar frustrarme cada vez que diseñaba un PCB para probar alguna rutina de software y que por algún motivo no funcionaba.


Imagenes del conector ICSP y del regulador de voltaje utilizado.

Existen algunos trainers disponibles comercialmente que son realmente impresionantes. Disponen de un muy buen numero de dispositivos on-board (desde pulsadores y LEDs hasta pantallas LCD graficas), y ofrecen soporte para un numero de microcontroladores increíblemente numeroso. A veces, incluso soportan chips de diferentes fabricantes.

Pero me pareció que podría aprender bastante más si diseñaba mi propia placa de entrenamiento. En ese momento era incapaz de fabricar un PCB de doble cara (creo que ni siquiera hubiese podido dibujarlo), por lo que debí sacrificar unas cuantas funciones que inevitablemente requerían de un PCB demasiado complejo.


Más imágenes: PCBs y cables de conexión.

Cuando ya tenía un diseño razonablemente funcional (aunque implicaba una placa de unos 20x25 centímetros) y que posiblemente hubiese funcionado, se me ocurrió que podría ser mucho más eficiente y sencillo dividir el entrenador en una serie de módulos. De esta manera, podría ir construyéndolos a medida que los necesitaba, sin necesidad de gastar mucho dinero o tiempo de una sola vez.

Así fue como nació el PIC TRAINER, del cual analizaremos su “segunda reencarnación”, la versión 2.0.


Características generales
Quizás la característica más sobresaliente de este proyecto sea su modularidad. En efecto, se ha dividido el entrenador en módulos, cuatro de ellos destinados a alojar los microcontroladores de 8, 18, 28 y 40 pines y el puñado de componentes que necesitan para funcionar. El lector puede construir solo uno de ellos (el que soporte el modelo de PIC que desea estudiar) o bien los cuatro.


Zona de los cristales y las entradas/salidas.

Estos módulos centrales, a los que hemos bautizado como PIC TRAINER 8, PIC TRAINER 18, PIC TRAINER 28 y PIC TRAINER 40, disponen de un zócalo para alojar al microcontrolador en cuestión; un pulsador destinado a, en caso de ser necesario, efectuar el RESET del mismo; tres cristales seleccionables mediante jumpers, para utilizar diferentes frecuencias de trabajo; un regulador de voltaje (y componentes asociados) dedicado a brindarle al PIC los niveles de tensión y corriente que necesita para funcionar; un conector para la programación ICSP; y algunos pulsadores y LEDs que proporcionan unas pocas líneas de entrada/salida.

Todo lo demás se ha separado en módulos accesorios, que se conectan al modulo central elegido mediante cables planos de 10 vías terminados en conectores IDC. He realizado una buena cantidad de módulos: displays LCD 2x16, 8 entradas y salidas, 4 u 8 relés, RS-232, EEPROM, I2C, etc.

Todos los módulos diseñados hasta la fecha utilizan PCBs de una sola cara, lo que hace muy fácil su fabricación.Este es el listado de módulos disponibles. Algunos aún estan pendientes de publicacion.

   * Cables y conectores
    * Módulo para PICs de 18 pines
    * Módulo para PICs de 28 pines (Nuevo!)
    * Módulo para PICs de 40 pines
    * Módulo 8 Entradas/Salidas
    * Módulo Teclado Inteligente 16 teclas
    * Módulo Teclado 16 Teclas
    * Módulo Reles x 4
    * Módulo Reles x 8
    * Módulo LCD 2x16
    * Módulo GLCD 128x64
    * Módulo Motores PAP
    * Módulo Doble Puente H
    * Módulo Matriz de LEDs
    * Módulo Displays 7 Segmentos x 4
    * Módulo Registro de Desplazamiento
    * Módulo RS-232
    * Módulo RS-485
    * Módulo Teclado PS/2
    * Módulo A/D
    * Módulo I2C


Iré agregando los módulos a medida que los fotografíe y disponga de tiempo para escribir algo sobre su funcionamiento. Así que... date una vuelta cada tanto por aquí para ver las novedades. Si tienes alguna sugerencia, comentario o quieres proponer algún módulo que no haya tenido en cuenta, puedes escribir un post en este hilo. La idea es tener un entrenador gratuito lo mas completo posible.


Cables y conectores.
Uno de los temas mas importantes a tener en cuenta en el desarrollo de un sistema modular es la estandarización de los cables y conectores, de forma que sea prácticamente imposible conectar por error algo donde no se debe, dañando algún componente.

Con esta premisa en mente, decidimos utilizar conectores tipo "IDC" de 10 vías en cada placa y modulo, en los que se insertarían los cables planos utilizados para interconectar las partes del entrenador.


Conectores
De los 10 pines disponibles en los conectores elegidos, solo se utilizan 6. Esto obedece a varias razones. Por una lado, el no emplear 4 de los pines que quedan del lado de "afuera" de la placa permite que el diseño de los PCB sea mucho mas sencillo, sin tener necesidad de pasar con una pista por entre otros dos pines.

Por otra parte, el usar solo 4 líneas de datos permite aprovechar mejor los pines de cada puerto del PIC. Efectivamente, si se hubiesen utilizado los 8 pines de cada puerto en cada conector, en aquellos casos en que un modulo hiciera uso de uno o dos bits de datos (por ejemplo, el modulo RS-232) nos quedarían 6 pines del puerto elegido inutilizados, ya que no podemos insertar dos fichas a la vez en el conector.


Pin-out del conector

La imagen anterior nos muestra la función de cada uno de los pines de los conectores IDC utilizados. En general, todos los módulos tienen los conectores montados sobre los bordes, de forma que los cables de conexión puedan colocarse fácilmente. La fila de pines etiquetados "NC" quedan hacia el lado de afuera del PCB.

Los cuatro pines "NC" son los que no están conectados. D0...D3 son las líneas de datos, y he intentado que se correspondan a los pines 0...3 o 4...7 de cada puerto de cada PIC. por ultimo, "+5V" y "GND" proporcionan alimentación eléctrica a muchos de los módulos.

Como esta corriente proviene de la placa "central" (la que contiene el microcontrolador) y es regulada mediante un LM7805, debemos ser cuidadosos con los consumos. Esta es la razón de que algunas placas tengan además una bornera para proveer su propia alimentación, de forma de evitar recargar el regulador de voltaje de la placa principal.


Un PIC TRAINER de 40 pines conectado al módulo LCD.


Cables
La conexión entre diferentes módulos se resuelve mediante el uso de cables planos con fichas crimpeables que se insertan en los conectores IDC existentes en cada módulo. Los cables se arman de forma que sean simétricos, es decir, sus extremos pueden intercambiarse sin problemas. De esta manera es imposible dañar algún modulo por haber insertado un cable de forma incorrecta. La "muesca" que tiene cada conector impide que al ficha entre en una posición que no sea la adecuada.


Grupo de cables listos para usar.

Al armar los cables deberíamos cuidar que el conductor rojo existente en el cable plano quede siempre para el mismo lado (preferentemente hacia el lado de los 5V). Aunque no pueden insertarse invertidos, nunca esta de mas que visualmente tengamos una referencia de su posición.

Para que sea posible intercambiar los extremos de los cables sin problemas debemos armarlos como se ve en la figura siguiente:


Los cables de datos son totalmente simétricos.

Dado que usamos los mismos cables para todos los módulos, bastara con que construyamos 5 o 6 de ellos para que podamos realizar todas las practicas que deseemos. Por ultimo, no conviene hacerlos demasiado cortos, ya que los módulos quedaran demasiado cerca entre si, dificultando su manipulación. Yo los arme de unos 20cm, y me han resultado muy cómodos de usar.


(Continúa en el siguiente post)
« Última modificación: Septiembre 08, 2010, 07:35:44 pm por Ariel »
Si cualquier habilidad que aprende un niño será obsoleta antes de que la use, entonces, ¿qué es lo que tiene que aprender? La respuesta es obvia:
La única habilidad competitiva a largo plazo es la habilidad para aprender
“. Seymour Papert

downhill

  • PIC10F
  • *
  • Mensajes: 1
Re: PIC TRAINER, una serie de placas entrenadoras módulares para PICs.
« Respuesta #1 en: Septiembre 25, 2008, 12:32:51 am »
PIC TRAINER 18: El módulo central para PICs de 18 pines.


Introducción
Este es otro de los módulos "indispensables": es el encargado de albergar a los microcontroladores de 18 pines en formato DIP. Se trata del segundo módulo de nuestro entrenador destinado a albergar un microcontrolador. En este caso, pueden utilizarse los PICs de 18 pines más populares, como el PIC16F84A, el PIC16F88, PIC16F627A, PIC16F628A, PIC16F818A y muchos más. Su construcción no presenta dificultades, y seguramente podrás aprender mucho sobre programación de PICs utilizándolo. ¡Manos a lo obra!

Tal como ocurre con los microcontroladores de 40 pines, la empresa Microchip coloca los puertos de los micros de 18 pines casi siempre la misma posición. Eso nos permite diseñan una placa “universal” que pueda utilizarse con una gran variedad de modelos. De hecho, no solo podremos hacer experimentos con los muy populares “16F” y "16C", sino que también vamos a poder usar un buen surtido de chips de la familia “18F”. Solo debemos asegurarnos, consultando la hoja de datos del chip en cuestión, que los pines de alimentación, oscilador, etc., estén en una posición que los haga compatibles con la distribución de señales empleada en el entrenador.


Aspecto del módulo para PICs de 18 pines.


El circuito
Como puede verse en el diagrama que acompaña este artículo, el circuito de este modulo también tiene una gran sencillez. Hemos colocado una serie de conectores IDC10 (que estarán en los bordes del PCB) que permiten a los módulos periféricos acceder a cada pin de entrada/salida del microcontrolador que ocupe el zócalo central del entrenador.


Circuito eléctrico.

La alimentación del modulo se ha resuelto mediante un regulador de voltaje integrado de la serie LM78xx, concretamente el modelo LM7805, y una bornera de dos tornillos permite alimentar a la placa desde una fuente externa de corriente continua. Esta debe ser capaz de entregar una tensión de entre 7.5 y 15V, lo mas estable posible. Un diodo 1N4007 se encarga de proteger el resto de la etapa de alimentación de una conexión con la polaridad invertida, y condensador electrolítico de 470uF/16V filtra el poco ripple que pueda haber escapado al filtro de la fuente que estemos empleando.

El regulador de voltaje esta dotado de los dos condensadores de 0.1 uF de rigor, y un diodo LED, en serie con un resistor de 220V se enciende cuando el circuito está alimentado, para que sepamos que se encuentra en esta situación. Tal como ocurría con la placa para microcontroladores de 40 pines, en lugar de utilizar un cristal como oscilador del PIC que está siendo empleado en el módulo, hemos colocado 3 de ellos. Una serie de jumpers (identificados como JP4, JP5 y JP6) se encargan de seleccionar el que se corresponda con la frecuencia de trabajo que requiera nuestro proyecto. Los dos condensadores de 22pF completan esta parte del circuito, y parecen funcionar bien con las frecuencias típicas utilizadas.

En caso de utilizar PICs que funcionen a más de 20 MHz, es posible que haya que cambiarlos por condensadores de 15pF o incluso algo menos. Aunque parezca obvio, tenemos que recordar al lector que no debe colocar más de un jumper a la vez, ya que en ese caso el microcontrolador no funcionará.


Aspecto del trazado de las pistas del PCB.

En cuanto a los cristales, hemos elegido (como puede verse en el esquema eléctrico) valores de 4MHz, 8MHz y 20MHz, pero nada impide utilizar otros. El lector puede cambiarlos a gusto. En caso de utilizar algún modelo de PIC que disponga de oscilador interno y se quieran utilizar los pines 15 y 16 del mismo (correspondientes, en general, a A6 y A7) como pines de entrada/salida, bastará con no colocar ninguno de los jumpers mencionados.

En el caso de configurar los pines 15 y 16 como entrada/salida, estos se comportarán de la misma manera que el pin 3, correspondiente al bit 4 del PORTA. Esto habilita los LEDs y pulsadores incorporados en el modulo, permitiendo su uso como forma de ingresar (o representar) datos a (o de) nuestro programa. Los jumpers JP1, JP2 y JP3 permiten seleccionar si conectamos al PIC el LED o el pulsador.

En caso de seleccionar los pulsadores, debemos recordar que estos ponen el pin correspondiente a 5V cuando son presionados. Mientras que están en reposo, las entradas se mantienen a GND a través de sendos resistores de 10K. Los conectores siguen las mismas normas que explicamos antes, así que no deberías tener problemas a la hora de determinar la función de cada pin. Como regla general, recuerda que de los pines exteriores de cada conector solo se emplea uno (+V) y los otros cuatro están sin conectar. De lo cinco interior, uno corresponde a GND y los otros 4 a datos. No es mala idea tener a mano el grafico con la función de cada pin a mano cuando decidas hacer algún programa para cargar en el entrenador.


Guia para el montaje.

La única excepción, o desvío de lo normal, que puedes ver en el diagrama de los conectores es en los pines correspondientes a RB6 (CLOCK) y RB7 (DATA), ya que poseen un resistor de 220 ohms en serie. Cumplen con la función de permitir programar el PIC mediante el conector ICSP sin necesidad de retirar el cable que conecta el entrenador con el modulo de turno. Por supuesto, si lo deseas puedes reemplazar esos dos resistores por sendos puentes, y a otra cosa. Solo deberás quitar el cable plano a la hora de reprogramar el PIC.

El pin 4, que corresponde al RESET (y al bit 5 del PORTA) en los microcontroladores PIC de 18 pines (al menos, en los que son compatibles con este entrenador), esta unido a un pulsador a través de un resistor de 470 ohms y a +V mediante otro de 4.7K y un diodo 1N4148. Al presionar el pulsador, el microcontrolador se resetea. Durante el funcionamiento normal del programa, el pin esta a +V. El diodo impide los problemas que podrían surgir entre las alimentaciones del modulo y del programador al utilizar el conector ICSP.


Construcción
Si ya has montado alguno de nuestros proyectos, no tendrás ninguna dificultad a la hora de construir tu propio entrenador. Descarga el archivo PDF correspondiente al PCB, y mediante la forma que más te guste (puedes usar el “método de la plancha” explicado en la revista numero 1) transfiérelo a un trozo de PCB virgen. Luego, al baño de cloruro férrico; y por ultimo, una buena limpieza y haces los agujeros.


A la hora de soldar los componentes, como siempre, resulta más sencillo si primero vas colocando los que son más bajos, como los puentes, diodos, zócalos y resistores. Deja para el final los conectores, regulador de voltaje y condensadores. Asegúrate de que, involuntariamente, no haces un puente entre dos puntos del circuito. Presta especial atención a la hora de soldar los componentes que tienen “polaridad”, como los diodos, LEDs y condensadores electrolíticos. También es importante que coloques el zócalo destinado al PIC en la dirección correcta, ya que de hacerlo mal puedes confundirte cuando insertes el microcontrolador, dañándolo.


Aspecto del PCB terminado.

Una vez montado todo, sin colocar el PIC en su lugar, alimenta el circuito con una tensión de entre 7.5 y 12V. El LED “Power” debería encenderse. Si es así, verifica con un multímetro que la tensión entre los pines 5 (GND) y 14 (Vcc) del zócalo del microcontrolador sea de 5V. También puedes verificar que en los conectores de expansión este presente esa tensión. Si todo esta bien, ya tienes listo tu entrenador. Caso contrario, repasa las soldaduras y posición de los componentes.

« Última modificación: Febrero 03, 2010, 03:13:22 pm por Ariel »

Ariel

  • Global Moderator
  • dsPIC
  • ****
  • Mensajes: 10753
    • uControl
Re: PIC TRAINER, una serie de placas entrenadoras módulares para PICs.
« Respuesta #2 en: Septiembre 25, 2008, 01:02:10 am »
PIC TRAINER 28: El módulo central para PICs de 28 pines.

Introducción
Este es otro de los módulos "indispensables": es el encargado de albergar a los microcontroladores de 28 pines en formato DIP, tales como el PIC16F876A, el PIC16F874A, PIC18F2550 y varios más.


Se trata del tercer módulo de nuestro entrenador destinado a albergar un microcontrolador. Su construcción no presenta dificultades, y seguramente podrás aprender mucho sobre programación de PICs utilizándolo. ¡Manos a lo obra!

Tal como ocurre con los microcontroladores de 40 pines, la empresa Microchip coloca los puertos de los micros de 28 pines casi siempre la misma posición. Eso nos permite diseñan una placa “universal” que pueda utilizarse con una gran variedad de modelos. De hecho, no solo podremos hacer experimentos con los muy populares “16F” y "16C", sino que también vamos a poder usar un buen surtido de chips de la familia “18F”. Solo debemos asegurarnos, consultando la hoja de datos del chip en cuestión, que los pines de alimentación, oscilador, etc., estén en una posición que los haga compatibles con la distribución de señales empleada en el entrenador.


Aspecto del módulo para PICs de 28 pines.


El circuito
Como puede verse en el diagrama que acompaña este artículo, el circuito de este modulo también tiene una gran sencillez. Hemos colocado una serie de conectores IDC10 (que estarán en los bordes del PCB) que permiten a los módulos periféricos acceder a cada pin de entrada/salida del microcontrolador que ocupe el zócalo central del entrenador.


Circuito eléctrico.

La alimentación del modulo se ha resuelto mediante un regulador de voltaje integrado de la serie LM78xx, concretamente el modelo LM7805, y una bornera de dos tornillos permite alimentar a la placa desde una fuente externa de corriente continua. Esta debe ser capaz de entregar una tensión de entre 7.5 y 15V, lo mas estable posible. Un diodo 1N4007 se encarga de proteger el resto de la etapa de alimentación de una conexión con la polaridad invertida, y condensador electrolítico de 470uF/16V filtra el poco ripple que pueda haber escapado al filtro de la fuente que estemos empleando.

El regulador de voltaje esta dotado de los dos condensadores de 0.1 uF de rigor, y un diodo LED, en serie con un resistor de 220V se enciende cuando el circuito está alimentado, para que sepamos que se encuentra en esta situación.

Tal como ocurre con la placa para microcontroladores de 40 pines, en lugar de utilizar un cristal como oscilador del PIC que está siendo empleado en el módulo, hemos colocado 3 de ellos. Una serie de jumpers (identificados como JP4, JP5 y JP6) se encargan de seleccionar el que se corresponda con la frecuencia de trabajo que requiera nuestro proyecto. Los dos condensadores de 22pF completan esta parte del circuito, y parecen funcionar bien con las frecuencias típicas utilizadas.

En caso de utilizar PICs que funcionen a más de 20 MHz, es posible que haya que cambiarlos por condensadores de 15pF o incluso algo menos. Aunque parezca obvio, tenemos que recordar al lector que no debe colocar más de un jumper a la vez, ya que en ese caso el microcontrolador no funcionará.


Aspecto del trazado de las pistas del PCB.

En cuanto a los cristales, hemos elegido (como puede verse en el esquema eléctrico) valores de 4MHz, 8MHz y 20MHz, pero nada impide utilizar otros. El lector puede cambiarlos a gusto. En caso de utilizar algún modelo de PIC que disponga de oscilador interno y se quieran utilizar esos pines como entrada/salida, bastará con no colocar ninguno de los jumpers mencionados. En ese caso, los jumpers JP1, JP2 y JP3 permiten seleccionar si conectamos al PIC el LED o el pulsador. En caso de seleccionar los pulsadores, debemos recordar que estos ponen el pin correspondiente a 5V cuando son presionados. Mientras que están en reposo, las entradas se mantienen a GND a través de sendos resistores de 10K.

Los conectores siguen las mismas normas que explicamos antes, así que no deberías tener problemas a la hora de determinar la función de cada pin. Como regla general, recuerda que de los pines exteriores de cada conector solo se emplea uno (+V) y los otros cuatro están sin conectar. De lo cinco interior, uno corresponde a GND y los otros 4 a datos. No es mala idea tener a mano el grafico con la función de cada pin a mano cuando decidas hacer algún programa para cargar en el entrenador.


Guia para el montaje.

La única excepción, o desvío de lo normal, que puedes ver en el diagrama de los conectores es en los pines correspondientes a RB6 (CLOCK) y RB7 (DATA), ya que poseen un resistor de 220 ohms en serie. Cumplen con la función de permitir programar el PIC mediante el conector ICSP sin necesidad de retirar el cable que conecta el entrenador con el modulo de turno. Por supuesto, si lo deseas puedes reemplazar esos dos resistores por sendos puentes, y a otra cosa. Solo deberás quitar el cable plano a la hora de reprogramar el PIC.

El RESET está unido a un pulsador a través de un resistor de 470 ohms y a +V mediante otro de 4.7K y un diodo 1N4148. Al presionar el pulsador, el microcontrolador se resetea. Durante el funcionamiento normal del programa, el pin esta a +V. El diodo impide los problemas que podrían surgir entre las alimentaciones del modulo y del programador al utilizar el conector ICSP.


Construcción
Si ya has montado alguno de nuestros proyectos, no tendrás ninguna dificultad a la hora de construir tu propio entrenador. Descarga el archivo PDF correspondiente al PCB desde aqui, y mediante la forma que más te guste (puedes usar el “método de la plancha” explicado en la revista numero 1) transfiérelo a un trozo de PCB virgen. Luego, al baño de cloruro férrico; y por ultimo, una buena limpieza y haces los agujeros.


A la hora de soldar los componentes, como siempre, resulta más sencillo si primero vas colocando los que son más bajos, como los puentes, diodos, zócalos y resistores. Deja para el final los conectores, regulador de voltaje y condensadores. Asegúrate de que, involuntariamente, no haces un puente entre dos puntos del circuito.Presta especial atención a la hora de soldar los componentes que tienen “polaridad”, como los diodos, LEDs y condensadores electrolíticos. También es importante que coloques el zócalo destinado al PIC en la dirección correcta, ya que de hacerlo mal puedes confundirte cuando insertes el microcontrolador, dañándolo.


Aspecto del PCB terminado.

Una vez montado todo, sin colocar el PIC en su lugar, alimenta el circuito con una tensión de entre 7.5 y 12V. El LED “Power” debería encenderse. Si es así, verifica con un multímetro que la tensión entre los pines 5 (GND) y 14 (Vcc) del zócalo del microcontrolador sea de 5V. También puedes verificar que en los conectores de expansión este presente esa tensión. Si todo esta bien, ya tienes listo tu entrenador. Caso contrario, repasa las soldaduras y posición de los componentes.


Conclusión
Hemos montado otra placa muy importante de nuestro entrenador. Existen una gran cantidad de proyectos que pueden resolverse con PICs considerados “pequeños” o “medianos” como los que soporta este módulo, así que seguramente podrás pasar muchas horas aprendiendo con él. Recuerda que para mejorar sus posibilidades de E/S, puedes construir el módulo de 8 E/S publicado en este hilo.
« Última modificación: Febrero 23, 2010, 01:56:53 pm por Ariel »
Si cualquier habilidad que aprende un niño será obsoleta antes de que la use, entonces, ¿qué es lo que tiene que aprender? La respuesta es obvia:
La única habilidad competitiva a largo plazo es la habilidad para aprender
“. Seymour Papert

Ariel

  • Global Moderator
  • dsPIC
  • ****
  • Mensajes: 10753
    • uControl
Re: PIC TRAINER, una serie de placas entrenadoras módulares para PICs.
« Respuesta #3 en: Septiembre 25, 2008, 07:16:45 pm »
PIC TRAINER 40: El módulo central para PICs de 40 pines.

Introducción
Este módulo de nuestro entrenador es prácticamente indispensable. Se trata de unos de los cuatro que poseen capacidad para albergar un microcontrolador. Concretamente, es el encargado de albergar a los microcontroladores de 40 pines en formato DIP, tales como el PIC16F877A, PIC16F887A y muchos más. Afortunadamente Microchip coloca los puertos de los micros de 40 pines casi siempre en el mismo lugar, lo que permite a esta placa la posibilidad de ser utilizada con diferentes modelos, incluso con algunos de la serie 18F, tales como el PIC18F4550, PIC18F4620, PIC18F442 o PIC18F452.


Si miras las hojas de datos correspondientes, seguramente encontraras que muchos microcontroladores más pueden funcionar en este módulo. Incluso, es posible construir un "adaptador" para poder utilizar en él micros con capsula LQFP.


El circuito
Como puede verse en el diagrama siguiente, el circuito de este modulo es bastante simple. Básicamente, se trata de “publicar” los pines correspondientes a los puertos de entrada y salida del microcontrolador alojado en el zócalo central mediante una serie de conectores IDC10.


Circuito del módulo de 40 pines.

La alimentación del modulo se ha resuelto mediante un regulador de voltaje integrado de la serie LM78xx, concretamente el modelo LM7805. Una bornera de dos tornillos permite alimentar a la placa desde una fuente externa de corriente continua con una tensión de entre 7.5 y 15V. Un diodo 1N4007 se encarga de proteger el resto de la etapa de alimentación de una conexión con la polaridad invertida.


Imagenes del conector ICSP y del regulador de voltaje utilizado.

El regulador de voltaje esta dotado de los dos condensadores de 0.1 uF de rigor, y a la salida un condensador electrolítico de 470uF/16V se encarga de eliminar el ripple que pudiese encontrarse a la salida de la etapa de alimentación. Por ultimo, un diodo LED, en serie con un resistor de 220V se enciende cuando el circuito está alimentado, indicando esta condición. En lugar de utilizar un cristal como oscilador del PIC que está siendo utilizado en el módulo, hemos colocado 3. Una serie de jumpers (identificados como JP4, JP5 y JP6) se encargan de seleccionar uno de ellos. Los dos condensadores de 22pF completan esta parte del circuito. Aunque parezca obvio, tenemos que recordar al lector que no debe colocar más de un jumper a la vez, ya que en ese caso el microcontrolador no funcionará. Hemos elegido para nuestro prototipo valores de 4 MHz, 8 MHz y 20 MHz, pero nada impide utilizar otros valores. El lector puede cambiarlos a gusto.


Zona de los cristales y las entradas/salidas.

En caso de utilizar algún modelo de PIC que disponga de oscilador interno y se quieran utilizar los pines 13 y 14 del mismo (correspondientes, en general, a E3 y E4) como pines de entrada/salida, bastará con no colocar ninguno de los jumpers mencionados.  En el caso de configurar los pines 13 y 14 como entrada/salida, estos se comportarán de la misma manera que el pin 10, correspondiente al bit 2 del PORTE. Esto habilita los LEDs y pulsadores incorporados en el modulo, permitiendo su uso como forma de ingresar (o representar) datos a (o de) nuestro programa. Los jumpers JP1, JP2 y JP3 permiten seleccionar si conectamos el LED o el pulsador al PIC.

En caso de seleccionar los pulsadores, debemos recordar que estos ponen el pin correspondiente a 5V cuando son presionados. Mientras que están en reposo, las entradas se mantienen a GND a través de sendos resistores de 10K.


Conexiones
Los conectores siguen las mismas normas que los demás módulos, así que no deberías tener problemas a la hora de determinar la función de cada pin. Como regla general, recuerda que de los pines exteriores de cada conector solo se emplea uno (+V) y los otros cuatro están sin conectar. De lo cinco interior, uno corresponde a GND y los otros 4 a datos. No es mala idea tener a mano el grafico con la función de cada pin a mano cuando decidas hacer algún programa para cargar en el entrenador.


Función de cada pin de E/S.

La única excepción, o desvío de lo normal, que puedes ver en el diagrama de los conectores es en los pines correspondientes a RB6 y RB7, ya que poseen un resistor de 220 ohms en serie. Cumplen con la función de permitir programar el PIC mediante el conector ICSP sin necesidad de retirar el cable que conecta el entrenador con el modulo de turno. Por supuesto, si lo deseas puedes reemplazar esos dos resistores por sendos puentes, y a otra cosa. Solo deberás quitar el cable plano correspondiente a la hora de reprogramar el PIC.


El PCB es muy sencillo, y sólo posee una cara.

El pin 1, que corresponde al RESET en los microcontroladores PIC de 40 pines (al menos, en los que son compatibles con este entrenador), esta unido a un pulsador a través de un resistor de 470 ohms y a +V mediante otro de 4.7K y un diodo 1N4148. Al presionar el pulsador, el microcontrolador se resetea. Durante el funcionamiento normal del programa, el pin esta a +V. El diodo impide los problemas que podrían surgir entre las alimentaciones del modulo y del programador al utilizar el conector ICSP.


Construcción
Si ya has montado alguno de nuestros proyectos, no tendrás ninguna dificultad a la hora de construir tu propio entrenador. Descarga el archivo PDF correspondiente al PCB, y mediante la forma que más te guste (puedes usar el “método de la plancha” explicado aquí) transfiérelo a un trozo de PCB virgen. Luego, al baño de cloruro férrico; y por ultimo, una buena limpieza y haces los agujeros.


PCB del módulo de 40 pines y aspecto que presentará una vez terminado.
IMPORTANTE: [/b]debe hacerse un puente con un cablecillo, del lado cobre,
como indica la linea en rojo
.

A la hora de soldar los componentes, como siempre, resulta más sencillo si primero vas colocando los que son más bajos, como los puentes, diodos, zócalos y resistores. Deja para el final los conectores, regulador de voltaje y condensadores. Asegúrate de que, involuntariamente, no haces un puente entre dos puntos del circuito.

Hay tres condensadores cerámicos que quedan dentro del zócalo de 40 pines, y debajo del microcontrolador. No es una posición muy bonita para ellos, pero fue la única que encontré a la hora de diseñar el circuito impreso. No molestan a la hora de poner el PIC, así que no hay problemas con eso.


Hay tres condensadores dentro del zócalo.

Presta especial atención a la hora de soldar los componentes que tienen “polaridad”, como los diodos, LEDs y condensadores electrolíticos. También es importante que coloques el zócalo destinado al PIC en la dirección correcta, ya que de hacerlo mal puedes confundirte cuando insertes el microcontrolador, dañándolo.


Guia de montaje y imagen 3D del módulo montado.

Una vez montado todo, sin colocar el PIC en su lugar, alimenta el circuito con una tensión de entre 7.5 y 12V. El LED “Power” debería encenderse. Si es así, verifica con un multímetro que la tensión entre los pines 11 y 31 (o 32 y 12) del zócalo del microcontrolador sea de 5V. También puedes verificar que en los conectores de expansión este presente esa tensión. Si todo esta bien, ya tienes listo tu entrenador. Caso contrario, repasa las soldaduras y posición de los componentes.


Conclusión
Hemos montado una placa importante de las que componen este entrenador. Personalmente, es el que mas utilidad me ha dado. Por supuesto, por si solo resulta casi inútil, ya que las funciones de entrada/salida implementadas “onboard” son mínimas. Pero si construyes, al menos, el módulo de 8 E/S, tendrás diversión para rato.


Algunas imagenes del entrenador ya montado.


Lista de componentes
Como puede verse, la lista de componentes no es muy extensa, y todos son conseguibles muy fácilmente:

    * 1 bornera para circuito impreso (alimentación)
    * 8 conectores IDC 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.
« Última modificación: Febrero 23, 2010, 02:23:13 pm por Ariel »
Si cualquier habilidad que aprende un niño será obsoleta antes de que la use, entonces, ¿qué es lo que tiene que aprender? La respuesta es obvia:
La única habilidad competitiva a largo plazo es la habilidad para aprender
“. Seymour Papert

Ariel

  • Global Moderator
  • dsPIC
  • ****
  • Mensajes: 10753
    • uControl
Re: PIC TRAINER, una serie de placas entrenadoras módulares para PICs.
« Respuesta #4 en: Septiembre 26, 2008, 07:18:38 am »
PIC TRAINER: Módulo de 8 Entradas/Salidas adicionales.


Introducción
Esta es quizás una de las placas indispensables para nuestro entrenador. Básicamente, consiste en una serie de pulsadores y diodos LEDs, para ser utilizados como entradas y salidas de las placas que contienen los micros.


Esta pequeña placa contiene 8 pulsadores y 8 LEDs, pudiendo elegirse mediante 8 jumpers que combinación de ellos vamos a usar. De esta manera es posible, por ejemplo, utilizar 2 líneas como entradas y 6 como salidas, o cualquier combinación que desees.La construcción es muy sencilla, puede realizarse en una hora o poco mas de trabajo, y su costo es muy bajo. Veámosla en detalle.


El Módulo 8 E/S conectado al Módulo para PICS de 40 pines.

Este pequeño video muestra el módulo en funcionamiento.


El circuito
Si bien los módulos que utilizamos para albergar los PICs de 18, 28 o 40 pines pueden dispones de algunos pulsadores y LEDs "on-board", su cantidad seguramente será insuficiente en muchos casos. Es por ello que este módulo resulta casi indispensable para nuestras practicas. Por supuesto, si 8 E/S resultan insuficientes, nada impide que construyamos varias placas iguales.


Esquema eléctrico del módulo 8 E/S.

Viendo el esquema eléctrico del circuito, lo primero que nos llama la atención es que esta placa carece de fuente de alimentación. Efectivamente, toma la alimentación directamente del módulo central al que se conecta, consumiendo unos 100 mA cuando los 8 LEDs están encendidos, corriente que puede ser suministrada sin problemas por cualquiera de ellos. El circuito consiste en dos bloques iguales, con cuatro LEDs y cuatro pulsadores para circuito impreso (del tipo "normalmente abierto") en cada uno.

El hecho de que estén separados en dos bloques obedece a que los conectores de expansión previstos en las placas centrales de este juego de módulos proveen conexión para cuatro pines de los puertos cada una, por lo que se necesitan dos cables de conexión para utilizar los 8 “canales” de entrada/salida. Por supuesto, nada impide usar solo un cable si solo necesitamos cuatro líneas de e/s.

La imagen siguiente nos muestra la función de cada uno de los pines de los conectores IDC utilizados. La fila de pines etiquetados "NC" quedan hacia el lado de afuera del PCB.


Pin-out del conector

Como se puede ver en las fotos, cada canal posee un “jumper” (o puente) que se coloca en un grupo de tres pines.


Vista del módulo terminado.

Los jumpers permiten seleccionar la función de cada línea de I/O. Su función es seleccionar si en ese canal se va a utilizar el pulsador (entrada) o el LED (salida). De los tres pines de bronce en que se coloca el puente, el centrar es el “común”, el que esta del lado del pulsador es el que configura el canal como entrada, y el que esta del lado del LED es el que permite utilizar el canal como salida.


Detalle de los jumpers.

Con el puente puesto hacia el lado del LED, la corriente entregada por el pin del microcontrolador circula a través de la resistencia de 220 ohms, pasando por el LED y haciendo que brille. Con el puente colocado hacia el lado del pulsador, la corriente que proviene de los 5V de la placa central (a través del cable plano) llega al pin correspondiente del microcontrolador. Para que el pin no quede “flotando” sin conexión cuando el pulsador esta abierto, se uso una resistencia de 10 K puesta a masa (a través del cable plano) en cada canal.
Cualquier combinación es posible: podemos utilizar todos los canales como entradas, como salidas, o dividirlos en grupos de cualquier manera, simplemente poniendo cada jumper en la posición deseada.


El circuito impreso
El tamaño de la placa es muy reducido, solo ocupa unos 75x38 mm. Esto obliga a utilizar LEDs de 3mm de diámetro en lugar de los más comunes de 5mm. Para ensamblar esta placa no hay ninguna recomendación en especial. Como siempre decimos, utilizamos una impresión láser del circuito impreso propuesto y con el calor de una plancha común lo transferimos al cobre. Una vez que tenemos la placa lista y agujereada, procedemos a soldar los componentes, cuidando de que los LEDs estén orientados correctamente, si no, no encenderán.



Lista de componentes
La lista de componentes necesarios para este montaje es la siguiente:

    * 2 conectores IDC (machos) de 10 vías
    * 24 pines de bronce
    * 8 LEDs de 3mm
    * 8 resistores de 220 ohms 1/4 de watt
    * 8 resistores de 10 Kohms 1/4 de watt
    * 8 pulsadores normales abiertos para impreso (de 5 mm)
    * Pertinax, jumpers, etc.
« Última modificación: Febrero 25, 2010, 04:34:03 pm por Ariel »
Si cualquier habilidad que aprende un niño será obsoleta antes de que la use, entonces, ¿qué es lo que tiene que aprender? La respuesta es obvia:
La única habilidad competitiva a largo plazo es la habilidad para aprender
“. Seymour Papert

EdoNork

  • PIC12F
  • **
  • Mensajes: 122
    • ElektroQuark
Re: PIC TRAINER, una serie de placas entrenadoras módulares para PICs.
« Respuesta #5 en: Septiembre 26, 2008, 09:43:54 am »
Gracias y por tu respuesta y, sobre todo, ánimo con la revista.

Un saludo.
Mi blog sobre electrónica y cosillas afines: www.elektroquark.com
EQVideo en Youtube
El foro de KiCad en castellano.

jomitame

  • PIC10F
  • *
  • Mensajes: 20
Re: PIC TRAINER, una serie de placas entrenadoras módulares para PICs.
« Respuesta #6 en: Septiembre 29, 2008, 01:02:27 pm »
Hola Ariel

En la página de Ucontrol donde explicas la construcción del PIC TRAINER 18
http://www.ucontrol.com.ar/wiki/index.php/PIC_TRAINER_18
colocas una nota sobre la publicación de la segunda versión del entrenador. Pensé que la segunda versión era la publicada en la página "PICTRAINER 18(1):
http://www.ucontrol.com.ar/wiki/index.php/PIC_TRAINER_18_%281%29
pero no noto ningún cambio.

Si tienes listo el enlace para la segunda versión te lo agradecería y brother cualquier cosa en la que pueda prestar mi humilde colaboración a tí y a todos no dudes en contar conmigo.

Gracias

Ariel

  • Global Moderator
  • dsPIC
  • ****
  • Mensajes: 10753
    • uControl
Re: PIC TRAINER, una serie de placas entrenadoras módulares para PICs.
« Respuesta #7 en: Septiembre 29, 2008, 03:20:46 pm »
Ya tengo todo listo para subirlo...solo me falta encontrar media hora de tiempo para hacerlo. :P
Tiene el mismo tamaño y disposicion de conectores que el de 40 pines. Espero poder subirlo esta noche. Por lo pronto, tambien formará parte de la revista #5.

Saludos!  ;D
Si cualquier habilidad que aprende un niño será obsoleta antes de que la use, entonces, ¿qué es lo que tiene que aprender? La respuesta es obvia:
La única habilidad competitiva a largo plazo es la habilidad para aprender
“. Seymour Papert

Ariel

  • Global Moderator
  • dsPIC
  • ****
  • Mensajes: 10753
    • uControl
Re: PIC TRAINER, una serie de placas entrenadoras módulares para PICs.
« Respuesta #8 en: Septiembre 29, 2008, 05:30:34 pm »
Lo estoy subiendo...;)

Primicia para el foro  8): Este es el aspecto del módulo:


Si cualquier habilidad que aprende un niño será obsoleta antes de que la use, entonces, ¿qué es lo que tiene que aprender? La respuesta es obvia:
La única habilidad competitiva a largo plazo es la habilidad para aprender
“. Seymour Papert

jomitame

  • PIC10F
  • *
  • Mensajes: 20
Re: PIC TRAINER, una serie de placas entrenadoras módulares para PICs.
« Respuesta #9 en: Septiembre 29, 2008, 05:53:06 pm »
Se ve genial !!

Por lo que logro observar esta versión se diferencia del anterior en:
1. Solo utiliza un sola faz (1 cara o me equivoco?).
2. Contiene el pulsador del reset.
3. Contiene la conexión ICSP.
4. Imagino que el oscilador XTAL lo dejas para otro módulo.
5. Eliminastes un pulsador y un led.

Te felicito

Ariel

  • Global Moderator
  • dsPIC
  • ****
  • Mensajes: 10753
    • uControl
Re: PIC TRAINER, una serie de placas entrenadoras módulares para PICs.
« Respuesta #10 en: Septiembre 29, 2008, 06:02:00 pm »
Hola amigo!
Si, es mas o menos como dices. Pero en cuanto al oscilador, hay tres posibles cristales, igual que en el trainer de 40 pines. Pasa que el dibujo no es muy claro, pero al lado de los Jumpers 4 al 6 van tres cristales a eleccion. Yo siempre (o casi) uso de 4, 8 y 20MHz.

En media hora pongo el link para que vean el articulo a ver si "meti la pata" en algo :)

Saludos!
Si cualquier habilidad que aprende un niño será obsoleta antes de que la use, entonces, ¿qué es lo que tiene que aprender? La respuesta es obvia:
La única habilidad competitiva a largo plazo es la habilidad para aprender
“. Seymour Papert

Ariel

  • Global Moderator
  • dsPIC
  • ****
  • Mensajes: 10753
    • uControl
Re: PIC TRAINER, una serie de placas entrenadoras módulares para PICs.
« Respuesta #11 en: Septiembre 29, 2008, 06:18:37 pm »
Listo el Trainer de 18 pines!  ;D

Pueden ver el artículo aqui: PIC TRAINER 18

Me pongo con el de 28 pines, y luego agrego fotos de ambos. (plazo: unos 3 o 4 dias  :-[).

Saludos!
Si cualquier habilidad que aprende un niño será obsoleta antes de que la use, entonces, ¿qué es lo que tiene que aprender? La respuesta es obvia:
La única habilidad competitiva a largo plazo es la habilidad para aprender
“. Seymour Papert

jomitame

  • PIC10F
  • *
  • Mensajes: 20
Re: PIC TRAINER, una serie de placas entrenadoras módulares para PICs.
« Respuesta #12 en: Octubre 02, 2008, 05:30:24 pm »
Ariel

He notado ciertas diferencias entre el circuito eléctrico del Trainer 18 (última versión) y su correspondiente PCB estoy anotandolas todas para para luego decirte, si tienes algo me avisas.

gracias

Ariel

  • Global Moderator
  • dsPIC
  • ****
  • Mensajes: 10753
    • uControl
Re: PIC TRAINER, una serie de placas entrenadoras módulares para PICs.
« Respuesta #13 en: Octubre 02, 2008, 06:03:29 pm »
Perfecto!!!!!
Si cualquier habilidad que aprende un niño será obsoleta antes de que la use, entonces, ¿qué es lo que tiene que aprender? La respuesta es obvia:
La única habilidad competitiva a largo plazo es la habilidad para aprender
“. Seymour Papert

ptt

  • PIC10F
  • *
  • Mensajes: 54
    • PCB Fácil
Re: PIC TRAINER, una serie de placas entrenadoras módulares para PICs.
« Respuesta #14 en: Noviembre 10, 2008, 02:39:04 pm »
Hola Ariel.

Durante el fin de semana armé el Pic Trainer 40 y note dos diferencias entre el pcb y el circuito eléctrico.

1.- La pata de masa del conector ICSP está unida al conector 6 solamente y no a la masa general del pcb. Parece que falta un puente hasta ese conector quedando un agujero en la placa sin usar(este agujero se puede ver en las fotos del entrenador que estan en la web).

2.- Hay diferencia entre el circuito eléctrico del Reset y el PCB. Creo que el puente tiene que ir hasta el cátodo del 1n4148.

Espero haberme explicado. Corregíme si me equivoco. Espero tu respuesta para terminar el Pic Trainer y empezar a probarlo.

Gracias.
Saludos.