# PICs que se pueden usar con PICKIT2 Starter Kit



## morris888 (Ene 22, 2009)

Hola, soy nuevo con esto de los microcontroladores y queria saber si alguien posee un pickit2, es q planeaba comprar uno.

Queria saber si se pueden programar varios modelos de pic con este dispositivo y si se puede retirar luego el pic para colocarlo en una tarjeta aparte para que ejecute un programa.

Gracias


----------



## Moyano Jonathan (Ene 22, 2009)

Yo tengo el pickit2 y si se puede hacer eso que planteas


----------



## yukardo (Ene 22, 2009)

yo tengo uno. Aqui te coloco la pagina donde salen los dispositivos que programa.

http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1406&dDocName=en027813


----------



## cesartm (Ene 22, 2009)

Aqui esta el Data Sheet


----------



## Moyano Jonathan (Ene 22, 2009)

Otra cosa , el pickit2 no viene con zócalo ZIF para la programación de los micros como otros programadores , la tenés que comprar vos o armarte una vos mismo.


----------



## morris888 (Ene 22, 2009)

Gracias por todas las respuestas, entonces el pickit es solo el dispositivo para programar mediante usb?

Otra cosa en la pagina de microchip vi que hay uno que viene con una tarjeta y un pic para programar aqui esta el link. 
http://www.microchipdirect.com/productsearch.aspx?Keywords=DV164120

A es el segundo, a ver que les parece


----------



## Moyano Jonathan (Ene 24, 2009)

ya termine el pickit2 clone así que no va a hacer falta que lo comprés


----------



## kosovo37 (Ene 24, 2009)

El Pickit2 soporta una gama grande de Pics, incluyendo dspic, y tiene la particularidad de programar el pic ya montado en el circuito, y resulta muy facil utilizarlo, si necesitan los diagramas de conexión de cada pic con el PicKit2 sin poseer ningun zocalo me avisan, yo los poseo creo que todos...


Saludosss...


----------



## morris888 (Ene 25, 2009)

Gracias por la respuesta, una cosa, ya me decidi a comprarlo pero tengo que ordenarlo por internet para que llegue a mi pais (Costa Rica).
Yo no se si alguien ha ordenado algo desde la pagina de microchip, pero iba a traer el pickit2 y varios pics, pero tengo un problema:

En el checkout me aprarece el pickit y dice que va a ser enviado desde USA, luego cada uno de los modelos de pic me aparece que van a ser enviados desde tailandia. Entonces no se si voy a tener que pagar un shipping por el pickit2 y otro por los pics?


----------



## kosovo37 (Ene 25, 2009)

si te dice asi si, pero no creo que sea caro el shipping de ninguno de los 2, ya que no pesan y su valor no es grande, ni su tamaño, yo en mi caso compre el pickit en mercadolibre, y compre para aprender un pic de cada serie, por ejemplo, pic16F690, 16F628, 16F84A y pic18F452, y esta semana comprare 12F629 y 16F877, para tener una gama amplificadora y asi aprender mas rapido, aunque con pickit2 y pic simulator ide es facil, pero no esta demas aprender assembler.


----------



## hugoboss (Oct 10, 2009)

saludos a todos, disculpen soy nuevo en este tema de los pics, pero un familiar me facilito el pickit2 starter kit, segun lei en los post anteriores, si puedo usar otro tipos de pic al q trae incluido de fabrica? por ejemplo usar un 16F84, cargar el programa en el pickit y despues usar ese pic en un circuito externo?

gracias

creo q al q ustedes hacen mencion es el pickit 2, yo tengo el pickit 2 starter pic, ese tmambien funca para programar otros pics?


----------



## morris888 (Oct 10, 2009)

Yo pregunte lo mismo anteriormente, si se pueden programas otros pic, de hecho se pueden programar muchos, en un comentario anterior hay un link con toda la lista de dispositivos que se pueden programar.

Lo importante es utilizar las terminales del conector del pickit2 y conectarlas correctamente a los pines adecuados del pic. Puede observar la hoja de datos del pickit2 y del pic que quiera utilizar para ver cuales pines hay que conectar.

Aca hay una pagina que habla de ICSP, el cual es la programacion que utiliza el pickit2 (esta en ingles) http://www.best-microcontroller-projects.com/pic-icsp.html


----------



## hugoboss (Oct 10, 2009)

he estado leyendo, yo crei q el pickit 2 era por asi decirlo algo mas complejo q el pickit 2 starter kit, pero he visto q la diferencia es q el pickit 2 starter ya trae la base para poner los pics, pero e la pagina de microchip en la descripcion del producto, menciona q es para pics de 8,14,20 pines, y el 16F84 es de 18; entiendo q en si el aparato si puede cargar varios tipos de pic como mencionas, pero mi duda seria, la base q trae incluida serviria?

aquio esta la imagen de lo q menciono

http://www.microchipdirect.com/productsearch.aspx?Keywords=DV164120


----------



## morris888 (Oct 11, 2009)

El PICkit2 programa los microcontroladores con ICSP, este permite programar al pic sin necesidad de sacarlo del circuito de aplicacion, y utiliza 5 pines para programar, las cuales en el PICkit2 son:
1-Vpp(la que tienen la marca con una flecha en el pickit): voltaje de programacion
2-Vdd:+5V
3-GND:0v
4-ICSPDAT(PGD): Datos
5-ICSPCLK(PGC): Reloj
6-Auxiliar: se usa en algunos casos como ICD.

Entonces para programar cualquier microcontrolador lo unico que hay que hacer es conectar las señales que mencione antes con los pines del PIC que tienen el mismo nombre. La base del starter kit lo unico que hace es conectar mediante pistas de un circuito impreso las lineas correspondientes a los pines. No se puede programar PICs de 18 pines porque la tarjeta no esta diseñada para el orden de pines que utilizan los PICs de 18 pines como el 16F84A, 16F628A, 16F88, etc.

Claro que si se desea programar un PIC con una cantidad de pines diferentes al del starter kit, lo unico que hay que hacer es conectar los pines correspondientes del pic al PICkit2, tomando en cuenta que hay que crear un aislamiento entre las señales de programacion y el circuito de la aplicacion que este realizando.

Aqui coloco un diagrama de como se podria conectar un 16F84A con el PICkit2, coloque un circuito basico que aisla las señales de programacion de las de la aplicacion, dependiendo de la aplicacion hay que modificarlo, se puede armar el circuito en la protoboard por ejemplo.

De igual forma se puede programar casi cualquier PIC, yo he programado el PIC16F688, 16F648A, 16F88, 16F690, 16F886, 16F887 y 18F2550. Para mas información sobre ICSP y el pickit2 dejo estos dos links:

Manual pickit2 http://ww1.microchip.com/downloads/en/DeviceDoc/51553B.pdf
Informacion sobre ICSP http://ww1.microchip.com/downloads/en/DeviceDoc/30277d.pdf


----------



## ingenio (Oct 11, 2009)

muy bues espero que lo que te diga se de gran aporte el pickit2 es tan solo el programador mediante este dispositivo usted programa el pic. El pickit2 programa varios pic en mi caso yo trabajo con el 16f877a de microchip obviamente el pickit2 tambien es de miccrochip y se puede programar en assembler ó lo puede compilar en lenguaje c pero al trabajar en c se va a consumir un poco mas de memoria. espero que sea de ayuda mi aporte.


----------



## Axmacron (Oct 11, 2009)

hola que tal , yo tengo el pickit2 ,pero no tengo la base para poner los pic , no habra alguna manera de construirla caseramente?.
tengo 3 pic pero aun no e podido programar ninguno debido a que no tengo el programador, como dije tengo el pickit2 pero no tengo la base , e sabido que existen varios programadores caseros,y quisiera construir alguno.
cual me recomendarian para empezar ? los pic que tengo son el 16f628a,16f873a,12c672. saludos..


----------



## di3gosl (Oct 11, 2009)

Es exactamente como dice morris888 lo que necesitas para programar un PIC, que aparece en la lista de los soportados por el Pickit 2 y que no puede colocarse en la base que incorpora el programador, es conectar los pines de la programación ICSP a sus respectivos en el microcontrolador. Para toda esta información microchip pone a disposición notas de aplicación llamadas "Flash Programming Specification" para todos sus microcontroladores donde te describe cuales son los pines que se utilizan para la programación así como la funcionalidad de cada uno e incluso los tiempos y señales para la programación en caso que te aventures a realizar el firmware de un programador.

En mi caso utilizo el Pickit 2 clone para programar un dsPIC y el problema que tuve fue que el Pickit 2 clone tiene un voltaje de alimentación Vdd de 5 V mientras que el dsPIC que utilizo trabaja con un voltaje de alimentación de 3.3 V por lo que se armó un circuito con un regulador de voltaje para la alimentación y con eso va perfectamente la programación del dsPIC


----------



## yecsita (Oct 11, 2009)

hola a todos !!! me gustaria saber que aplicaciones medianamente sencillas puedo aplicar con el pic 16F877

gracias a todos por su atensión!! 

P.D. tambien me gustaria saber como lo puedo usar en especial para un controlador de temperatura !!!!!!


----------



## hugoboss (Oct 11, 2009)

morris888
muchas gracias por tu explicacion, creo q con ella se me aclaro el panoramo sobre como programar el 16f84 con el pickit 2 sin necesidad de crear una placa para tal cosa.

solo tengo peqeñas dudas, si solo quiero programar el pic, es necesario q tenga las R1 y R2, o se quitan, y una vez programado el pic, lo desmonto y lo pongo en el circuito q este implementando?

otra duda, no necesito conectar ninguna cosa externa, solo conectar los pines del pickit2 al micro, ya q el mismo suministra los 5v,

solo se hacen 3 conexiones del pickit al pic? 

Vpp(la que tienen la marca con una flecha en el pickit): voltaje de programacion
ICSPDAT(PGD): Datos
ICSPCLK(PGC): Reloj

y las otras dos son v+ y tierra

*el pin 5 del pic iria a tierra y el pin 14 a v+?

gracias por ayudarme, soy nuevo con los pics, y no qiero dañar el pickit ni el pic por realizar alguna mala conexion, por eso mis preguntas un poco redundantes en lo q ya me has explicado, pero prefiero estar seguro de las cosas

gracias de antemano


una ultima duda, leia el manual y me encontreun circuitode aplicacion ICSP, q es el mismo q tu me pusiste aqui para conectar el pic, pero veoq marca una resistencia o un diodo schottky, aunque ponga el 1N4148, no hay riesgos?


----------



## pepechip (Oct 12, 2009)

Hola
Para el que no lo tenga, podeis construir un adaptador para diversos pic. Solo teneis que seguir este esquema.
Yo ya tenia 2 gramadores, pero adquiri el pickit2 para aprovechar su funcion como sonda logica. 




http://www.pablin.com.ar/electron/circuito/mc/ppp2/zocalos.gif


----------



## morris888 (Oct 12, 2009)

Si unicamente quiere programar el pic, sin que este en el circuito de aplicacion, se pueden obiar las resistencias y el circuito del MCLR, ese circuito lo que hace es aislar los trece voltios de programacion (Vpp) de la fuente de alimentacion cuando se conecta MCLR a traves de una resistencia a Vcc. Con respecto al diodo shokkcty yo siempre he colocado un 1n4148 y hasta el momento no he dañado ningun pic, tambien en lugar de un diodo puede colocar una resistencia de 1k.

Con respecto a VDD y GND se conectan directamente al +V y GND del pic, sin necesidad de nada externo


----------



## hugoboss (Oct 12, 2009)

muchas gracias morris888, he aprendido mucho con este tema q abriste hace algun tiempo, entonces, si solo qiero programar el pic en el proto sin el crcuito de aplicacion, no es necesario nada de reistencias, solo conectar directamente del pickit a los pines del pic, tal como muestra pepechip en su esquema q acaba de postear?

y se programaria de forma normal con el mplab o si lo prefiero con el pickit 2.

gracias, en este instante me voy por el pic 16F84 para empezar a conocer el mundo de los pics


----------



## camilo9793 (Dic 1, 2009)

Hola a todos, programo siempre los pics con el famoso PICKIT2 sin problema para los de 40 pines... mediante una pcb, ahora lo quiero hacer directamente a los pines de un pic16f628a, lo conecto según la guía del pickit2, los 5 cables que dicen, pero al conectarlo al pc, me sale un error que dice algo referente al Voltaje vpp del pickit2, no se si haya necesidad de polarizar al micro durante la programación'??? en el pin de vdd.

también quisiera saber como selecciono que trabaje con oscilador interno de 4Mhz, lo hago mediante el código asm que manejo... o en las líneas que habitualmente coloco para poderlo programar con pickit2 q son estas..
 __CONFIG _CP_OFF & _WDT_OFF & _PWRTE_OFF & _CONFIG INTRC_OSC & _BODEN_OFF & _LVP_OFF.

Muchas gracias.


----------



## felipeyeah (Abr 18, 2011)

disculpen, el pickit 2 también puede programar memorias eeprom, alguien sabe que memorias son? .. ya mire la lista de alla arriva pero solo menciona pics.. 

saludos !!

******

no, no, no.. ya lei bien no me había dado cuenta-. hehe.. XD 

11 Series Serial EEPROM Devices

11LC/AA010
11LC/AA020
11LC/AA040
11LC/AA080
11LC/AA160
24 Series Serial EEPROM Devices

24LC/AA/C00
24LC/AA01B, 02B, 04B, 08B
24LC/AA16B, 32A
24LC/AA/FC64, 128, 256, 512
24LC/AA/FC1025
25 Series Serial EEPROM Devices

25LC/AA010A, 020A, 040A
25LC/AA080A, 080B, 160A, 160B
25LC/AA320A, 640A
25LC/AA128, 256, 512, 1024
93 Series Serial EEPROM Devices

25LC/AA/C46A, 46B, 46C
25LC/AA/C56A, 56B, 56C
25LC/AA/C66A, 66B, 66C
25LC/AA/C47A, 76B, 76C
25LC/AA/C48A, 86B, 86C


----------



## juliocesar71 (Nov 28, 2016)

Buen día
He armado un quemador para PICs usb y utilizo el PICKIT2 para grabar en un 16f84a, lee y borra en el PIC pero a la hora de grabar no lo hace, no se que sucede.

Gracias


----------



## parotin (Feb 15, 2018)

kosovo37 dijo:


> El Pickit2 soporta una gama grande de Pics, incluyendo dspic, y tiene la particularidad de programar el pic ya montado en el circuito, y resulta muy facil utilizarlo, si necesitan los diagramas de conexión de cada pic con el PicKit2 sin poseer ningun zocalo me avisan, yo los poseo creo que todos...
> 
> 
> Saludosss...



Hola!

Por si alguien está leyendo esto para decidirse o no a comprar un pickit2, comentaré que yo me compré uno y conseguí hacer un circuito que me fue muy práctico para controlar resistencias para calentar en función de una entrada analógica. Para mí fue genial ver funcionar el invento! así que lo recomiendo!
Después de un montón de tiempo he necesitado reproducir lo que hice aquella vez, y resulta que no consigo programar el 10f222. No se cómo lo conecté! y no me lo apunté!
Estoy intentando cargar el mismo archivo .hex y todo igual como lo hice pero me salen errores que me huelo que son causados por la manera en que lo he conectado. El pickit2 funciona bien por que sí puedo cargar programas ejemplo que venían con el kit y la plaquita entrenadora (la cual no es compatible con el 10f222)

Tendrías ese diagrama? o alguna idea? me da error de Vdd, y también de oscalc... 

Un saludo! y gracias de antemano!

Adjunto diagrama que estoy intentando usar.


----------



## pandacba (Feb 15, 2018)

El que programaste originalmente era un 10F222?


----------



## parotin (Feb 15, 2018)

Sí, era el mismo.

Acabo de ver el diagrama que posteó pepechip (directamente al programador sin nada)  y voy a probarlo ahora mismo a ver que hace...



pandacba dijo:


> El que programaste originalmente era un 10F222?



Muchas gracias por tu interés. Ahora te cuento

Bueno, se ha solucionado lo del Vdd, pero sigue dando el error del osccal. 
Viendo el archivo PIC10F222 he visto que declara mcu osccal= 0X005. Si  lo pongo manualmente en el pickit2 programer parece que graba el valor  correctamente pero a partir de ahí ya ni reconoce el Pic cuando le das a  verify..



Perdón, quería decir el archivo PIC10F222_registers.h


----------



## D@rkbytes (Feb 15, 2018)

parotin dijo:


> Bueno, se ha solucionado lo del Vdd, pero sigue dando el error del osccal.
> Viendo el archivo PIC10F222 he visto que declara mcu osccal= 0X005. Si  lo pongo manualmente en el pickit2 programer parece que graba el valor  correctamente pero a partir de ahí ya ni reconoce el Pic cuando le das a  verify..


El número 0x005 corresponde al registro asignado para OSCCAL.
Ese no es el valor que se asigna de fábrica para la calibración.

En este tipo de PIC es muy importante leer el valor de OSCCAL antes de grabarlo.
Ya que la borrar el PIC también se borrará el valor de calibración.


			
				La hoja de datos del PIC10F222 dijo:
			
		

>


Este valor de calibración se encuentra en la última dirección de la memoria flash.

Para el PIC10F222 se encuentra en 0x1FF​ ​ Existen algunas formas de recuperar el valor de calibración para OSCCAL.
Yo uso una muy sencilla, pero bastante efectiva.
Se trata de ir asignando un valor para OSCCAL hasta que se consiga una lectura correcta.
Para esto se graba un programa en el PIC y se procede a leer lo que arroja por RS-232.



Aquí se puede ver que hay dos lecturas correctas, así que el valor para OSCCAL puede ser 0x30 o 0x40.
Como previamente leí el valor, sé que el valor original de fábrica es: 0x30

Para asignarlo nuevamente se debe escribir 0CXX en la dirección 0x1FF
Donde 0C es un MOVLW y XX será el valor para OSCCAL. (En este caso: 0x1FF = 0C30)

Adjunto el programa en C (PCWHD) y el ejecutable (.hex) para grabar el PIC.
Como la lectura es por RS-232 se puede usar un adaptador USB.
Si la PC cuenta con puerto serie, entonces se puede usar un MAX-232 o transistores para adaptar los niveles a TTL.

En el programa adjunto también explico la forma de asignar el valor de OSCCAL con el PICkit.
Tal procedimiento será únicamente para el PIC con el OSCCAL perdido. (No servirá el mismo valor para otro PIC, porque no siempre es igual)
Yo uso el PICkit 3 y no me permite la edición del búffer.

PD:
Me parece que el PICkit 2 tiene una herramienta para recuperar el valor de OSCCAL.​


----------



## TRILO-BYTE (Feb 16, 2018)

D@rkbytes dijo:


> El número 0x005 corresponde al registro asignado para OSCCAL.
> Ese no es el valor que se asigna de fábrica para la calibración.
> 
> En este tipo de PIC es muy importante leer el valor de OSCCAL antes de grabarlo.
> ...


Una duda ¿Es importante el valor oscal?

Yo reparo módulos de seguros y vidrios eléctricos y traen un pic12f629 aveces conecto el pickit y se borra el valor osscal y lo pongo manual y al azar generalmente es un valor 3xxx y yo pongo 3444por flojera , reprogramo y funciona perfecto 

¿Es necesario saber el valor osccal o no lo es?


----------



## D@rkbytes (Feb 16, 2018)

TRILO-BYTE dijo:


> Una duda ¿Es importante el valor osccal?
> 
> Yo reparo módulos de seguros y vidrios eléctricos y traen un pic12f629 a veces conecto el pickit y se borra el valor osccal y lo pongo manual y al azar, generalmente es un valor 3xxx y yo pongo 3444por flojera , reprogramo y funciona perfecto
> 
> ¿Es necesario saber el valor osccal o no lo es?


Sí es bastante importante cuando se usa el oscilador interno únicamente.
Sobre ese valor se toma la referencia para que oscile a la frecuencia establecida por software.

Como podrás notar en la imagen de recepción de datos, cuando el valor de OSCCAL no es correcto, los datos mostrados no son recibidos correctamente porque el oscilador está funcionando a una frecuencia que queda muy fuera de la definida en el programa.

Ahora veamos el problema de otra forma...
Si se requiere generar cierta frecuencia o usar PWM y el valor de OSCCAL no es correcto, entonces podrás notar que la señal de salida no corresponderá con la esperada.
Tendrá otra frecuencia y tal vez hasta otra forma de onda.

Sobre los cálculos con fórmulas internas no estoy seguro si el microcontrolador los pueda procesar correctamente, tal vez sí, pero eso se puede comprobar guardando el resultado en la EEPROM y después leerlo con el programador.

En caso de usar rutinas con retardos, también se verán afectadas.
Pero si no es importante que valores sean exactos, entonces físicamente no se notará que un dispositivo se active unos milisegundos antes o después.
Por ejemplo: hago destellar un LED cada 500 mS y seguramente estará destallando cada 600 mS.
Nada importante cuando el tiempo no es primordial.


----------



## avefenix586 (Feb 16, 2018)

Hola , hay alguna lista a la mano de que Pics programa el pickit2? quisiera saber si  programa sin problema los dsPIC30F4011 y dsPIC30F4013 o se nesesita un pickit3 para ello??


----------



## parotin (Feb 16, 2018)

Muchas gracias por la ayuda.

ok, entonces entiendo que el valor de osccal está escrito en la dirección que indica el archivo de definiciones, y es allí donde tengo que ir a buscar para luego asignarlo manualmente en el software de programación. Hasta aquí ok, pero una cosilla que no entinedo, si nunca has cambiado el valor mediante una asignación en el programa que le cargas al pic, entiendo que todos los micros nuevos del mismo modelo llevan el mismo valor y este será invariable hasta que tu lo cambies. Entonces, si yo no lo he cambiado no puede ser que no sea el que lleva de fábrica!
Además, precisamente lo que no puedo hacer es cargar ningún programa! tengo los micros nuevos de trinca, los reconoce con la verificación, pero cuando intento quemarlos con el archivo .h es cuando me da ese error de osccal.
Un detalle, como tengo varios micros programados y funcionando perfectamente (los gravé hace varios años y estaban en un cajón, pero funcionan y ejecutan el programa), quizá podria leerlo en uno de esos, no? 

Bueno, voy a ver si puedo procesar toda la información que me pones, D@rkbytes, a ver si consigo algo. No estoy muy instruido así que no tengo muchas esperanzas de solucionar mi problema fácilmente y a corto plazo. Además no tengo ningún adaptador usb - rs232, y si consigo uno tendré que romperme la cabeza para ver si consigo hacer lo que comentas. 

Independientente de todo, no entiendo que no pueda cargar exactamente el mismo archivo .h en el mismo modelo de pic y con el mismo programador. Lo único que he cambiado es el pc, que en aquel entonces tenía uno con windows 7 y ahora estoy usando uno con más velocidad y memoria, y windows 10.

Otro detalle, he hecho la prueba del troubleshooting test (o algo así) y da todo valores correctos tanto en el vdd como en la frecuencia de las líneas de datos.

Ya contaré si consigo avanzar durante el fin de semana, por si a alguien le pica la curiosidad...

Muchas gracias de nuevo.



avefenix586 dijo:


> Hola , hay alguna lista a la mano de que Pics programa el pickit2? quisiera saber si  programa sin problema los dsPIC30F4011 y dsPIC30F4013 o se nesesita un pickit3 para ello??



Alguien puso más arriba la lista o un link donde está esa lista.

Un saludo


----------



## D@rkbytes (Feb 16, 2018)

avefenix586 dijo:


> Hola. ¿Hay alguna lista a la mano de qué PICs  programa el pickit2?


Mira por aquí: Readme for PICkit 2 V2.61

Viendo que algunos de los enlaces con esa información ya no son válidos, adjunto el archivo.


parotin dijo:


> Ok. Entonces entiendo que el valor de OSCCAL está escrito en la dirección que indica el archivo donde se declara, lo de 005.


Se puede decir que sí, pero debe leerse el valor escrito en la dirección 0x1FF y asignarse a OSCCAL.
En lenguaje ensamblador sería así:
call 0x1FF
movwf OSCCAL

Como la dirección 0x1FF contiene movlw 0xXX, W contendrá el valor de OSCCAL. (0xXX)
Posteriormente se asigna con movwf OSCCAL.
Cada lenguaje de programación tiene su sintaxis para realizar lo anterior, o en C se incorpora con #asm.
Me parece que algunos IDE de alto nivel lo hacen automáticamente, y si no, cuentan con instrucciones para tal efecto.
Por ejemplo, el Basic de Proton IDE, cuenta con una instrucción que se llama: Set_OSCCAL


parotin dijo:


> Pero una cosilla que no entiendo, si no cambias el valor mediante una declaración en el programa


Yo tampoco entendí qué trataste de decir. 

Después de tu edición ya comprendí.


parotin dijo:


> pero una cosilla que no entiendo, si nunca  has cambiado el valor mediante una asignación en el programa que le  cargas al PIC, entiendo que todos los micros nuevos del mismo modelo  llevan el mismo valor y este será invariable hasta que tú lo cambies.


No, cada PIC tiene un valor de calibración diferente para OSCCAL y es asignado desde la fábrica.
Obviamente algunos PICs tienen el mismo valor por coincidencia. (Lo he comprobado)
Pero tomemos como referencia básica que el valor de OSCCAL no siempre debe ser el mismo para cualquier PIC de la misma familia.


parotin dijo:


> Entonces, si yo no lo he cambiado, no puede ser que no sea el que lleva  de fábrica.


Como mencioné anteriormente, el valor está asignado en la dirección 0x1FF y al borrar el PIC también se borrará ese valor.
Por eso siempre debe de leerse antes de borrarlo o programarlo.
Ya que también se puede sobreescribir si el programa llegara a ocupar todo la memoria Flash.

Ahora, otra cosa importante, el registro OSCCAL es de lectura y escritura, o sea que podemos modificar por software el valor de OSCCAL, pero eso no sobreescribe el valor asignado en la dirección 0x1FF, a menos de que esa dirección sea escrita intencionalmente.


parotin dijo:


> Además, precisamente lo que no puedo hacer es cargar ningún programa.
> Tengo los micros nuevos de trinca, los reconoce con la verificación,  pero cuando intento grabarlos con el archivo .h es cuando me da ese  error de OSCCAL.
> Un detalle, como tengo varios micros programados y funcionando  perfectamente (los grabé hace varios años y estaban en un cajón, pero  funcionan y ejecutan el programa)
> Quizá podría leerlo en uno de esos. ¿No?


Por supuesto que los podrás leer, pero mientras no sepas qué valor de fábrica se asignó para OSCCAL en el PIC que no puedes grabar, no le debes poner cualquier otro valor.


parotin dijo:


> Independientemente de todo, no entiendo que no pueda cargar exactamente el  mismo archivo .h en el mismo modelo de PIC y con el mismo programador.
> Lo único que he cambiado es el PC, que en aquel entonces tenía uno con  windows 7 y ahora estoy usando uno con más velocidad y memoria, y  windows 10.


En Windows 10 hay que proporcionarle derechos de administrador al IDE para que pueda modificar archivos.
Por ejemplo, cuando tenía Windows 7 no necesitaba darle derechos de administrador.
Ahora que uso Windows 10 x64, tengo que proporcionarle esos derechos para que el IDE pueda realizar cambios a los archivos instalados. (Los .h proporcionados por el entorno)

Muy rara vez llego a modificar las librerías del entorno, ya que la mayoría tiene parámetros que permiten modificarse externamente.


----------



## parotin (Mar 4, 2018)

Hola. Yo solucioné mis problemas de sincronización (aunque no había tenido tiempo de postearlo hasta ahora) haciendo una combinación de dos esquemas de conexión (adjunto los dos y la protoboard donde lo hice). 
Con este esquema puedo gravar los pic10f222 sin tener que entrar en cambios en el osccal dichoso. Los chips que quemo ejecutan bien su programa, y aunque los delays y otras funciones supongo que no estan ajustadas, la aplicación no necesita precisión milimétrica en cuanto a los tiempos, o sea que salgo del paso sin estudiar


----------

