Programador de PICs (Solo Enigma)

Pues para programar mi PIC18F2550 Inductor, use un programador JDM que hice algun tiempo y el software WinPic800. Esto tuve que hacerlo en una PC que pudiera elevar la salida hasta los 13V que necesita el PIC por su puerto serie (hubo que medir el voltaje que el programador entregaba).

La combinacion WinPic800/JDM funciona bastante bien, pero solo en las PC cuyo puerto serie sea lo bastante "fuerte" como para entregar el voltaje adecuado. Debo agregar que no todas las PC entregan el voltaje correctamente (de hecho encontre solo un par como de 5 que probe, incluidas laptops y desktops)... y por lo visto, las PCs viejas (Pentium III para atras) son las mejores candidatas.

El material del PCB pienso que es lo de menos, lo importante es que quede limpio de suciedad y que no te genere ruido. De ahi quiza lo unico a probar es un cable USB mas corto... he visto que a algunas personas los circuitos con el PIC2550/4550 les tienden a funcionar mejor con cables USB cortos.

Aunque lo que dice Eclip-se que se relaciona al sistema operativo tiene mucha validez, dado que muchos problemas con dispositivos USB comerciales se resuelven cuando actualizas tu Windows XP a SP2. Si tu WinXP no tiene service pack o solo tiene el SP1, deberias probar actualizarlo.

Saben, confieso que aun no he probado mi circuito propuesto en forma fisica, pero mi logica indica que deberia marchar bien, considerando lo particularmente simple que es su operacion. Si sirve de algo, les comento que tan solo lo he simulado (con todo y MCU generando señal PWM, pero controlando el pin de seleccion de voltaje de forma separada) y marcho perfectamente bien. El elevador de voltaje compensa el voltaje de salida deseado en unos pocos milisegundos sin problema cada vez que se cambia ;-).

Solo estoy esperando a que Eclip-se publique su nuevo firmware acomodado al nuevo circuito para armar mi circuito impreso. Generalmente uso Eagle, asi que compartire mi diseño con perik y todos los demas en cuanto se den las circunstancias favorables (particularmente que mi tesis me de tiempo).

Solo ten en cuenta perik que mi diseño ya incluye zocalos para los PICs de serie mas popular... aunque considerare mejor dejarlo en forma generica tal como Eclip-se lo hace en su PCB para adaptarlo bien sea a un protoboard o a un zocalo.

Saludos.
 
Gracias f-point ya veo q lo podre tener ,pero de momento seguire con mi viejo PII 233mkz para poder grabar los pic,s con mi TE-20.
El 16f877 de 40 patillas me tuve q currar un zocalo para poder insertarlo en el de 28 patillas
cosa q creo no me hara falta con este programador.
 
Hola a todos.

En este momento estoy haciendo las pruebas y funciona muy bien, pero con el primer diseño el que esta en la pagina anterior a esta. El unico cambio que hice fue cambiar el PIN 12 al PIN 5, claro que el puente lo hice solo con un cable. El nuevo diseño el que sugirio f point, no lo he probado pero teoricamente tendria que funcionar. Con todo pueden probar si los voltajes son los adecuados armando en un Proto-Board, siguiendo el esquematico propuesto por MicroExpert.

http://www.freewebs.com/uexpert/18f2550.htm

Yo he probado algunos proyectos de esa forma y no hay problemas, tampoco el ruido genera algun inconveniente. Tambien para las personas que nos les funciona el programador, primero deberian probar de esta forma la comunicacion USB y si el DRIVE se instala y si las pruebas del hardware funcionan con el encendido de los LEDs.

Con todo en este momento estoy haciendo una nueva version del firmware y software usando la libreria mpusbapi y el drive que provee microchip.

Les cuento que el programador Eclipse, esta trabajando muy bien con el 18F2550 y la programacion y ejecucion automatica sin sacar el programador funciona tal y como se esperaba.
 
E-clipse, una pregunta mas, dices que solo cambaste el pin y le hiciste un puente, el firmware con el que lo has probado es el que esta en tu pagina o es alguno con el que haces tus pruebas, si es que es el mismo pues no dudare en comenzar a armar mi propio programador por usb, y creo que es un gran trabajo el que haces y sobre todo te agradesco que lo estes compartiendo con todos nosotros. Yo soy estudiante de ing electronica y me va a ser muy util en cuanto lo termine de armar...
 
Hola de nuevo.

Me alegra ver Eclip-se que ya obtienes buenos resultados con la caracteristica de Reset. Se mira que vamos por buen camino.

Sabes, me gustaria emitir una opinion en cuanto al camino por el que va el diseño del hardware si no es mucho problema. Y es que no veo el motivo para dejar de usar el pin 12 (RC1) para la funcion de activacion del Vpp/Reset. Entiendo que te causo un problema con el PWM y que por ello te viste motivado a cambiarlo al pin 5(RA3)... pero genera un par inconvenientes para el tablero (la adicion de jumpers por ejemplo) y rompe la compatibilidad con el hardware anterior en el caso de circuitos impresos no tan flexibles como el mio.

No quisiera que suene a reclamo por ningun motivo, por supuesto que no, pero me gustaria que considerases volver a usar el pin 12 para su proposito anterior. He probado tu nuevo firmware en mi viejo hardware, y por lo que veo, no existe ninguna señal de PWM en el pin 12 tal como tu lo señalas (se mantiene en un nivel bajo).

Mi sospecha es que podria haber algo malo con tu circuito fisico y no con el firmware (algun cortocircuito o bien un componente defectuoso e incluso un PIC averiado) que te pudo haber generado el problema. Podrias verificar la continuidad entre el pin 12 y 13 con un tester (con el PIC afuera), o incluso podrias cambiar de PIC para ver si el problema se resuelve. Tambien, si gustas, puedo hacer las pruebas necesarias en protoboard a mas no haber si puedes regresar el pin 12 a su funcionalidad anterior con el nuevo firmware.

Mi motivo para pedir esto es que no quisiera deshacerme de mi viejo hardware, al menos no tan pronto, como para permitirme tiempo para elaborar otro impreso. Aparte podre reutilizar el diseño mas facilmente para la nueva version.

Si en todo caso consideras que ya no es posible usar el pin 12, comprendere tu decision.

Pasando a otros asuntos, me gustaria detallar un par de aspectos:
- Una pregunta: El firmware 1.1 soporta siempre cristales en multiplos de 4MHz o solamente el de 20MHz?
- Note que en las pruebas de hardware con el software/firmware 1.1 el voltaje VDD se pone a 0V cuando activas el checkbox y a 5V cuando lo desactivas... es intensiónal o me parece que esta funcionando al reves?

Bueno, eso seria todo de momento. Espero este fin de semana ponerme a trabajar un poco en mi implementacion del programador.

Saludos.
 
Hola a todos soy nuevo en el foro y antes que nada me gustaria felicitarte Eclip-se por el gran aporte que estas haciendo, y sobre todo con la tendencia que existe a desaparecer de los puertos serie y paralelo, el hacer un grabador de Pic's por puerto USB, es algo grandioso, mis mas gratas felicitaciones y sigue adelante, este fin de semana me pongo a armar tu grabador, te comentare como me va...
 
Hola a todos.

Con respecto a lo comentado por f_point, voy a ver si consigo hacerlo funcionar con el PIN 12, el problema se generaba cuando ponía un 1L en ese PIN ahí se generaba una señal PWM, todavía no entiendo el porque, ya voy ha revisarlo de nuevo.

Tener en cuenta que el PCB, esta en revisión hasta obtener una versión estable y que ya no necesite modificaciones. También la próxima versión del PCB, será controlando el voltaje con el puerto PWM, para obtener los distintos voltajes sin necesidad de los zener. Para eso se tendría que usar un puerto AD para leer el voltaje y hacer un control PID. Igual al funcionamiento del PICKIT2.

Pero eso será en la próxima versión del PCB, luego de algunos meses más.

Con respecto al voltaje del CheckBox, ya voy a revisarlos.

En la página están los archivos con los que estoy realizando las pruebas, el FIRMWARE, HARDWARE y SOFTWARE, son compatibles.
 
Agradezco mucho Eclip-se que tomes en cuenta mi solicitud. Hmmm tendre que ver la manera entonces de generar circuitos impresos con mayor agilidad, ya que segun veo el proyecto evoluciona y para poder seguir ayudando tendre que mantenerme al dia. Todo esto es para un bien mayor, claro esta.

Me parece muy atractiva la idea de reducir aun mas el circuito por medio de aplicar control digital al elevador de voltaje. Se mira complejo, pero es perfectamente lograble con un PID digital como tu lo señalas. Estare al tanto del diseño del circuito en cuanto tengas la oportunidad de presentar los bosquejos cuando esten listos en algunos meses ;-)

Espero dentro de poco proceder a hacer unas pruebas del hardware en su version actual en protoboard. Tengo una protoboard nueva por ahi que a lo mejor no genere mucho ruido. La anterior era muy vieja, y pudo haber generado problemas por ese motivo.

Buena suerte con el problema del PWM fantasma... cruzare los dedos para que salga bien.

Saludos.
 
Viendo q el hardware varia y necesitando un programador usb he tomado un par de horas o
mas para pasar el esquema al Eagle 4.16r2 poniendo en las patillas 24,25,26,27,y 28 un conector
para puentear los pines al conector final ,no me ha quedado tan bonito como el otro pero la semana q viene comprara los componentes y lo probare ya os comentare si funciona .

Si alguien lo quiere probar antes q yo puuede tomarse la molestia DD
Adjuto fichero
 

Adjuntos

  • cch1_927.rar
    57.6 KB · Visitas: 151
Supongo perik que entonces no habra necesidad de pasarte un nuevo tablero en Eagle, veo que ya estas en proceso de hacerte del tuyo. Lamentablemente en esta PC no tengo Eagle para ver como te quedo.

Les comento que ya tengo el hardware armado en una protoboard nueva (version 1.1, la que esta publicada en la pagina de Eclip-se). Por la falta de tiempo hare un resumen de mis resultados iniciales:

- Primero la buena noticia: El control de voltaje de 0-5-13V funciona como lo esperado ;-), marcha muy bien y sin inconvenientes.
- Un detalle interesante es que me dio muy buenos resultados en cuanto a ruido. Al parecer, es POSIBLE armar circuitos con USB en protoboards, siempre y cuando esten (casi) nuevas, limpias y que los cables que usen esten recien cortados y pelados (me tome la molestia y el tiempo extra de NO reciclar NINGUN cable). El programador funciono establemente durante varias horas continuas de estar conectado al USB.
- Temo que encontre una especie de error, siempre en torno al control de VDD. Durante todos los procesos de escritura, lectura y borrado se mantiene apagado y no se enciende (el pin 17/RC6 del 2550 se mantiene en alto todo el tiempo). Para poder probar el programador tuve que desconectar la alimentacion del pic a programar de el transistor y ponerla directo a +5V. La unica manera de encender el VDD es a traves de las pruebas de hardware (con el inconveniente que cite la vez pasada). Cabe aclarar que mi circuito no tiene falla en el transitor PNP de control de VDD, porque en las pruebas de hardware marcha bien.

Bueno, una observacion: Veo Eclip-se que pones como entradas o bien no inicializas los pines no usados del MCU, porque todo pin no usado se mira mas bien como si estuviera en alta impedancia (entrada). Es intensiónal?

Otra observacion interesante es que la falla del PWM fantasma pudo haber estado relacionada a un error de inicializacion del pin 12/RC1 (pudo haber quedado como entrada por error), con lo que pudo captar ruido (la señal PWM del pin contiguo) y presentar la falla que viste. Bueno, solo estoy especulando ^_^.

Y... finalmente les comento que mas tarde me llevare el programador armado a la Universidad, para tomar prestado un osciloscopio y hacer mediciones mas rigurosas. Veo que Eclip-se cambio el valor del capacitor del doblador de voltaje (C6 segun esquematico pdf V1.1) y me gustaria saber que tal marcha en cuanto a estabilidad y generacion de rizo. Aparte quisiera probar un poco mas la salida del controlador de voltaje de 0-5-13V.

Mas tarde o bien mañana les comentare acerca de mis resultados.

Saludos.
 
Muy bien, he terminado finalmente de hacer diversas pruebas del programador. En vista de que los resultados son muchos, he optado por adjuntar una tabla con los resultados de cada prueba con cada numero de serie de Microcontrolador que he podido probar, asi como algunos problemas generales que encontre, los cuales se repiten a lo largo de varias series de microcontroladores similares.

Adjunto tambien los resultados de las pruebas hechas con un osciloscopio. Lo mas importante a destacar es que tuve que dejar permanentemente conectado el pin VDD del PIC a programar a +5V, dado que el programador como tal no enciende el pin VDD a la hora de programar.

Una observacion que me gustaria resaltar Eclip-se es que en los esquematicos que publicas el diodo zener para 5V es mas bien uno de 5.6V. En vista a que un voltaje arriba de 5.5V podria confundir al PIC decidi utilizar uno de 5.1V para dicho cometido, obteniendo voltajes muy precisos (5.08V aproximadamente). Por ello mi circuito en protoboard para prueba fue construido y probado con un zener de 5.1V en vez del de 5.6V.

Y que mas puedo agregar? Bueno, que el programador funciona excelentemente a nivel electronico. Se trata de un diseño muy bueno como tal, y por lo visto, el usar una protoboard no fue mayor impedimento para que operara correctamente. Eso si, la protoboard esta practicamente nueva (es el segundo circuito que armo en ella) y todos los cables fueron pelados y cortados recientemente para interconectarla (para evitar cable sucio o corroido). Creo que eso fue muy importante para obtener buenos resultados.

En los archivos adjuntos estan los detalles. Espero que mi colaboracion sea util para todos.
Saludos.
 

Adjuntos

  • mediciones_programador_eclipse__por_f_point_172.txt
    1.7 KB · Visitas: 99
  • pruebas_eclipse_v11__por_f_point_116.xls
    17 KB · Visitas: 97
Hola a todos.

Gracias a perik por el diseño en Eagle, y a f_point por sus valiosos comentarios y en especial por su tabla de resultados.

En este momento estoy modificando el Firmware y Software para que funcione con el DRIVE que provee Microchip. Creo que ahí ya funcionara en WinVista, con respecto al esquemático, creo que si se puede utilizar el PIN 12 y no el PIN 4. Por eso el PCB esta en revisión y no es la versión final y definitiva.

El diseño original con el que hago las pruebas y el que tiene mas elementos esta en la pagina 33 de este foro. El diseño reducido y el que esta cambiado el PIN12 al PIN4 esta en la pagina del programador.

Recuerden el PCB esta en revisión y puede cambiar.

Gracias a todos.
 
Hola a todos.

Logre hacer funcionar el programador usando el PIN12, siguiendo las sugerencias de f_point.

1.- El planteo que la señal generada en el PIN12 se debía a que el PIN respectivo no estaba configurado como salida, esa opción fue descartada por que únicamente lo cambiaba al PIN4 y funcionaba correctamente:
2.- También planteo el tema del ruido y les cuento como soluciones el problema.

Decidí hacer las pruebas utilizando el PIN12, y se seguía generando una señal PWM en ese PIN, al no tener osciloscopio las presencia de esa señal lo hacia con un auricular. También al realizar las pruebas de hardware se presento un problema, al cambiar los voltajes de 13-5-0 [V] se perdía la sincronización de la comunicación USB, y perdia control sobre el programador, para retomar el control tenia que hacer un RESET quitando la alimentación del programador (O sea quitando el conector USB). Esto es debido a que el circuito utiliza el RESET interno del PIC, además como siempre tenia que hacer el RESET para realizar otras pruebas del programador, y al haber un capacitor de 100uF entre Vcc y GND el cual se quedaba cargado y tenia que descargarlo (Uniendo sus terminales) y eso me tomaba mucho tiempo decidí no ponerlo hasta finalizar las pruebas.

Luego de esta pequeña explicación y continuando con el problema del programador, pensé que la perdida de sincronía se producía por algún error en el Firmware, talvez algún salto a una dirección sin programar. Revisando no encontré ningún problemas (me pase como 3 días con este problema). Luego recordando que f_point menciono del ruido y era la otra opción que me faltaba probar y considerando que el capacitor de 100uF al inicio evita algo de ruido y estabiliza el voltaje decidí ponerlo. Al realizar las pruebas de hardware y escoger los voltajes 13-5-0 [V] toda funcionaba bien ya no se perdía la sincronización, luego puse el auricular en los PINES y ya no escuchaba esa señal PWM (ruido).

Entonces el hardware con el que estoy realizando las probas esta verificado y lo he llamado Diseño Completo, por que tiene mas elementos (transistores y resistencias), hasta ahora me funciona bien.

El otro diseño que le he llamado Diseño Reducido, propuesto por f_point, teóricamente y según el comentario de f_point al haber armado el circuito en un Proto-Board funciona muy bien, entonces los 2 diseños valen. Solo falta verificar que no exista errores en el PCB del diseño reducido.

Los archivos ya están en la pagina sigue teniendo el mismo numero de versión 1.1.
 
Hola a todos.

Ante todo me uno a la lista de agradecimientos a Eclip-se por su esfuerzo en sacar un programador de micros (y sobre todo por disponerlo de manera libre, esto ayuda a mucha gente que por una causa u otra no puede obtener uno comercial)


ya veo que han sacado una versión reciente del hardware, hasta esta fecha tengo montado en protoboard la versión 1.0 (ya me actualizaré jeje)

Les comento que lo probé con el 18f4550 y lo leyó y grabó correctamente, aunque mi humilde sugerencia me gustaría que el botón de Verificar estuviese disponible (o al menos la opción de guardar el .hex para corroborar los configuration word)

por cierto en el protoboard si que me hizo falta el condensador de 100uF a Vdd-Gnd porque sin éste, el winXP de manera aleatoria era que reconocía el programador.

La otra cuestión que quería comentar es lo del voltaje de programación alto. En mi caso medí 12.7 V después del zener de 13V y 14.5V antes del zener. el Vcc estaba por 4.7 V

Respecto a los micros PIC:

Estuve leyendo las datasheet del modo programación para la serie 16F y 18F y en ambos indican que el mínimo voltaje de programación Alto es por ~ 9 (según la formula es Vdd + 4 V)

es decir que según deduzco se necesitan al menos 10Voltios para que el pic entre en modo programación (al pin MCLR)

bueno un saludo a todos los que participan en el foro.
 
ola wenas necesito ayuda con esto y es que no consigo los transistores para el programados
ya tengo todo lo demas y mañana hare mi placa por la tecnica de insolacion k creo es la mejor
a ver si podeis ayudar con algun equivalente o algo

gracias por adelantado
 
Hola thelscIVRF, fijate el bc337 o el bc547 lo que te cambian son la patas los bc mirando de arriba
tenes emisor base colector

Espero que te sirva

Luis
 
Gracias Eclip-se por las modificaciones al firmware para utilizar el pin 12. En cuanto tenga la oportunidad probare este firmware en mi viejo programador. Me alegro de que hayas podido resolver el problema del PWM fantasma despues de tanto; quien pensaria que el USB diera tanto problema con el ruido...

Aun cuando un voltaje de 13V esta bien por arriba del umbral minimo de varios modelos de PICs como dice paliz, se da que es practicamente el minimo que algunos modelos (generalmente viejos) soportan. Lo digo por mi experiencia con el programador JDM donde algunos puertos serie "no tan fuertes" apenas lograban poco mas de 12V, en ese caso los PICs no tan viejos (ej el PIC16F84A) funcionaban muy bien, pero los PICs mas antiguos (como el PIC16F628 del que ya hay version con sufijo "A"), no podian ser programados.

Para tus transistores thelscIVRF, puedes usar cualquier equivalente de los clasicos NTE123AP (NPN) y NTE159 (PNP). Esos transistores no operan en su zona lineal (sino en conmutacion) y por lo tanto sus caracteristicas no son tan criticas.

Saludos y buena suerte a todos.
 
bueno, ya anteriormente habia enviado dos correos a eclipse agradeciendo su empeño en este proyecto y en el ultimo le envio una posible conexion para la base zif(PIC).
esta imagen la subo al foro para que puedan probarla ustedes y me den su opinion, a mi me funciono bien tube algunos inconvenientes con el pin MLCR el cual no puede estar en otro pin cuando intentas programar, pero bueno eso alparecer se soluciono. la verdad solo pude probarlo con el 18f4450, 16f873a,16f73,16f676, con los cuales cuento en el momento, pero lo mas importante es probarlo con los pic de 40 pines que son los que molestan con ese segundo pin conectado a MCLR, espero que alguien pueda probarlo y me avise rapidamente para ponerme a solucionar esto. bueno no siendo mas:

por ultimo en el diseño cambie el condensador c6 por uno de 10uf y hasta el momento bien.
 

Adjuntos

  • conector_zif_prg_eclipse_101.jpg
    conector_zif_prg_eclipse_101.jpg
    34.3 KB · Visitas: 252
Hola a todos, he estado leyendo bastante el foro y ya es hora de participar.

Ante todo felicidades Eclipse por tu trabajo, te lo has currado muchísimo! He hecho el programador en PCB, la versión de la web, y hasta ahora tan sólo he podido programar el 18f4450 (más que nada porque es el que tengo), veo que a pulpin no le da problemas, pero a mi si y no se muy bien que hacer, habría alguna forma de ver como quedan configurados los fuses una vez programado el micro? me comentan que puede ser este el problema que tengo, ya que he probado con aplicaciones Usb y el pc no detecta que se haya conectado ningun micro (el programador en teoria va bien, lee, borra, escribe y vuelves a leer y todo parece correcto, AH! no me reconoce el dispositivo desde el software del programador), el problema es que en mi aplicación VUSB se queda a 0.

Probando con ejemplos "tontos" de dejar puertos con las salidas a un valor determinado, tampoco me funciona. He probado bastantes cosas y ya no se que hacer.

¿Alguna idea?¿A alguien le pasa lo mismo?

Hoy voy a por un 4550 a ver si este no me da problemas, un saludo a tod@s!
 
Atrás
Arriba