Introducción.
El presente manual está indicado para todos aquellos que se inician en el mundo de la programación y que ahora mismo son “novatos”, nadie ha nacido sabio. Espero que el manual sirva de ayuda a mucha gente y pueda solucionar sus problemas. Lo que es seguro es que al terminar de leerlo y si realmente se está interesado en la construcción de un programador o quemador de chips, el que lo intente se sentirá satisfecho por haber tomado la decisión de leer este artículo.
Además de la descripción de este quemador TE20se, se indica cómo mejorarlo, adoptando las medidas adecuadas para que pueda aceptar otros zócalos de chips que han aparecido y para futuros diseños.
La palca soporte se puede adquirir en un comercio del ramo de su ciudad o en este sitios especializados, una vez obtenida dicha placa, deben instalarse los componentes y ponerlo bajo prueba, asegurándonos que está todo correcto y dispuesto para cuando llegue la necesidad de programar un chip de los muchos que admite.
El Esquema.
El esquema electrónico del programador TE20se, modificado se ha incorporado el zócalo de 28 pines, para poder ‘quemar’ chips con este número de patillas, se muestra en la imagen siguiente:
En la siguiente imagen de la derecha se muestra la placa del circuito impreso o pcb resaltando la localización del zócalo para los PIC 16x7Xx y 16x8Xx en azul y el de los PIC 12CX50X en rojo, aprovechando el mismo zócalo. Las memorias RAM de 8 pines en su zócalo y los PIC16x7XXxx en el zócalo de 28 pines, de esta forma disponemos de un dispositivo capaz de programar la mayoría de PIC’s.
Material Necesario:
- Placa del programador TE20se y sus componentes.
- Cable Extensor RS232.
- Multitester o polímetro.
- Computador personal (PC)
- Programa ICPROG vers. actual
- Chip a programar PIC12C508A o PIC16F84A, u otro.
Los componentes del programador son:
1 Resistencia 1K5
1 Resistencia 10 K
1 Resistencia 100 K
1 Zener 5,1 V
1 Zener 8,2 V
4 Diodos 1N4148
1 Transistor BC307
2 Transistores BC237
1 Condensador 22μF/16 V
1 Condensador 100μF/16 V
1 Conector puerto serie
1 Zócalo 8 Pines
1 Zócalo 18 Pines
1 Zócalo 28 Pines
MONTAJE
El primer paso, sobre la placa de la imagen de abajo, soldamos las resistencias en sus correspondientes sitios, seguimos con soldar los puentes. Para ello aprovechamos las patillas de las resistencias que cortamos como sobrante y las usamos para hacer los puentes. Seguidamente emplazaremos los diodos, debemos prestar atención a la polaridad y además hay dos diodos zener ver imagen de la derecha y cuatro de pequeña señal.
El conector tipo D de 9 contactos, imagen de la izquierda. El conector para puerto serie lo encontrará en dos versiones, uno acodado, ideal para conectarlo directamente al PCB, y otro que se suelda perpendicular a la placa, nos viene muy bien si pensamos usar cable paralelo pero es un poco más complejo de soldar a la placa, recomiendo el acodado, que es el que uso en este montaje. Y luego los zócalos, conviene eliminar o doblar la patilla 15 del zócalo de 18 pines y las patillas 21 y 22 del zócalo de 28 pines.
El zócalo de 28 pines, lo puedes realizar con un compuesto de uno de 20 pines al que añadirás uno de ocho pines, observa con atención que debes quitar dos ‘espadines’ del zócalo de 20 (corresponde al 17 y 18), para el hueco que tiene en la placa, en todo caso mira la imagen de la derecha, he intentado indicar el pin1 con un punto amarillo.
Ya sólo nos queda soldar los transistores y los condensadores electrolíticos sobre la placa, debe fijarse en la posición de los transistores y la polaridad de cada condensador. Con este paso queda concluido el montaje del programador propiamente, antes de seguir, de nuevo recomiendo que se compruebe una vez más cada componente, su localización, posición y también las soldaduras, mire con atención las pistas que no se crucen o estén cortadas indebidamente, compare con la imagen de abajo y ya falta su comprobación ‘in situ’.
Ya sólo nos queda soldar los transistores y los condensadores electrolíticos sobre la placa, debe fijarse en la posición de los transistores y la polaridad de cada condensador. Con este paso queda concluido el montaje del programador propiamente, antes de seguir, de nuevo recomiendo que se compruebe una vez más cada componente, su localización, posición y también las soldaduras, mire con atención las pistas que no se crucen o estén cortadas indebidamente, compare con la imagen de abajo y ya falta su comprobación ‘in situ’.
COMPROBANDO EL TE20se
Vamos a comprobar el buen funcionamiento del programador, naturalmente esta parte, le interesa a aquellas personas que hayan decidido construir su propio programador TE20se y también aquellas que tenga algún problema en su comprobación y puesta a punto.
Antes de comprobar el buen funcionamiento del programador debemos comprobar que el cable encargado de unir el PC y el TE20se, sea el adecuado y para esto, mediante un cable de conexión RS232 Macho-Hembra (similar al del ratón), nos permitirá conectar por un extremo al puerto serie del computador personal PC y por el otro extremo al programador. Esta cable es paralelo, es decir el pin 1 de un extremo (M) se une con el pin 1 del otro extremo (H) y así, el 2 con el 2, …, el 9 con el 9. Por el momento sólo conectaremos el cable, nada más, por supuesto el TE20se, no debe estar conectado para esta prueba.
Atención.
Es conveniente que se utilice un polímetro con el que se tenga práctica, las medidas de tensión que se proponen en estos párrafos se deben de realizar con mucho cuidado y poniendo atención, vamos a medir únicamente tensión continua (Vcc). En primer lugar, indicar que las medidas de tensión pueden variar unos pocos milivoltios, debido a la configuración de principio, tanto del PC como del programa del IcProg, doy por supuesto que éste es el que se usa. Si utilizamos Win2000 o XP, debemos disponer del archivo icprog.sys, haga una copia y péguelo en el subdirectorio del sistema (por defecto, C:\WINNT\SYSTEM32\), sin lo cual no podremos seguir.
- Prepare el multímetro y compruebe las tensiones sobre su programador.
Nota:
– Cuando se inutiliza una señal, el voltaje cae a 0V muy muy despacio, ya que los condensadores no se descargan sin una carga. No se preocupe por los valores de señales inválidas, solamente compruebe señales admitidas.
– Los voltajes se cambiarán a los valores correctos y especificados cuando un PIC esté en el zócalo. El objetivo de la comprobación de hardware no es, ver los voltajes correctos, pero si asegurar que las señales pueden ser controladas (cambiando con./desc.) por su computador personal.
Se quiere asegurar que el voltaje bajo carga no es demasiado alto, para verificar si el circuito está soldado correctamente, temporalmente conectar una resistencia de 1kilohm entre Vss y el «pin en prueba». - ¡¡ATENCIÓN!! La práctica que vamos a realizar tiene mucho riesgo. Un error, puede inutilizar el puerto serie del PC que se esté usando. Ponga toda su atención, no cruce a masa las patillas porque dejará fuera de uso el puerto de su PC.
- En la escala de 12 V y repetimos, sin conectar el TE20se, tomamos la pinza del negativo del polímetro a masa y la pinza (roja) del positivo, la conectamos con cuidado al pin 3 del cable RS232. Qué observa, la aguja vuelve a menos de 0V, cambie los terminales y ahora cuanto mide, cerca de 11V, hagamos lo mismo entre el pin 4 y masa y también con el pin 7, en ambos casos la tensión debe estar cerca de los 11V. Esto es síntoma de que el puerto y el cable están en buen estado, en otro caso una conexión del cable está en mal estado o el propio puerto serie del PC no admite este tipo de hardware.
- La tensión de 13V Vpp de programación en los PIC 16F8X, se aplica por la patilla 4 (MCLR), durante la programación. Esta tensión de programación +Vpp, en los PIC12C5XX se aplica por la patilla 4 (GP3/ MCLR/Vpp), durante la programación.
Nota: Lea el artículo guia_IcProg.html para ver cómo conseguir esta tensión mediante software.
Suponiendo que las anteriores medidas de tensión son correctas, continuamos. Doy por sentado que las soldaduras en el TE20se se han hecho de forma adecuada y no hay cortes en las pistas ni tampoco cruces indeseados entre ellas. Si es así, ya podemos conectar el circuito TE20se al terminal RS232 (el cable).
Medimos la tensión en el zócalo de 18 pines, entre las patillas 4 (masa o negativo) y la patilla 14 (+Vcc), debe presentar 5V, en el zócalo de 8 pines, entre la patilla 1 y la patilla 8, estarán presentes los 5V, esta es la tensión de trabajo del circuito, la tensión de 11V que es la tensión de programación sólo aparece durante el justo momento de la programación.
- Si el voltaje del MCLR no es bastante alto (el problema ha sido observado sobre ordenadores portátiles, pero también en PC más nuevos con un puerto COM débil), se puede suministrar este voltaje externo como se muestra en el esquema de abajo. Usar dos pilas de 9V o una UPS que entregue al menos 15V. No se requiere un regulador, los diodos zener limitan el voltaje. No olvide la resistencia de 220 Ohm – esto limita la corriente y protege el circuito JDM.
- Otra forma de subir en cierto modo la tensión lo podemos ver como ya se ha dicho en el artículo guia_IcProg.html para ver cómo conseguir esta tensión mediante software.
REPASEMOS
Por último, presento una imagen en la que se muestra la localización de algunos de los diferentes dispositivos que pueden programarse con este grabador o quemador de chips.
Con esto y todo, no hemos llegado al final del manual que describe la construcción, montaje y comprobación en las distintas facetas del programador más económico y capaz para el ‘quemado’ de microcontroladores y EEPROM’s de distintos fabricantes, para que el lector pueda realizar sus proyectos tanto personales como para su comercialización.
Y PROGRAMAR UN PIC16F87X
Sin embargo no debemos perder de vista que ante la creciente necesidad de nuevas prestaciones, los dispositivos deben disponer de más capacidad y posibilidades en distintos campos, por lo que los fabricantes se ven con la necesidad de encapsular los nuevos dispositivos en los conocidos 40 pines que ya se usaban hace algunos años.
Los PIC’s de gama alta, del tipo 16F87X tienen mayor capacidad de memoria (4KB a 8KB), en cuanto a lo demás en lo que se refiere a su programación, se pueden considerar idénticos, naturalmente algo mayores, el tiempo para su grabación así como su comprobación o verificación también será mayor.
Prácticamente todos los anteriores ajustes, tanto de software como de hardware se mantendrán con el nuevo modelo de placa para programar los PIC16F87X. Los cambio que se deban realizar para adaptar el software al hardware, son debidos a éste último que es diferente. El módulo del programador MBHP_JDM es una de las cosas que se deben cambiar ya que el chip es de mayor tamaño el cual requiere de un zócalo mayor (40 pines).
El Icprog parece ser el software de quemado más flexible, porque sirve no solo para el DJM, si no también para la mayor parte de otros programadores. Esto puede comprobarse en http://www.ic-prog.com allí puede verse que se ha modificado en sucesivas ocasiones, pero siempre debe configurarlo como se describe en el archivo de ayuda o en la guia_icprog y cargar el archivo .hex del proyecto.
Una forma económica de programar la memoria flahs interna de estos PIC es usar este módulo. La resistencia R1 (10K) y el zener D5 (8’7V) son las modificaciones adicionales necesarias para adaptarlo a los PICs más nuevos que vienen con la capacidad de «programación a bajo voltaje » (de hecho no es usado por el programador JDM y debe inutilizarse por la resistencia en el pin RB3) y un valor ligeramente aumentado para el diodo zener D5 para alcanzar las especificaciones de programa de los PIC16F87X y PIC18F452.
Nota: Si no se consigue encontrar un zener de 8’7V, usar uno de 8’2V con este logrará trabajar en la mayor parte de los casos.
En las siguientes imágenes pueden apreciarse algunas de las descripciones que se indican para el progreso de la ampliación del programador, debido a su sencillez no profundizaré sobre el tema.
LA SOLUCIÓN, EL POLICRISTALINO.
He descrito cómo podemos grabar los microcontroladores PIC16F84 u otros para realizar nuestros proyectos con los esquemas y manuales de este sencillo programador JDM, también conocido como TE-20se. Se puede encontrar en cualquier tienda de electrónica por unos 20€.Si queremos que además pueda servirnos para programar incluso los chips de gama alta, del tipo 16F87X, observar el esquema teórico que sigue, pulsa sobre el mismo para ampliar.
En él aparecen los cuatro tipos de zócalo, desde el de 8 al de 40 patillas, todos en un mismo circuito y dispuestos para el quemado del chip que se necesite. El de la derecha, es el aspecto del PCB.
Tras distintas adaptaciones para poder programar los PIC de la serie 16FXXX, los PIC18FXXXX (28 pines) incluso los de 40 pines PIC16F874/877 y PIC18F4550, con base al programador JDM. Personalmente recomiendo usar este modelo, está probado y mediante el soft «WinPic800®», reconoce los modelos de PIC que se indican a continuación: PIC16F84/ 84A/ 873/ 876A incluso los PIC18F2550, los PIC16F874/ 877 los PIC18F4550 (40 pines). He usado un zócalo de fuerza de inserción cero (ZIF) para más comodidad.
El conmutador que se aprecia en la parte baja de la imagen, nos permite optar por 40/28 o 18/14/8 pines, cuando se usa el zócalo ZIF. Los puentes J1 y J2 (no implementados), se usarán si se tienen problemas de programación en los PIC16F84A, esto es debido a que según parece la programación en esta versión es de valores de tensión diferente.
En él aparecen los cuatro tipos de zócalo, desde el de 8 al de 40 patillas, todos en un mismo circuito y dispuestos para el quemado del chip que se necesite. El de la derecha, es el aspecto del PCB.
Tras distintas adaptaciones para poder programar los PIC de la serie 16FXXX, los PIC18FXXXX (28 pines) incluso los de 40 pines PIC16F874/877 y PIC18F4550, con base al programador JDM. Personalmente recomiendo usar este modelo, está probado y mediante el soft «WinPic800®», reconoce los modelos de PIC que se indican a continuación: PIC16F84/ 84A/ 873/ 876A incluso los PIC18F2550, los PIC16F874/ 877 los PIC18F4550 (40 pines). He usado un zócalo de fuerza de inserción cero (ZIF) para más comodidad.
El conmutador que se aprecia en la parte baja de la imagen, nos permite optar por 40/28 o 18/14/8 pines, cuando se usa el zócalo ZIF. Los puentes J1 y J2 (no implementados), se usarán si se tienen problemas de programación en los PIC16F84A, esto es debido a que según parece la programación en esta versión es de valores de tensión diferente.
ADAPTADOR de 28 a 40 PINES
Para los que ya dispongan del TE20se, en este apartado vamos a ver cómo proceder para la construcción de la placa PCB de conversión de 28 a 40 pines, lo que permitirá reconocer algunos PIC de 40 patillas.
Sin embargo, si ya disponemos del mencionado quemador TE20se, tenemos una opción intermedia es cuestión de realizar una pequeña adaptación sobre una placa que soporte el zócalo de 40 pines y que disponga de un conector (en nuestro caso de un zócalo de 28 pines) para poder insertarlo en el zócalo de 28 pines del quemador, como se aprecia en el gráfico.Este esquema se construye sobre una porción de placa muy pequeña sobre 7cm x 3cm, tomamos una placa preformada y marcamos las dimensiones.
Luego procedemos a cortar con la cuchilla si la placa es de fibra de vidrio usaremos una hoja de sierra fina, ver las imágenes.
En este gráfico, se pueden apreciar los detalles de conexión de los pines. A la izquierda, detalle de como soldar los pines, una vez soldados, luego, con cuidado se desplaza el soporte de plástico, hasta apoyarlo sobre las soldaduras.
Seguir con la siguiente línea de pines dejando el espacio de 2 huecos (que es el ancho del zócalo) y repetir la operación. Como se aprecia en la imagen de la derecha abajo. Por la otra cara de la placa insertar el zócalo de 40 pines y soldar sus pines.
He querido componer una vista un tanto especial para que quede claro lo expresado. Lo que sería el zócalo de 28 pines, realmente se trata de dos hileras de espadines que se sueldan de modo que puedan insertarse posteriormente en el zócalo de 28 pines del TE20se.
Luego, se procede a unir con hilo fino aislado, las diferentes conexiones según el esquema anterior. Cuando termine, compruebe una vez más, las conexiones. Antes de comenzar a programar chips, por favor compruebe su circuito quemador en el menú de Comprobación de Hardware. Estos son los componentes necesarios para realizar este adaptador de 28 a 40 pines que usaremos aplicándolo sobre zócalo de 28 pines del TE20se.
Importante: No tome medida de voltajes con un instrumento que esté conectado a masa (con tierra de su computador personal), porque esto falseará los resultados de medición (el JDM usa la conexión Vdd, como masa). Solamente use una batería conectada al multímetro.
Lista de Componentes.
Esta es la lista de componentes necesarios para la construcción del Policristalino, como ya se ha indicado es conveniente que una vez más se preste atención a los posibles cortocircuitos y cortes de las pistas, en cuyo caso se hará presente el desasosiego.
- R1Resistencia de 10K
- R2 Resistencia de 1’5K
- R3 Resistencia de 100K
- C1 Condensador electrolítico de 100uf/16V
- C2 Condensador electrolítico de 22uf/16V
- D1 Diodo zener de 5’1V
- D5 Diodo zener de 8’2V
- D2,D3,D4 y D6 Diodos Schotky 1N4148
- IC1 Zócalo de 18 pines
- IC2 Zócalo de 8 pines
- IC3 Zócalo de 28 pines
- IC4 Zócalo de 40 pines
- T1 y T2 Transistores BC237
- T3 Transistor BC307B
- D9 Conector hembra BD9 con carcasa y cable 5 hilos apantallado.
- PCB Placa de circuito impreso.
Esto es todo lo disponible sobre el famoso IcPorg y su nueva adaptación al zócalo de 40 pines para admitir los PIC y otros con este tipo de envasado o ‘pinout’. Sin embargo, para mayor seguridad a la hora de identificar los distintos tipos de micro, se recomienda usar el software WinPIC800® que puede encontrar aquí, el cual, debido al reconocimiento del micro insertado en el zócalo, nos da seguridad.
Este manual pertenece a una serie de artículos que tratan de la programación y utilización práctica de los PIC’s y su programación.