TODOPIC
Microcontroladores PIC => Programadores => Mensaje iniciado por: Silicon en 02 de Mayo de 2006, 18:45:32
-
Os cuento mi problema, a ver si me podeis echar una mano.
- Tengo dos TE20. Ambos probados con un PIC16F84A y que funcionan correctamente.
- Como programa he uso el WINPIC800 v3.58
- Dos PIC12F629 (los cuales ya he estado cacharreando con el ICPROG)
El problema reside en que un PIC12F629 no se puede autodetectar (siempre da desconocido). El otro PIC lo autodetecta perfectamente pero cuando le pides que los borre responde "ERROR -> No se pudo restaurar el valor de OSCCAL"
Mirando por internet parece que hay un problema cuando se programa con reloj interno y se quita MASTER CLEAR. Esa es precisamente mi situacion, ya que deseo usar los 6 puertos disponibles. He visto un esquema para modificar el JDM, pero comparandolo con el TE20 resulta que es muy parecido pero no igual. Os pongo las imagenes:
(http://feng3.cool.ne.jp/pgm6/jdm_vdd.gif)
(http://users.tpg.com.au/btkelly/jdm-b/jdm_mod.gif)
Aun asi creo que la modificacion sera valida. ¿que opinais?
Mis dudas:
- ¿Con el TE20 modificado se podria usar el WINPIC800?
- Para usar la patilla MASTER CLEAR como puerto, ¿en el WINPIC800 debo poner MCLRE marcado o desmarcado?
- ¿Que es el BANDGAP?
Y abusando de vosotros:
En el caso de que el TE20 modificado fuera incompatible con el WINPIC800 y la serie 12F (Solo lo necesito para la serie 12F), habia pensado en hacerme este programador:
http://feng3.cool.ne.jp/en/rcd.html (http://feng3.cool.ne.jp/en/rcd.html)
¿Funciona con el WINPIC800?
¿Alguno mas sencillo y/o fiable?
-
Ese modelo que indicas es puñetero , lo ideal es usar un programador que tenga control sobre vdd del pic a programar .
Los de puerto serial como el te20 no lo tienen , armate con uno de puerto paralelo como minimo .
Dejate de programadores mancos , que por 4 duros mas te olvidaras de esos problemas y en los dias que corren cada vez los PICS son mas exigentes en su programación .
el GTP de marcelo puede servir .
-
Parece que he resuelto el problema. Voy a contar la solucion por si a alguien puede ayudarle.
Parece ser que el problema esta en los chips los habia programado con MCLR = Interno y RCLOCK = RC inteno
Asi al pincharlo al programador, este les da alimentacion y el programa que tienen dentro empieza a funcionar. Segun microchip esto no deberia tener importancia, pues al poner el voltaje de programacion, tendrian que abortar el programa y meterse enmodo programacion.
El problema reside en que una cuantas patillas estaban configuradas como salidas y el programa las ponia a cero. Esto hace que las patillas intenten permaneces a voltaje cero, llegando a tragarse hasta 250 mAmp, segun microchip.
Y claro, esta intensidad es muy cercana a lo que el puerto serie es capaz de dar, con lo que el voltaje de alimentacion caia cerca de cero. En la practica es como si hubieramos cortocircuitado GND y VCC mediante el PIC.
La solucion consistio en poner un zocalo entre el chip y el programador. A este zocalo le levante las patillas 2, 3 y 5, que en principio no se necesitan para programar. El chip se borro perfectamente.
Por tanto el problema queda mas acotado. En resumen, tendras problemas si se dan estas condiciones:
- MCLR configurado como GP3. Esto impide al programador resetear el PIC.
- INTRC. Esto hace que el PIC empieze a ejecutar el programa en cuanto recibe alimentacion.
- GPO y GP1 programadas como salidas y puestas a nivel bajo. Esto hace que el chip "chupe" 200 mAmp por patilla.
- Un programador alimentado solo con el puerto serie, que normalmente es capaz de dar poco mas de 250 mAmp.
- Que el programador active alimentacion ANTES de programacion.
Si no se dan todas estas circustancian podras reprogramar el chip simplemente desconectando las patillas 2,3 y 5
Espero que os ayude.
-
Aqui te presento una sencilla solución
Puedes hacer el programador ? que se encuentra en este foro. Me ha trabajado de maravilla apesar de ser del tipo JDM , trabaja adecuadamente con el IC-PROG y el WINPIC800, lo detecta sin problema alguno.
Y lo que mencionas del error , es debido a que borraste el valor de calibracion inicial , no te preocupes , no pasa nada , solo en tu codigo agrega las istrucciones necesarias para calibrarlo.Y cuando te aparezca en el WINPIC desea remplazar valor de calibracion por 3FFF selecciona que no. :c)
Espero te sea de gran ayuda!!:D
-
Hola, es que leyendo encuentro que no importa que se nos pierda el codigo de calibracion interna qie viene de fabrica los PICS de 8 y 14 pines. como se hace para calibrarlos nuevamente en casa?? :(
-
:shock: PUes bien , aqui escribire el código en assembler para la calibracion del oscilador.
; these first 4 instructions are not required if the internal oscillator is not used
main ;inicio de programa
;NOtA !!!! """#### _____ PONER NO REMPLAZAR AL MOMENTO DE PROGRAMAR EN EL IC-PROG O WINPIC####"
MOVLW 0XFC ;cargamos en el registro W el valor maximo de calibracion (6bits)MSB
;call 0x3FF ; ////**SIN CALIBRAR CON 3FFF**/////este valor es para oscilador RC
;se omite ese CALL
bsf STATUS,RP0 ; nos ubicamos en el banco 1 , ya que en el se encuentra el OSCCAL
movwf OSCCAL ; movemos el valor de W ---> OSSCAL
bcf STATUS,RP0 ; regrasamos al banco 0
; remaining code goes here
; y pues el código de tu programa va aqui
END :-)
-
Gracias, ta bien, probare, como me va.
encontre que por algun lado que tambien se puede hacer en C de esta forma.
void main(void)
{
OSCCON = 0x60; // Sintoniza oscilador interno 4MHz //
OSCTUNE = 0; //
.
.
.
.
//continua programa
}
Saludos desde colombia
-
Ola a todos tengo un TE20X desconectando las patillas 2,3 y 5 del pic12f629 no da nada?? :( :(
-
Hola :
Fijate en esto
http://www.todopic.com.ar/foros/index.php?topic=4530.255
mis amigos y yo tuvimos un problema similar, pero publique como lo solucionamos...espero que te sirva
Saludos
Desde Cordoba Argentina
-
Ola e gracias en el 12f629 donde esta RB4??? 1 I I 8
2 I I 7
3 I I 6
4 I I 5
-
Hola !!!
Este pic no contiene puerto B.
En estos Pics los llaman GPIO
Aqui te dejo un enlace...12f629 (http://ww1.microchip.com/downloads/en/DeviceDoc/41190c.pdf)
-
Hola !!!
Este pic no contiene puerto B.
En estos Pics los llaman GPIO
Aqui te dejo un enlace...12f629 (http://ww1.microchip.com/downloads/en/DeviceDoc/41190c.pdf)
Ola e gracias pero no lo vejo en el enlace lo GPIO?????? perdona es mi primera :(
-
Hola Fijate que sugiere la pagina que creó la grabadora.
www.jdm.homepage.dk/newpic.htm.
Espero que te sirva
-
Donde esta???? Perdonai :( :( :(