Programador de PICs (Solo Enigma)

Oops! Lo siento thelscIVRF, espero no haberte mal informaciónrmado ni a ti ni a nadie mas que pudiera leer mi mensaje. Lo que dice Eclip-se es cierto al 100%: el programador solo funcionara con cristales de 20MHz exactos.

Las disculpas del caso a todos. Usualmente hecho a andar mis dispositivos USB (usando el PIC18F2550/4550) con el PLL enviando clock al CPU, y como tambien es una practica usual entre mi grupo de compañeros, pense que todo mundo lo usaba asi. Obviamente cometi un error: Este programador es una excepcion y alimenta el clock de CPU directo del oscilador del cristal y no desde el PLL. Me di cuenta de ello hasta que arme mi ejemplar de este programador.

No te preocupes Eclip-se, no estoy desensamblando tu codigo ni nada por el estilo. Soy muy respetuoso del trabajo de otros (y admiro mucho tu trabajo), pero como todos sabemos esa información se obtiene facilmente analizando nada mas la palabra de configuracion que viene en el .HEX, que casualmente tanto MPLAB como WinPic800 revelan como cosa rutinaria. Me temo que esta es una aclaracion innecesaria de todas formas ^_^

En todo caso Eclip-se, no crees que seria bueno echar a andar el CPU con el PLL activado? asi se podria cambiar la velocidad del cristal de entre 4, 8, 12, 16 y 20MHz nada mas cambiando las palabras de configuracion del MCU, manteniendo el CPU y todos sus perifericos corriendo siempre a la misma velocidad. Asi a todos nosotros se nos haria mas facil buscar los componentes; Imagino que seria una buena modificacion ;-)

Lo unico malo es que si la velocidad de CPU cambia por usar el PLL, habria que cambiar todos los bucles de retardo para que generen los mismos tiempos de retardo. Sin embargo en un compilador de C como el CCS, eso es pan comido: basta con cambiar la directiva #use delay (clock=XXXX) y listo, solo recompilas el .HEX.

Por otra parte, recien acabo de armar un ejemplar del programador en Protoboard. Es tremendamente dificil interfasear el USB con todo el ruido que se genera, pero al fin (bajo ciertas condiciones un poco restrictivas) logre probar varios dispositivos. He aqui mis resultados preliminares:
- PIC16F876A: Programa OK, Lee OK
- PIC16F628A: Programa OK, Lee OK
- PIC18F2550: Programa OK, Lee OK
- PIC12F683: Programa OK, Lee OK
- PIC12F675: Lee OK, pero se equivoca siempre al grabar el dispositivo (el proceso se detiene justo en el momento de programar la palabra de configuracion, pero despues de programar la FLASH y la EEPROM). Lamentablemente no preservo la palabra de calibracion al final de la memoria y como no la guarde por separado, perdi su calibracion de fabrica ;_;

Debo agregar que todos los dispositivos se detectaron correctamente al usar la opcion de identificacion automatica. Hare mas pruebas en cuanto tenga tiempo.

Muchisimas gracias Eclip-se, este es un tremendo aporte. Es muy facil hallar programadores USB comerciales a precios muy elevados, pero muy dificil hallar uno libre como el tuyo y que ademas sea de pocas piezas (es decir de bajo costo). Manten el buen trabajo amigo!
 
pues si pienso k seria muy buen idea lo de activarle el pll si esto no lleva demasiado trabajo

yo sigo buscando los componentes (xtal y bobina) y esperando a k me yege el pic de microchip


pd: en el estado de la sample ya pone shipping supongo que yeara dentro de 4 o 5 dias,
se me ace muuuuuuuuuuuuuy larga la espera pues la verdad espero que me funcione este programador jeje no tngo mu wena experiencia con los programadores puesto que el primero que armé (el pablin) no me funcionó nunca y luego arme el gtp lite y tampoco ademas creo que el pablin quemo mi primer pic porque se puso ardiendo....
 
Hola a todos.

Y gracias por probar el Programador f point. Con respecto al PIC de las seria 12F, ya voy a ver que sucede con el error.

Tambien voy a ver como cambio las subrutinas de tiempo para poder utilizar otros cristales, algunas estan echas en assembler, y se deben cambiar todos los tiempos.

Pero ya lo voy hacer.

Y si alguien lo a probado en Win Vista, podrian comentar si lo detecta el S.O. Y funciona la comunicacion USB.

Gracias
 
Que bueno que vas a considerar cambiar las rutinas para aceptar mas cristales. Todos te lo agradeceremos ^_^.

Espero que cambiar las partes hechas en assembler no te genere muchos conflictos, a lo mejor y te sea posible reconfigurar el postscaler para ajustar un poco el clock del CPU, ya que con PLL y sin postscaler, la velocidad sube de 20MHz (5MIPS) a 48MHz (12MIPS). Lastima que 5 no sea submultiplo exacto de 12 :-/

De momento no hago mas pruebas porque estoy esperando a terminar mi montaje del programador en circuito impreso. Muy probablemente tenga todo listo para mañana o bien pasado mañana, dare inicio a mas pruebas hasta entonces, ya que el ruido en la protoboard es muy grande y por lo mismo es muy propenso a fallar.

Con gusto echaria a andar unas pruebas bajo Vista, pero lamentablemente estoy escaso de espacio en mi disco duro y hasta que no haga limpieza total o compre otro disco mas grande no puedo hacer mucho movimiento en mi sistema operativo aparte de las re-instalaciones habituales de WinXP.

Estamos en contacto.
 
Yo tengo windows vista, pero sigo con los mismos problemas, no me funciona, ni me lo detecta, pero ni en Vista ni en XP, se que el micro esta bien y esta programado pero nada. Como no me funciono al principio realice otra placa por si tenia algun corto y sustitui todos los componentes y compre otro micro nuevo a ver si estaba dañado. El Art2003 programa los micros sin problema, los lee los detecta tanto el programador como como el micro pasan todos los test y cuando los conecto en el programador el micro me lo detecta pero cuando enchufo el programador al usb no pasa nada. La primera vez que lo conecte tenia la polaridad invertida y me machaque el micro pero el windows vista detecto un nuevo dispositivo! Si me ayudais un poco a reparsar el montaje para que funcione lo probare gustosamente, es mas tengo un ordenata un poco viejecillo con puertos USB, paralelo y serie, que ahora tiene XP y MSDOS instalado con el que hago pruebas y no me costaria mucho ponerle tambien el vista (este ordenador solo le uso para experimentos) por que tengo espacio en el disco por que los programas que empleamos no ocupan demasiado.......
 
Hola eclipse he estado mirando la ultima revision del software y parece que funciona perfecto. Hecho de menos el comando verificar pero creo haber leido que lo quitaste por algun fallo momentaneo no?...

Podrias añadir soporte para el pic 12f629?¿? me vendria muy bien...

Edito para comentar que estoy empezando a hacer las primeras pruebas del zocalo zif que te comenté queria hacer para este programador. Las primeras pruebas funcionando en el mismo zocalo de pics de 40/28/18 pins y supuestamente pq no tengo aqui ninguno compatible aun 8/20pins, Entre los que he probado... 16f877a (40p) 16f628 16f84a (18p) 18f2550(28)

Solo me queda preparar los transistores para conmutar VPP y VPP2.

1 saludo.
 
Ahora que elmasvital lo menciona, me gustaria tambien ver soporte para el PIC12F629. De hecho me parecio un poco curioso ver soporte para el 12F675 (con el pequeño problema) y no para el 12F629, ya que son "hermanos" por asi decirlo.

Por otra parte, sera posible agregar soporte para las versiones anteriores de los PIC? tal como el 16F628 o el 16F877? (ambos sin la 'A'). Puedo conseguir unicamente el 16F628 comprandolo en mi pais, y a menos que lo pida como muestras al exterior (toma mas de 1 mes), no puedo hacerme del 16F628A.

A lo mejor sea cosa de paciencia... imagino que eventualmente veremos soporte en tu software para toda clase de PIC :)

En otros asuntos, tengo casi listo mi programador en version circuito impreso. Solo dare unas horas mas a que seque la laca acrilica que lo protege para iniciar mas pruebas.

Saludos.
 
Hola a todos.

Aunque el 16F877 y 16F877A, y sus familias se diferencian unicamente por la A. El algoritmo de programacion es poco diferente. Les prometo que para enero, estan adicionados esos PIC, y el comando de verificar.

Y si tienen problemas con el hardware, el PCB esta bien, solo deben tener cuidado con la polaridad de los transistores y capacitores. Antes de conectar el programador, deben programar el firmware. Y automaticamente es reconocido por el sistema operactivo. Por lo menos el Win XP lo hace he instala los DRIVE autometicamete.

Gracias.
 
Elmasvital, yo tmbien planeo integrarle un zocalo zif al programador, sin embargo la conmutacion de vpp y vpp2 la planeaba hacerla con un pequeño switch de un polo 2 tiros para seleccionar entre encapsulados de 8-18 y entre 28-40 podrias explicarme como usaras los transistores para hacer la conmutacin en lugar de un switch.

De antemano gracias
 
Segun el zif que tengo planeado hacer realmente vpp solo es un problema para los pics de 40 patillas el resto podria funcionar incluso con vpp y vpp2 activados a la vez.

La conmutacion se haria por uno de los pines auxiliares, siendo el software del pc el que decida que vpp debe estar activado en cada momento. Ya se habló esta posibilidad con eclipse y le interesaba la idea.

1 saludo.
 
Este es el zif que estoy probando ahora mismo. Lo pongo para que lo comentemos... a ver que pensais... o si detectais algun error.

cuando en Aux1 tenemos un nivel alto. Vpp1 está a 12v, Vpp2 a 0v. Cuando aux1 está a nivel bajo pues al contrario.
 

Adjuntos

  • esquematico_zif_106.png
    esquematico_zif_106.png
    32.9 KB · Visitas: 261
Pues me parece bien, y tienes razón solo habria problema con el encapsulado de 40 pines, al inicio habia pensado en un interruptor para alternar entre vpp y vpp2 sin embargo si dices que eclipse esta de acuerdo en modificar el software para que la conmutacion se haga en el circuito pues me parece bien, al fin al programar pics sobran 2 terminales.
 
elmasvital dijo:
Este es el zif que estoy probando ahora mismo. Lo pongo para que lo comentemos... a ver que pensais... o si detectais algun error.

cuando en Aux1 tenemos un nivel alto. Vpp1 está a 12v, Vpp2 a 0v. Cuando aux1 está a nivel bajo pues al contrario.

El planteamiento me parece bastante bien, sin embargo veo que existe un pequeño problema potencial: el voltaje VPP (1 o 2) es aplicado al PIC a traves de una resistencia de 4.7K, lo que podria provocar una pequeña caida de voltaje entre el programador y el PIC programado. Segun dices VPP (1 o 2) llega a 12V, pero a 12V corremos el riesgo de que algunos pic no se programen bien (tuve un problema similar con un JDM, donde la PC no enviaba suficiente voltaje al VPP, llegando a solo 12V, lo cual provocaba fallas con muchos modelos de PIC).

Me temo que necesitariamos exactamente 13V para asegurarnos que no ocurran problemas al programar los PIC. Imagino que debe de haber alguna mejoria, solo que de momento no se me viene ninguna a la cabeza para sugerirla. En todo caso seria de probarlo asi como esta con varios PIC, porque podria funcionar de todas formas, dado que este programador es completamente diferente del viejo JDM.
 
Estimados, me he tomado la libertad de realizar algunas pruebas con mi pequeña coleccion de PICs con una implementacion del programador que hice en circuito impreso, para confirmar compatibilidades y detectar fallas menores. Es mi mas sincera intensión colaborar a la mejoria de este excelente programador.

Esta es la tabla con mis resultados, los numeros indican notas adicionales que estan mas abajo:

PIC16F876A - Identifica: OK, Graba: OK, Lee: OK
PIC16F877A - Identifica: OK, Graba: OK, Lee: OK
PIC16F628A - Identifica: OK, Graba: OK, Lee: OK
PIC16F88 - Identifica: OK, Graba: Hay problemas (1), Lee: Hay problemas (1)
PIC12F675 - Identifica: OK, Graba: Hay problemas (2), Lee: OK
PIC12F683 - Identifica: OK, Graba: Hay problemas (3), Lee: OK
PIC18F2550 - Identifica: OK, Graba: OK, Lee: OK
PIC18F4550 - Identifica: OK, Graba: OK, Lee: OK
PIC18F2620 - Identifica: OK, Graba: Hay problemas (4), Lee: OK

1- PIC16F88
No lee ni graba la segunda palabra de configuracion (direccion 0x2008), solo la primera.
Basicamente esta palabra es omitida a la hora de comunicarse con el dispositivo, pero se
carga corectamente desde el .hex en el software de la PC. Esta palabra contiene las
configuraciones "fail safe clock monitor enable" e "internal external Switch over mode".
Como ambas no se programan, quedan siempre activadas tras borrar el dispositivo.

2- PIC12F675
a) Al grabar el software indica que hubo un error casi al final del proceso, sin embargo
el dispositivo se graba completamente bien (incluida toda la memoria de programa, EEPROM y
palabra de configuracion). Este error ya habia sido reportado.

Update: Acabo de descubrir que la palabra de configuracion (0x2007) posee 3 bits sin usar,
y que siempre se leen como cero. Cuando en el .hex esos bits tienen algun 1 se genera el
error antes mencionado. Presumo que lo que ocurre es que se genera un error al comparar el
valor programado (con esos bits como 1) y el leido (cuyos bits el dispositivo ignora y
devuelve como cero) ya que son inevitablemente diferentes.

b) La palabra de calibracion en la ultima localidad de programa (direccion 0x3FF) se destruye
cada vez que el dispositivo es grabado o borrado. La especificacion indica que la palabra de
calibracion debe de ser leida antes de borrar el dispositivo para ser restaurada al grabarlo.
Recomiendo agregar una opcion (siempre desactivada por default) para que el usuario pueda
sobreescribir dicha palabra si lo desea. Este error ya habia sido reportado.

c) Los bits de calibracion BG1 y BG0 en la palabra de configuracion (0x2007) no se preservan
y siempre sobreescriben borrando la calibracion de fabrica del "bandgap" para POR y BOR.
Recomiendo una opcion (siempre desactivada por default) para que el usuario pueda elegir si
quiere sobreescribir esos bits o bien preservarlos (esos bits deberian ser leidos antes de
reprogramar el dispositivo y luego forzados a su valor anterior al reprogramarlo, ignorando
el contenido del .hex para esos bits).

3- PIC12F683
a) De manera similar al 12F675, hay 2 bits de configuracion sin usar (direccion 0x2007) que
siempre se leen como 1. Si en el hex alguno de estos bits es 0, se generara un error al final
de la escritura.

Como nota adicional, puedo suponer que en varios otros PIC podria generarse esta clase de
errores si algun bit en sus palabras de configuracion no es usado.

b) Todo funciona bastante bien. Solo queria sugerir que seria bueno poder leer y grabar (con
las prevenciones del caso) la palabra de calibracion (0x2008), ya que a veces uno necesita
recalibrar el oscilador interno.

4- PIC18F2620
a) El dispositivo presenta ciertos problemas a la hora de ser reprogramado. Por lo visto, el
dispositivo tiene que estar siempre en blanco para que un nuevo programa pueda ser
grabado correctamente, de lo contrario al sobreescribir los bytes se sobreponen los ceros
(operacion AND segun veo) y los datos viejos se combinan con los nuevos corrompiendo
todo.

b) Asimismo, la funcion de borrado total no funciona. El programador enciende el LED rojo
brevemente indicando la operacion de borrado, pero al leer el dispositivo nuevamente los
datos siguen estando guardados. Al parecer, la causa de esta falla esta asociada a la causa
de la falla anterior.

c) Al cargar un .hex con datos en la EEPROM, los datos de la misma se cargan mal.
Basicamente el software omite los bytes del .hex cada localidad impar, dejando solo los
datos en localidades pares presentes. Asimismo, el software no presenta los caracteres
ascii a la hora de cargar el .hex (mas si presenta los numeros). Los caracteres ascii son
presentados en el software solo cuando se lee el dispositivo.

Bueno, eso serian todos mis resultados.

Tambien cuento con otros dispositivos no soportados aun. Con mucho gusto los probare a medida sean agregados. Los otros modelos que poseo son: PIC12F629, PIC16F628, PIC18F2431, dsPIC30F3010, dsPIC30F3012 y dsPIC33FJ12MC.

Siento el post tan largo, pero no encontre otra forma rapida de publicar mis resultados. Espero esto sea de utilidad para todos.

Saludos.
 
f_point dijo:
elmasvital dijo:
Este es el zif que estoy probando ahora mismo. Lo pongo para que lo comentemos... a ver que pensais... o si detectais algun error.

cuando en Aux1 tenemos un nivel alto. Vpp1 está a 12v, Vpp2 a 0v. Cuando aux1 está a nivel bajo pues al contrario.

El planteamiento me parece bastante bien, sin embargo veo que existe un pequeño problema potencial: el voltaje VPP (1 o 2) es aplicado al PIC a traves de una resistencia de 4.7K, lo que podria provocar una pequeña caida de voltaje entre el programador y el PIC programado. Segun dices VPP (1 o 2) llega a 12V, pero a 12V corremos el riesgo de que algunos pic no se programen bien (tuve un problema similar con un JDM, donde la PC no enviaba suficiente voltaje al VPP, llegando a solo 12V, lo cual provocaba fallas con muchos modelos de PIC).

Me temo que necesitariamos exactamente 13V para asegurarnos que no ocurran problemas al programar los PIC. Imagino que debe de haber alguna mejoria, solo que de momento no se me viene ninguna a la cabeza para sugerirla. En todo caso seria de probarlo asi como esta con varios PIC, porque podria funcionar de todas formas, dado que este programador es completamente diferente del viejo JDM.

no te preocupes que la configuración que tiene no hace caer nada el voltaje. El unico temor que tenia era que la división de la corriente que se realiza para crear vpp1 y vpp2 no fuera suficiente para entrar a modo programación. Pero el zocalo está probado con los pics que tengo aqui un 16f628 y un 18f2550, y en ambos lee y graba e identifica sin mayor problemas.

Cuando decia que lo comentaramos era ver la posibilidad de ingresar algun dispositivo adicional que no estubiera contemplado o algun pic que siendo de los pines propuestos no guardara los pines mas o menos estandar que los demás de su nº de pines.

1 saludo
 
OK elmasvital, si tu mismo ya lo probaste, entonces significa que funciona muy bien :) por lo visto los PIC no consumen mucha corriente cuando son programados, y ahora que lo mencionas, las impedancias presentes en la red de circuito del JDM tambien son altas (de hecho las condiciones son iguales o incluso peores), y sin embargo esa clase de programadores suele funcionar bien.

En cuanto a la distribucion de pines no veo mayor problema. Se ve a simple vista que soporta muchos dispositivos de 8, 18, 28 y 40 pines y me parece muy buena la distribucion.

Quizas el unico inconveniente que veo (y que es inevitable) es que no se puede conectar ni el PIC18F2550 ni el PIC18F4550, ya que el pin Vusb de esos PIC (la salida del regulador de voltaje USB) se coloca a clock en ambos casos (pin 14 en el 2550 y 18 en el 4550) y al colocar externamente 0 o 5 voltios en ese pin nos arriesgamos a dañar el puerto USB del PIC bajo programacion, pues ese pin es una salida en todo momento. Lastima, porque precisamente esos mismos pines son clock para la gran mayoria (si no es que todos) los dispositivos de 8 y 18 pines :(

En cuanto a la distribucion de la corriente que viene del doblador de voltaje, solo hay que ver que en el catodo del diodo rectificador (1N4148) haya mas de 14V en todo momento (el mio mide como 21.5V sin carga). Si es asi, entonces no deberia haber problema, pues eso indicaria que soporta la carga extra con toda la corriente que drena. Por otra parte, en el PIC bajo programacion deberia haber siempre 13V en todo momento mientras se este programando.

Aprovecho la oportunidad para anexar a un ancestro... no, mas bien un clasico, que recien acabo de probar:

PIC16F84A - Identifica: OK, Graba: OK, Lee: OK

Recien lo tome prestado de un muy buen amigo mio, y todas las pruebas fueron satisfactorias.


Sigamos asi, colaboremos para hacer de este buen programador algo todavia mejor.
 
No me habia percatado del Vusb... Voy a hacer pruebas porque actualmente graba los 18f2550 sin aparente problema y sin fallo en el usb. A ver el problema no es meterle 5v en esa patilla porque no hay diferencia de potencial... el problema seria meterle GND pq hay consumo de corriente... y logicamente el clock le va a dar ambos. No obstante esa misma patilla en los circuitos que usan usb con el 2550 se conecta a masa con un condensador.

En todo caso podriamos probar a meter una resistencia en esa patila para limitar la corriente, aunque ya el programador tiene una interna de 100R.

Acabo de hacer una prueba intercalando una resistencia de 10k entre clock y la patilla 14 del zif y los pics de 18 pines que son los que usan ese clock funciona sin problema alguno.

Habrá que ir probando.

edito ::>> FPOINT a ver si puedes mirar si a ti con el pic18f2550 haciendo un borrado del chip te borra la palabra de configuración. Cargale pro ejemplo el hex del programador y luego borralo cierra el programa y lee el contenido del pic... a mi no me borra la palabra de configuración.

1 saludo.
 
Hola a todos, y gracias por los comentarios relacionados a las pruebas de los PIC. Ya voy a revisar y corregir los problemas.

Y esta muy bueno el trabajo que están haciendo para utilizarlo con un ZIP.

También estoy trabajando con la programación de los AVR, los mas conocidos, en las próximas semanas estará una versión de prueba. Ya que solo dispongo del ATMEGA16 y ATMEGA8, pero la única diferencia entre los AVR es la capacidad y algunos detalles, creo que podré generalizar la programación para que soporte la mayoría de AVRs
 
elmasvital dijo:
No me habia percatado del Vusb... Voy a hacer pruebas porque actualmente graba los 18f2550 sin aparente problema y sin fallo en el usb. A ver el problema no es meterle 5v en esa patilla porque no hay diferencia de potencial... el problema seria meterle GND pq hay consumo de corriente... y logicamente el clock le va a dar ambos. No obstante esa misma patilla en los circuitos que usan usb con el 2550 se conecta a masa con un condensador.

En todo caso podriamos probar a meter una resistencia en esa patila para limitar la corriente, aunque ya el programador tiene una interna de 100R.

Acabo de hacer una prueba intercalando una resistencia de 10k entre clock y la patilla 14 del zif y los pics de 18 pines que son los que usan ese clock funciona sin problema alguno.

Habrá que ir probando.

edito ::>> FPOINT a ver si puedes mirar si a ti con el pic18f2550 haciendo un borrado del chip te borra la palabra de configuración. Cargale pro ejemplo el hex del programador y luego borralo cierra el programa y lee el contenido del pic... a mi no me borra la palabra de configuración.

1 saludo.

Me temo elmasvital que el pin VUSB es mas bien una salida de un regulador interno de 3.3V que posee el PIC18F2550. La idea es que coloques ese capacitor externo para filtrar la salida del regulador (tal como lo hicieras con la salida de un 7805) puesto que el no posee un capacitor interno, ya que es muy dificil y/o caro insertar capacitores de gran tamaño en un chip de silicio.

Asimismo, el 18F2550 permite la opcion de usar un regulador externo (un 78L33 si uno gusta) y conectarlo al VUSB, pero entonces se debe de apagar el bit de cofiguracion o fuse correspondiente para apagar el regulador interno y que permita introducir el voltaje externamente.

He de agregar tambien que asi como el pin VUSB es la salida de un regulador (o la entrada de 3.3V si se apaga), tambien esta conectado internamente al modulo del USB para alimentarlo, ya que la señalizacion del bus USB es de 3.3V (aunque no lo crean asi es, aun a mi me costo creerlo), asi que debe haber siempre 3.3V en este pin si se quiere usar el USB del 2550.

Y me temo que lamentablemente esa es la razon por la que creo que el 2550 no se puede conectar en la base ZIF citada, ya que si se coloca 5V entonces se alimenta con sobrevoltaje el modulo USB (arriesgandose a dañarlo) y se coloca a 5V una salida de 3.3V (si el regulador esta activo). Por otra parte, si se coloca 0V entonces se cortocircuita la salida del regulador (en caso de estar activo).

Ademas, no podemos asumir el estado de el bit de configuracion VREGEN, ya que en algunas aplicaciones se requiere activo, mientras que en otras apagado, y ademas, no sabemos de antemano cual es su estado antes de programar el PIC.

Si ya lo probaste y el PIC18F2550 no sufrio daños, seguramente se debe a que el programador de Eclip-se parece manterner apagado el pic bajo programacion y solo se enciende brevemente mientras esta programando, lo cual no expuso el chip a las condiciones adversas sino por unos breves instantes.

En conclusion, la unica manera de soportar al PIC18F2550 (y al 18F4550) es la de dejar dicho pin irremediablemente abierto. Me temo que no haya ninguna otra alternativa, salvo la de elevar las resistencias de entrada, pero para ser sincero, no lo recomiendo.

Ahora, si hubiera una forma de poder abrir y cerrar dicho pin electronicamente... eso si seria una excelente alternativa para soportarlo.

En cuanto a tu duda sobre el borrado de las palabras de configuracion del PIC18F2550, ya hice la prueba y todas las palabras de configuracion si se borran con mi implementacion del programador y la version mas reciente del software (11/12/07), al darle click en "borrar dispositivo".

- Editado: Verifica si el doblador de voltaje de tu programador esta entregando suficiente tension (deberia haber 13V en el catodo del zener del mismo voltaje, y mas de 15 o incluso 20V en el catodo del diodo rectificador). Ya me ha ocurrido que cuando el voltaje de programacion esta en cierto umbral, las operaciones de escritura funcionan bien, pero el borrado total falla todas las veces. Mi creencia es que la operacion "bulk erase" de los PIC (que es la utilizada para borrarlo) hace que el chip consuma mas potencia de lo normal, ya que la memoria flash se borra toda y en un instante muy pero muy breve.

Espero mis comentarios sean de ayuda.
 
Atrás
Arriba