Grabar pic12f629 con stager vs4000

Buenas noches,pues como el titulo indica me gustaría grabar un pic 12f629 con este programador universal pero la verdad sea dicha no estoy muy puesto en estos temas por lo que necesito vuestra ayuda.
He estado leyendo por la net que estas pic necesitan una calibración en el oscilador interno para ser grabadas correctamente pero no se muy bien donde colocar dicha información.
al leer el pic,la ultima posición de memoria leida antes de comenzar con FF en el resto de direcciones es 34 34.Los bancos de direcciones que me da el programa es FF 3F , antes como digo de que comiencen las FF y la ultima linea leida en el programa termina con la dirección 09 00.

Alguien ha trabajado con este programador y estas pic o similares? Podrían explicarme un poco que datos y donde tengo que introducirlos para el correcto funcionamiento del pic ?

Gracias por adelantado .
 
Nunca trabaje con ese programador, pero lo que si te puedo decir sobre ese PIC es que el oscilador viene calibrado de fabrica, por lo que no tienes que grabarle ningún valor tu, simplemente no tienes que modificar ese valor ya que sino lo estarías corriendo del valor correcto.

 
Si pero el valor esta grabado en Flash, si el programador no lo lee lo puede sobre escribir y entonces si debe declararlo, cuando se usan las herramientas de Microchip no es problema por que se identifica el OSCCAL y se evita sobrescribirlo, pero con otros debes ser cuidadoso con eso.

Lo que debes hacer es sobrescribir sin borrar la memoria, no conozco el software o las opciones que tienes para eso.

Lo otro que podrías hacer seria cargar el valor directamente si no sabes como mantener esta parte de la memoria, esa ultima instrucción es un RETWL el segundo byte corresponde al valor del OSCCQL solo esa parte interesa, la puedes cargar directamente al registro OSCCAL, esta no es tan recomendable por que significaría reescribir el código y volver a compilar cada ves que cambies el chip.
 
Buenas noches de nuevo,antes de nada agradeceros vuestro interes pero aun me asaltan las dudas asi que me he decidido sacar varios pantallazos del programa y de sus opciones para ver si con ello consigo grabar las pic con vuestra ayuda. He grabado una sin tener en cuenta lo del registro del OSCCAL y efectivamente no funciona.

En el primer archivo se muestra el programa y la lectura del pic con el ultimo registro para la calibracion del oscilador ( CIRCULO ROJO ); apartir de ahi las demas direcciones aparecen con FF.

En el segundo se muestran las opciones para la carga del archivo seleccionaso.

En el tercero se muestra la ultima direccion y el ultimo bloque grabado valido del programa (RECUADRO AZUL).

Y por ultimo se muestran las distintas opciones antes de comenzar la grabacion de la memoria (RECUADRO VERDE).

Es en este ultimo recuadro marcado como verde donde tendria que poner los datos de la calibracion del oscilador ( CIRCULO ROJO) ?

Gracias otra vez por vuestra ayuda.
 

Adjuntos

  • Sin título2.jpg
    Sin título2.jpg
    96.4 KB · Visitas: 12
  • Sin título3.jpg
    Sin título3.jpg
    69.3 KB · Visitas: 10
  • Sin título4.jpg
    Sin título4.jpg
    96.7 KB · Visitas: 8
  • Sin título5.jpg
    Sin título5.jpg
    82.5 KB · Visitas: 9
Como te mencione el valor corresponde a una instrucción RETWL, cuando tu programa solicita el valor OSCCAL usa la instrucción CALL, si esta no retorna es que el programa falla, por eso la ultima siempre tiene valor 34xx (34 es la parte del opcode correspondiente a RETWL y xx el valor que retorna).

En mi caso un PIC12F675 tiene 3444, la dirección es 3FF, aquí tienes un problema de representación, por que cada palabra es de 12 bits, por lo que el valor máximo es 3FFF y se representa en 2 bytes, tu modo de direccionamiento parece que solo cuenta 8 bits, en ese caso el la dirección estaría en 7FE. pero 4434 no es un código válido, como mencione el máximo es 3FFF y no corresponde al 34xx para producir ese RETWL.

Ok, por lo visto tu programa los representa en little-endian en lugar de big-endian como lo hace el PicKit2, no se si el valor entonces correspondería a que colocaras el valor del OSCAL ahí directamente o si colocas la dirección que podría ser 7FE usando su representación de 1 byte.
 
Última edición:
Pues muchisimas gracias,trasteare el programa a ver si puedo pasarlo a big-endian y probare de las dos maneras a ver si resulta.

Muchas gracias nuevamente,ya os ire informando a ver que tal resulta



Nop, no ha nada donde se pueda configurar el modo en como lee la informacion del pic. Tendre que hacer pruebas.
 
Última edición:
Atrás
Arriba