Autor Tema: Invalid OSCCAL value detected  (Leído 1110 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Conectado jorge1949

  • PIC10
  • *
  • Mensajes: 14
Invalid OSCCAL value detected
« en: 31 de Enero de 2023, 18:44:45 »
Estimados amigos:

Estoy programando un PIC 12F508 y después de varios intentos he logrado que se compile correctamente, pero a la hora de grabarlo con el PICKIT3 me da un WARNING diciendo "Invalid OSCCAL value detected", llegado a este punto le doy aceptar y el PICKIT 3 inicia la grabación, pero se detiene indicando un error "Programming failed at Program Memory Address 0x000000".

Ante esto me gustaría saber si alguien se ha topado con este problema y si tienen alguna sugerencia para resolverlo, muy agradecido por su ayuda.

Atentamente Jorge

Desconectado DominusDRR

  • PIC24H
  • ******
  • Mensajes: 1937
    • Sicoy
Re:Invalid OSCCAL value detected
« Respuesta #1 en: 31 de Enero de 2023, 18:52:36 »
Estimados amigos:

Estoy programando un PIC 12F508 y después de varios intentos he logrado que se compile correctamente, pero a la hora de grabarlo con el PICKIT3 me da un WARNING diciendo "Invalid OSCCAL value detected", llegado a este punto le doy aceptar y el PICKIT 3 inicia la grabación, pero se detiene indicando un error "Programming failed at Program Memory Address 0x000000".

Ante esto me gustaría saber si alguien se ha topado con este problema y si tienen alguna sugerencia para resolverlo, muy agradecido por su ayuda.

Atentamente Jorge

Acá es posible que expliquen tu problema.

https://www.microchip.com/forums/m885618.aspx

https://forum.allaboutcircuits.com/threads/invalid-osccal-value-detected-pickit3-pic10f200.114709/

Puedes usar google traductor o el navegador de google para traducirlo si no eres bueno con el Inglés.

Y acá en el mismo foro:

http://www.todopic.com.ar/foros/index.php?topic=50010.0
Tengo una idea algo difusa sobre MPLAB Harmony, XC32 con PIC32

Conectado jorge1949

  • PIC10
  • *
  • Mensajes: 14
Re:Invalid OSCCAL value detected
« Respuesta #2 en: 31 de Enero de 2023, 19:29:08 »
Gracias DominusDRR

Estaré buscando la solución en los enlaces que me sugieres, si tienes algo as concreto por favor indícame.

Atentamente

Jorge

Desconectado tsu_electronica

  • PIC18
  • ****
  • Mensajes: 274
Re:Invalid OSCCAL value detected
« Respuesta #3 en: 31 de Enero de 2023, 23:25:23 »
tal vez fue el detalle que alguna vez pasamos todos, esos micros a la hora de borrar se borra también el valor de calibración interna del oscilador si en algún momento lo borraste antes de leerlo pues ya no se pudo hacer la copia para guardar el valor de calibración lo bueno es que lo podrás seguir usando con un cristal externo.

Conectado jorge1949

  • PIC10
  • *
  • Mensajes: 14
Re:Invalid OSCCAL value detected
« Respuesta #4 en: 01 de Febrero de 2023, 00:30:22 »
Gracias tsu_electronica

Muy amable por tu colaboración, pero según entiendo el no tener la calibración no inhabilita el oscilador sino pierde la precisión que tenia de fábrica, para esa calibración está el registro OSCCAL que tiene 7 bits, con esos 7 bits el PIC ajusta la frecuencia del oscilador hacia arriba o abajo del valor central del PIC así se podría agregar o restar +/- 64 a ese valor central que tiene el PIC. en mi caso yo no necesito mucha precisión así que no me preocupa si el valor de calibración lo pongo en 0000000, pero hice la prueba sin lograr el resultado esperado, dando la misma falla al pretender grabar el programa.

si averiguas alguna solución te agradeceré compartirla.

Atentamente

Jorge

Desconectado scrwld

  • PIC12
  • **
  • Mensajes: 56

Desconectado tsu_electronica

  • PIC18
  • ****
  • Mensajes: 274
Re:Invalid OSCCAL value detected
« Respuesta #6 en: 01 de Febrero de 2023, 03:08:56 »
Jorge 1949, es verdad aunque tuvieras en ceros los valores de calibración no importarían para grabar el pic ya en la realidad no aria nada por que no tendría un tiempo o tal ves si pero haría todo mal pero si se grabaría, entonces el detalle no es el osccal, puede ser el programa con que estas grabando o hasta el mismo pickit3 como de ese salieron muchos clones chinos y al día de hoy pues ya no funcionan amenos que lo hagas funcionar con el programa modificado o en el peor de los casos pueda ser el pic, a ver si nos puedes compartir imágenes o hasta videos para ver como lo estas haciendo, ver los mensajes que salen para que no estemos solo especulando y ya podamos ayudar mejor.

Conectado jorge1949

  • PIC10
  • *
  • Mensajes: 14
Re:Invalid OSCCAL value detected
« Respuesta #7 en: 01 de Febrero de 2023, 12:34:15 »
Gracias SCRWLD, voy a revisar lo que me enviaste


Conectado jorge1949

  • PIC10
  • *
  • Mensajes: 14
Re:Invalid OSCCAL value detected
« Respuesta #8 en: 01 de Febrero de 2023, 12:50:12 »
Estimado TSU_ELECTRONICA

He adquirido dos nuevos PIC 12F508 y los he probado obteniendo el mismo resultado, parece evidente que hay algo extraño con el código, que, a pesar de ser compilado correctamente, sigue presentando el mismo problema, lo estoy enviando para ver si se puede encontrar la falla, muy agradecido por tu apoyo.
« Última modificación: 01 de Febrero de 2023, 12:55:05 por jorge1949 »

Desconectado Eduardo2

  • PIC24F
  • *****
  • Mensajes: 965
Re:Invalid OSCCAL value detected
« Respuesta #9 en: 01 de Febrero de 2023, 13:30:49 »
INTRC_IO   en la versión que tengo no existe para el 12F508

output_low(0)  escriibe en cualquier parte, ahí estaría reseteando el bit0 en la dirección 0. 
La sintaxis es output_low(PIN_B0) 

Probá esto:

Código: [Seleccionar]
#include <12f508.h>
#use delay (clock=4M)
#fuses NOWDT, NOMCLR, NOPROTECT, INTRC

int sh;
int sl;
int req;
int dis;

void main()
{
    output_low(PIN_B0);
    output_low(PIN_B1);
    output_low(PIN_B4);
    output_low(PIN_B5);
    while(true)
    {
        output_low(PIN_B0);
        output_low(PIN_B5);
        output_high(PIN_B4);
        delay_ms(1000);
        sh=!input(PIN_B2);
        sl=!input(PIN_B3);
        if (sh==1 && sl==1) {dis=1;}
        if (sh==0 && sl==0) {dis=0;}
        output_low(PIN_B4);
        output_high(PIN_B5);
        delay_ms(1000);
        sh=!input(PIN_B2);
        sl=!input(PIN_B3);
        if (sh==1 && sl==1) {req=0;}
        if (sh==0 && sl==0) {req=1;}
        if (req==1 && dis==1)  {output_high(PIN_B1);}
        if (req==0 || dis==0 ) {output_low (PIN_B1);}
        output_high(PIN_B0);
        output_low(PIN_B4);
        output_low(PIN_B5);
        delay_ms(1000);
    }
}
« Última modificación: 01 de Febrero de 2023, 13:35:42 por Eduardo2 »

Conectado jorge1949

  • PIC10
  • *
  • Mensajes: 14
Re:Invalid OSCCAL value detected
« Respuesta #10 en: 01 de Febrero de 2023, 20:07:13 »
Estimado Eduardo2:

Muchas gracias por tu apoyo, en relación al asunto del INTRC_IO en efecto no está en las opciones de este PIC pero hice la prueba y tampoco funcionó y olvidé cambiarlo, los otros cambios que sugeriste se hicieron, pero el asunto sigue igual, he cambiado el PIC por un 16F628A y funciona perfectamente así que por ahora no usaré el 508 que es más pequeño, pero lo asumiré, más adelante intentaré nuevamente ver si resuelvo el problema, puede ser que mi PICKIT tenga algún problema no se. En todo caso agradezco tu apoyo y tu tiempo. Hace años viví en Buenos Aires, linda ciudad y muy buenos amigos y recuerdos.

Un gran abrazo
Jorge

Desconectado johenrod

  • PIC18
  • ****
  • Mensajes: 265
Re:Invalid OSCCAL value detected
« Respuesta #11 en: 09 de Febrero de 2023, 12:38:19 »
Cordial saludo, no se si sea un poco tarde para responder.
a mi me pasa mucho con este 12f508, lo que hago es utilizar el pickit2 este tiene una funcion auto regenerate, y por lo general ajusta el oscal del pic.
si no da a la primera intentalo de nuevo.
(tambien me pasa si los pines del micro o de la base del socalo estan sucias o sulfatadas).
sirve tambien para otros pic chicos, suerte..
« Última modificación: 09 de Febrero de 2023, 12:46:57 por johenrod »
Si algo parece complicado... es por que esta mal explicado.