Haz una pregunta
  Foros de Electrónica » Diseño digital » Microcontroladores y sistemas embebidos
Foros Registrarse ¿Olvidaste tu contraseña?

Temas similares

18/07/2011 #1

Avatar de leandro0012

Problema con PIC 12f629 al grabar con pickit2
Cuando intento grabar un sencillo programa con pickit2 para que un led parpadee cada un segundo, me dice que hay un error en el valor OSCCAL (invalid value 3FFF) y después me da el error Program Failed at Program Memory Adress 0x000001.
Intente reparar lo del OSCCALL con la función de "Auto regenerate" de pickit2 pero lo único que obtengo es el error "Regenerating OSCALL failed! Unable to program part".

Realmente no me importa mucho el oscilador interno ya que en la mayoria trabajo con un oscilador externo de 12 MHZ. El problema es que no puedo grabarle nada, siempre me tira el mismo error. Incluso probe leyendo el dispositivo y grabando lo leído, pero sigue con el error Program Failed at Program Memory Adress 0x000001.

PD: Dejo adjuntada una imagen donde muestra el error.

Agradecería mucho su ayuda.

Saludos
21/07/2011 #2


no has probado con otro pic o bien aqui hay algo Programador de microcontroladores PIC y memorias por puerto USB PICKIT2 CLONE
24/07/2011 #3


prueba con el 16f628a, por que seguramente tienes problemas con la configuracion de tu dispositivo.
31/07/2011 #4

Avatar de leandro0012

Con el pic 16F876A anda perfecto el grabado del código, sólo tengo problemas con el 12F629 al momento de grabar.

La idea es poder utilizarlo ya que es un PIC económico, chico y bastante útil.
Lo que me parece curioso es que en el PICKIT2 clone que compré está impresa la ubicación donde tendría que ir el MOSFET (el cual no está). Puede ser que me pase como al usuario
"alejandro_oo" en el post http://www.forosdeelectronica.com/f24/programador-microcontroladores-pic-memorias-puerto-usb-pickit2-clone-18080/index66.html que tiene problemas con el PIC12F629.
Además al programar me sale un mensaje que dice "Pickit 2 VDD voltage level error. Check target and retry operation" por lo que supongo que hay problema con el grabado a 3.3V en el PIC.


En cuanto a la lectura del código esto es lo que obtengo:

Código:
3FFF	0CCC	3333	3FFF	3FFF	0CCC	3333	0CCC
3FFF	3FFF	3FFF	0CCC	3FFF	0CCC	3333	0CCC
3FFF	3FFF	3333	0CCC	3333	3FFF	3333	3FFF
3333	3FFF	3333	0CCC	3333	3FFF	3FFF	0CCC
3333	0CCC	3FFF	0CCC	3FFF	3FFF	3FFF	0CCC
3333	0CCC	3333	3FFF	3FFF	0CCC	3333	3FFF
3333	0CCC	3FFF	3FFF	3333	3FFF	3FFF	0CCC
3FFF	3FFF	3FFF	0CCC	3FFF	0CCC	3333	0CCC
3FFF	3FFF	3333	0CCC	3333	0CCC	3333	3FFF
3FFF	3FFF	3333	0CCC	3333	3FFF	3FFF	3FFF
3333	0CCC	3333	0CCC	3333	0CCC	3FFF	0CCC
3333	0CCC	3333	0CCC	3FFF	0CCC	3333	0CCC
3333	0CCC	3FFF	3FFF	3333	3FFF	3333	0CCC
3333	0CCC	3FFF	3FFF	3333	0CCC	3333	0CCC
3FFF	3FFF	3333	0CCC	3FFF	0CCC	3FFF	0CCC
3FFF	0CCC	3333	0CCC	3333	0CCC	3333	3FFF
3333	0CCC	3333	0CCC	3333	3FFF	3FFF	0CCC
3333	0CCC	3333	3FFF	3333	3FFF	3333	0CCC
3FFF	3FFF	3333	0CCC	3333	0CCC	3FFF	0CCC
3333	0CCC	3FFF	0CCC	3333	3FFF	3FFF	0CCC
3333	0CCC	3333	0CCC	3FFF	3FFF	3333	3FFF
3333	0CCC	3333	3FFF	3333	0CCC	3333	0CCC
3333	3FFF	3FFF	3FFF	3333	0CCC	3333	0CCC
3FFF	3FFF	3333	0CCC	3333	0CCC	3333	0CCC
3FFF	3FFF	3333	0CCC	3333	0CCC	3FFF	3FFF
3333	0CCC	3FFF	0CCC	3333	3FFF	3FFF	3FFF
3333	0CCC	3333	0CCC	3333	3FFF	3FFF	3FFF
3333	0CCC	3FFF	3FFF	3FFF	0CCC	3333	0CCC
3333	0CCC	3FFF	3FFF	3FFF	0CCC	3333	0CCC
3333	3FFF	3FFF	0CCC	3333	0CCC	3333	0CCC
3FFF	3FFF	3333	3FFF	3FFF	3FFF	3FFF	3FFF
3FFF	0CCC	3333	0CCC	3333	0CCC	3FFF	3FFF
3FFF	3FFF	3FFF	0CCC	3333	0CCC	3333	0CCC
3333	3FFF	3333	3FFF	3333	0CCC	3333	3FFF
3FFF	3FFF	3FFF	0CCC	3333	0CCC	3FFF	3FFF
3333	0CCC	3333	0CCC	3FFF	3FFF	3FFF	3FFF
3333	0CCC	3333	3FFF	3FFF	3FFF	3333	0CCC
3FFF	0CCC	3333	3FFF	3FFF	0CCC	3333	0CCC
3333	0CCC	3333	0CCC	3333	0CCC	3333	0CCC
3333	3FFF	3FFF	0CCC	3333	0CCC	3333	0CCC
3FFF	3FFF	3FFF	0CCC	3333	0CCC	3333	3FFF
3FFF	0CCC	3333	0CCC	3333	0CCC	3FFF	3FFF
3333	3FFF	3333	0CCC	3FFF	3FFF	3333	0CCC
3333	0CCC	3333	3FFF	3FFF	0CCC	3333	0CCC
3333	0CCC	3FFF	3FFF	3FFF	0CCC	3333	0CCC
3333	3FFF	3FFF	3FFF	3333	3FFF	3333	0CCC
3FFF	3FFF	3333	0CCC	3333	0CCC	3FFF	3FFF
3FFF	0CCC	3FFF	0CCC	3333	0CCC	3FFF	3FFF
3FFF	3FFF	3FFF	3FFF	3333	0CCC	3333	0CCC
3333	3FFF	3FFF	0CCC	3333	0CCC	3FFF	0CCC
3FFF	3FFF	3333	0CCC	3333	0CCC	3FFF	3FFF
3FFF	0CCC	3333	0CCC	3333	0CCC	3FFF	3FFF
3333	0CCC	3333	0CCC	3333	3FFF	3FFF	0CCC
3FFF	0CCC	3333	3FFF	3FFF	0CCC	3333	0CCC
3FFF	3FFF	3FFF	3FFF	3333	3FFF	3333	0CCC
3333	0CCC	3FFF	0CCC	3333	0CCC	3FFF	0CCC
3FFF	3FFF	3FFF	0CCC	3333	0CCC	3333	0CCC
3FFF	3FFF	3333	3FFF	3333	0CCC	3333	0CCC
3FFF	0CCC	3333	0CCC	3333	3FFF	3FFF	0CCC
3FFF	0CCC	3333	0CCC	3FFF	3FFF	3333	0CCC
3333	0CCC	3333	0CCC	3FFF	3FFF	3333	0CCC
3333	3FFF	3FFF	3FFF	3333	0CCC	3333	0CCC
3FFF	3FFF	3FFF	0CCC	3333	0CCC	3333	0CCC
3FFF	3FFF	3FFF	0CCC	3333	0CCC	3333	3FFF
3333	0CCC	3FFF	3FFF	3FFF	0CCC	3333	0CCC
3333	0CCC	3FFF	0CCC	3FFF	0CCC	3333	0CCC
3333	3FFF	3333	0CCC	3333	0CCC	3333	0CCC
3FFF	3FFF	3333	0CCC	3333	0CCC	3FFF	3FFF
3FFF	0CCC	3333	0CCC	3333	0CCC	3FFF	3FFF
3333	3FFF	3333	0CCC	3333	3FFF	3333	0CCC
3333	0CCC	3333	3FFF	3FFF	3FFF	3FFF	0CCC
3333	0CCC	3FFF	3FFF	3FFF	0CCC	3333	0CCC
3333	3FFF	3FFF	3FFF	3333	0CCC	3333	0CCC
3FFF	3FFF	3333	0CCC	3FFF	0CCC	3333	3FFF
3FFF	0CCC	3333	0CCC	3333	0CCC	3FFF	3FFF
3333	3FFF	3333	0CCC	3FFF	3FFF	3FFF	0CCC
3333	0CCC	3333	0CCC	3FFF	3FFF	3FFF	0CCC
3333	0CCC	3333	3FFF	3FFF	0CCC	3333	0CCC
3333	3FFF	3FFF	3FFF	3333	0CCC	3333	0CCC
3FFF	3FFF	3FFF	0CCC	3333	0CCC	3333	0CCC
3333	0CCC	3333	3FFF	3333	0CCC	3333	0CCC
3333	0CCC	3333	0CCC	3FFF	0CCC	3333	0CCC
3FFF	3FFF	3333	0CCC	3333	0CCC	3333	3FFF
3FFF	3FFF	3333	0CCC	3333	0CCC	3FFF	3FFF
3333	0CCC	3333	0CCC	3333	3FFF	3FFF	0CCC
3333	0CCC	3333	3FFF	3FFF	3FFF	3333	0CCC
3333	0CCC	3333	3FFF	3FFF	3FFF	3333	0CCC
3333	0CCC	3FFF	3FFF	3333	0CCC	3333	0CCC
3FFF	3FFF	3FFF	0CCC	3FFF	0CCC	3333	0CCC
3FFF	3FFF	3333	0CCC	3333	0CCC	3FFF	3FFF
3333	3FFF	3333	0CCC	3333	0CCC	3FFF	0CCC
3333	0CCC	3FFF	0CCC	3FFF	3FFF	3FFF	0CCC
3333	0CCC	3333	0CCC	3FFF	0CCC	3333	3FFF
3333	0CCC	3333	0CCC	3333	0CCC	3333	0CCC
3333	3FFF	3FFF	3FFF	3FFF	0CCC	3333	0CCC
3FFF	3FFF	3FFF	0CCC	3333	0CCC	3333	0CCC
3333	3FFF	3FFF	0CCC	3333	0CCC	3333	0CCC
3333	0CCC	3FFF	0CCC	3333	3FFF	3333	3FFF
3FFF	3FFF	3333	0CCC	3333	0CCC	3333	3FFF
3FFF	0CCC	3FFF	0CCC	3333	3FFF	3FFF	0CCC
3333	0CCC	3333	0CCC	3333	3FFF	3FFF	3FFF
3FFF	3FFF	3FFF	3FFF	3FFF	3FFF	3333	0CCC
3333	0CCC	3333	3FFF	3FFF	0CCC	3333	0CCC
3333	3FFF	3FFF	3FFF	3333	0CCC	3333	0CCC
3333	3FFF	3333	0CCC	3333	0CCC	3333	3FFF
3333	3FFF	3333	0CCC	3333	0CCC	3FFF	3FFF
3FFF	0CCC	3FFF	0CCC	3333	3FFF	3FFF	0CCC
3333	0CCC	3333	0CCC	3FFF	3FFF	3333	3FFF
3333	0CCC	3333	3FFF	3333	0CCC	3333	0CCC
3333	0CCC	3FFF	3FFF	3FFF	0CCC	3333	0CCC
3333	3FFF	3FFF	3FFF	3333	3FFF	3333	0CCC
3FFF	3FFF	3333	0CCC	3333	0CCC	3FFF	3FFF
3FFF	3FFF	3FFF	3FFF	3FFF	3FFF	3FFF	0CCC
3333	3FFF	3333	0CCC	3333	0CCC	3333	0CCC
3FFF	3FFF	3FFF	0CCC	3333	0CCC	3333	3FFF
3FFF	0CCC	3333	0CCC	3333	0CCC	3FFF	3FFF
3333	0CCC	3333	0CCC	3333	3FFF	3FFF	0CCC
3333	3FFF	3FFF	3FFF	3FFF	0CCC	3333	0CCC
3333	0CCC	3333	3FFF	3FFF	0CCC	3333	0CCC
3333	3FFF	3FFF	3FFF	3333	3FFF	3333	0CCC
3FFF	3FFF	3FFF	0CCC	3333	0CCC	3333	0CCC
3FFF	0CCC	3FFF	0CCC	3333	0CCC	3FFF	3FFF
3333	0CCC	3333	3FFF	3333	0CCC	3FFF	3FFF
3333	0CCC	3333	0CCC	3FFF	3FFF	3333	0CCC
3FFF	0CCC	3333	3FFF	3FFF	0CCC	3FFF	3FFF
3333	0CCC	3FFF	3FFF	3333	3FFF	3333	0CCC
3333	3FFF	3FFF	0CCC	3333	0CCC	3333	0CCC
3FFF	3FFF	3FFF	0CCC	3333	0CCC	3333	3FFF

Ahora ya conseguí mas datos pero, ¿Cómo lo soluciono?
01/08/2011 #5


Hola, con que estás alimentando el pic 12F629, con una fuente externa o con el mismo programador?

salu2..
01/08/2011 #6


Hola, por lo que veo no soy el unico que tiene problemas con estos enanos. A veces despues de la segunda programada se me muere. No me da problemas con el vaor de OSCCAL sino con el otro parametro, BANDGAP. No creo que sean mas delicados que los demas PIC. ¿Que sera?... Utilizo un programador JDM
01/08/2011 #7

Avatar de leandro0012

AND_77 dijo: Ver Mensaje
Hola, con que estás alimentando el pic 12F629, con una fuente externa o con el mismo programador?

salu2..
El programador tiene un zocalo zif donde lo pongo para programar, el cual ya le entrega la alimentación.
01/08/2011 #8


Me imagino que el programador tendrá un conector ICSP (In Circuit Serial Programing), te diría que pongas al micro en una breadboard y lo alimentes con una fuente externa, te explico como es por si no sabes hacerlo (si sabes saltá al párrafo siguiente): en el programa del pickit2 pones "Force Target", ubicá en el datasheet del pic cuales son los pines Vdd, Vss (GND), PGD (ICSPDAT), PGC (ICSPCLK) y Vpp (MCLR). Después del conector ICSP ubicas los esos mismos pines, los conectas en la breadboard. En Vdd del pic tenes que poner el positivo del fuente externa no pongas vdd del programador, las masas las tenes que juntar (fuente externa/programador) y listo con eso ya deberías poder programar con fuente externa..

Me puse a ver el data del pic que tenes y veo que es de 5v, no lo estarás poniendo en 3,3v por error? o miré mal el data? (nunca he usado pic's de 3,3v). Por otro lado si tu programador no tiene un Mosfet o no podes apagar la alimentación desde la pc (en verdad para este caso deberian faltar dos mosfet) o no podes variar la tensión de salida (a demás de faltar un mosfet tiene que faltar un amplificador operacional).

En el programa del PICKIT2, si vas a help -> PICKIT 2 User's Guide, al final de ese PDF tenes el circuito original del pickit, ahí podrias determinar cual es el mosfet que le falta y ver si falta algo más..

Espero que te sirva de algo la info.. salu2...
01/08/2011 #9

Avatar de leandro0012

AND_77 dijo: Ver Mensaje
Me imagino que el programador tendrá un conector ICSP (In Circuit Serial Programing), te diría que pongas al micro en una breadboard y lo alimentes con una fuente externa, te explico como es por si no sabes hacerlo (si sabes saltá al párrafo siguiente): en el programa del pickit2 pones "Force Target", ubicá en el datasheet del pic cuales son los pines Vdd, Vss (GND), PGD (ICSPDAT), PGC (ICSPCLK) y Vpp (MCLR). Después del conector ICSP ubicas los esos mismos pines, los conectas en la breadboard. En Vdd del pic tenes que poner el positivo del fuente externa no pongas vdd del programador, las masas las tenes que juntar (fuente externa/programador) y listo con eso ya deberías poder programar con fuente externa..

Me puse a ver el data del pic que tenes y veo que es de 5v, no lo estarás poniendo en 3,3v por error? o miré mal el data? (nunca he usado pic's de 3,3v). Por otro lado si tu programador no tiene un Mosfet o no podes apagar la alimentación desde la pc (en verdad para este caso deberian faltar dos mosfet) o no podes variar la tensión de salida (a demás de faltar un mosfet tiene que faltar un amplificador operacional).

En el programa del PICKIT2, si vas a help -> PICKIT 2 User's Guide, al final de ese PDF tenes el circuito original del pickit, ahí podrias determinar cual es el mosfet que le falta y ver si falta algo más..

Espero que te sirva de algo la info.. salu2...
muchisimas gracias, mañana lo pruebo y te cuento los resultados.

avpc79 dijo: Ver Mensaje
Hola, por lo que veo no soy el unico que tiene problemas con estos enanos. A veces despues de la segunda programada se me muere. No me da problemas con el vaor de OSCCAL sino con el otro parametro, BANDGAP. No creo que sean mas delicados que los demas PIC. ¿Que sera?... Utilizo un programador JDM
Te comento, yo soy bastante novato, pero por todo lo que busqué, encontré casos así donde la gente activava la casilla MCLR en la primera programación y al quererlo programarlo devuelta no podían porque se prendía y se reseteaba (es algo así, no me acuerdo exactamente, pero el problema estaba en el MCLR). Una de las soluciones era borrar el pic completamente y volver a programar.

Espero que te haya servido, repito, soy muy novato en eléctronica y mas con los pics, así que puede ser que me equivoque.
01/08/2011 #10

Avatar de Daniel Meza

Quizás no sea de mucha ayuda pero yo también tengo un programador de PIC's clónico del PICkit como este

Programador, y ahorita leyendo este tema, revisé en mi programador y dentro de la gran variedad de PIC's que puede programar me he dado cuenta que ese que mencionas no. Quizá se deba el elemento que dices que falta (no he comparado el diseño del programador con el del PICkit), y ningún clónico del Pickit lo puede programar. En caso de que fuera ese el problema, porque no intentar con otro uC. Leyendo hojas de datos de algunos uC's creo que te convendría usar el PIC16F630, está en un encapsulado un poco más grande (14 pines) pero en cuanto a funciones es similar.
01/08/2011 #11

Avatar de leandro0012

Daniel Meza dijo: Ver Mensaje
Quizás no sea de mucha ayuda pero yo también tengo un programador de PIC's clónico del PICkit como este

Programador, y ahorita leyendo este tema, revisé en mi programador y dentro de la gran variedad de PIC's que puede programar me he dado cuenta que ese que mencionas no. Quizá se deba el elemento que dices que falta (no he comparado el diseño del programador con el del PICkit), y ningún clónico del Pickit lo puede programar. En caso de que fuera ese el problema, porque no intentar con otro uC. Leyendo hojas de datos de algunos uC's creo que te convendría usar el PIC16F630, está en un encapsulado un poco más grande (14 pines) pero en cuanto a funciones es similar.
Los que uso y sí funcionan son los PIC16F876A y 18F2550. Los dos funcionan de maravilla sin ningun inconveniente
01/08/2011 #12

Avatar de Daniel Meza

Aja por eso se me hace raro que no funcione con el que deseas. Te digo puede ser problema del soft o algo así. ¿Ya intentaste actualizar el software del programador?, de la página de Microchip se puede descargar el archivo del SO del programador... quizá actualizándolo lo pueda programar (No lo garantizo)
01/08/2011 #13

Avatar de leandro0012

Daniel Meza dijo: Ver Mensaje
Aja por eso se me hace raro que no funcione con el que deseas. Te digo puede ser problema del soft o algo así. ¿Ya intentaste actualizar el software del programador?, de la página de Microchip se puede descargar el archivo del SO del programador... quizá actualizándolo lo pueda programar (No lo garantizo)
Probé con el firmware 2.1, 1.21 y 1.20 en el software del pickit2 sobre Windows y con el 1.21 en piklab sobre Ubuntu, Linux y todos me devuelven error. En cambio con los otros dos PICs funciona bien.

Ahora estoy probando como dijo AND_77 (al final me entusiasmé y lo empezé a hacer ahora)
01/08/2011 #14


Yo tengo un clon del pickit que es full.. y veo que está en la lista de micros que es soportado (también sale que es soportado en el MPLAB). Es buena la opción que dice Daniel.. fijate si te hace falta actualizar el firm del pickit, en help->about te abre una ventana y donde dice OS Firmware Versión tiene que decir 2.32, si sale esa versión no intentes reprogramarlo porque es la última, a mí una vez que lo intenté actualizar se me colgó (por suerte tenía otro 18F con el firm del pickit grabado).

Acabo de ver tu nuevo mensaje.. en about del programa del pickit me sale esto:

Application versión 2.61.00
Device file versión 1.61.00
OS Firmware versión 2.32.00

Estoy seguro que os firmware y application version son las últimas.
01/08/2011 #15

Avatar de leandro0012

AND_77 dijo: Ver Mensaje
Yo tengo un clon del pickit que es full.. y veo que está en la lista de micros que es soportado (también sale que es soportado en el MPLAB). Es buena la opción que dice Daniel.. fijate si te hace falta actualizar el firm del pickit, en help->about te abre una ventana y donde dice OS Firmware Versión tiene que decir 2.32, si sale esa versión no intentes reprogramarlo porque es la última, a mí una vez que lo intenté actualizar se me colgó (por suerte tenía otro 18F con el firm del pickit grabado).

Acabo de ver tu nuevo mensaje.. en about del programa del pickit me sale esto:

Application versión 2.61.00
Device file versión 1.61.00
OS Firmware versión 2.32.00

Estoy seguro que os firmware y application version son las últimas.
Ahora mismo estoy en linux (casi no uso windows) y me acuerdo que cuando lo actualize pro ultima vez quedo en la 2.32. En cuanto el software lo reinstalé hace 1 semana por el mas unevo, y el problema persiste.

Por ahora estoy peleando con los pines del ICSP, ahora en un rato lo termino y posteo los resultados

Me rindo, mañana voy a comprar un adaptador para los pines del ICSP porque con los cables se me complica y no puedo hacer que reconosca el PIC.
03/08/2011 #16

Avatar de leandro0012

GRACIAS! Finalmente conseguí los pines para el ICSP, monté todo en el breadbord con la fuente externa y lo grabó perfectamente. Use una fuente de 3V conectada a VDD, junte las masas y listo!.
Muchísimas gracias a todos y en especial a AND_77 por el consejo.
04/08/2011 #17


Buenísimo.. me alegra mucho que te haya servido mi consejo!!
20/01/2013 #18


Programando pic12f675
B.D. colegas he hecho programas en c en el compilador ccs con el 16f84a y funcionan de maravilla, estoy iniciando con el 12f675 pero tengo problemas, realice un programa sencillo en el simulador isis corre perfecto pero cuando cargo el pic con el pickit2 parece que cargará el primer programa que le instalé no modifica que creen que pueda ser y gracias de ante mano. a el programa es este:

#fuses INTRC_IO,NOWDT,NOPUT,NOPROTECT,NOCPD,NOMCLR,BROWNO UT
#use delay(int=4000000)

void main(void)
{
output_low( PIN_A1 );
while ( TRUE ) // Ciclo infinito
{

output_high( PIN_A1 ); //LED on
delay_ms( 250 ); // Retardo 250ms
output_low( PIN_A1 ); //LED on
delay_ms( 250 ); // Retardo 250ms
}
}

al encenderlo tiene que realizar la rutina, pero no lo hace y verifico haber si descarg'o el programa con el pickit2 y me dice todo correcto.
Respuesta
¿Tienes una mejor respuesta a este tema? ¿Quieres hacerle una pregunta a nuestra comunidad y sus expertos? Registrate

Foros de Electrónica » Diseño digital » Microcontroladores y sistemas embebidos

Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO ©2011, Crawlability, Inc.