Configurar el IC-pro para el 12f629

hola

al realizar la programacion del 12f629 tengo todas estas obciones:

Código:
OSCILADOR:
LP.............
XT.............
HS.............
EC GP4.........
intOSC GP4.....
intOSC CLKOUT..
RC GP4.........
RC CLKOUT......

BANDGAP:
Bandgap 00b....
Bandgap 01b....
Bandgap 10b....
Bandgap 11b....
Default........

BITS CONFIGURACION:
WDT......perro guardian........................
PWRT.....power up timer........................
MCLR.....Master clear..........................
BODEN....brown out reset.......................
CP.......codigo de proteccion .................   
CPD......codigo de proteccion area de datos....

Hay alguna obciones que son identicas a las que utilizo para el 16F84, pero las otras desconozco cual es su mision.

Del 16f629 he encontrado muy poca información en castellano, si aguien dispone información del mismo me vendria muy bien.
 
MaMu dijo:

ya estube con anterioridad viendo ese foro, y no viene explicado el uso de todas las posibles combinaciones.

He conseguido hacer un temporizador con el 12f629, el cual el unico problema que tiene utilizando el reloj interno es que en un tiempo de 1 minuto se me adelanta 2 segundos. Creo que el Osscal esta bien configurado. ¿puede que sea normal esta variacion con el reloj interno?

De todos modos no me conformo con haber conseguido grabarlo, desearia conocer mas detalles del mismo
 
El mismo programa lo he comprobado en un 16f84 y funciona a la perfeccion, pero en el 12f629
adelanta 2 segundos.
He leido que con el oscilador interior se pierde precision, pero no me imaginaba que fuera tan grande.
 
pepechip dijo:
El mismo programa lo he comprobado en un 16f84 y funciona a la perfeccion, pero en el 12f629
adelanta 2 segundos.
He leido que con el oscilador interior se pierde precision, pero no me imaginaba que fuera tan grande.

No sabía que los osciladores interiores no tuviera mucha precisión, ¿realmente vale la pena?
 
te dejo el programa completo.
Se trata de un temporizador ciclico que mediante 4 microinterruptores selecccionas distintos modos de funcionamiento.

dispone de una salida para controlar un triac, y otra salida para un led, el cual esta encendido cuando la salida esta activa y parpadeando cuando la salida esta en off.

Al grabar el programa le mantube al enano la información de la posicion 3ff, en la cual contenia el valor 3454.

Los tiempos que programe no son exactos, en 1seg variaba algunos useg, pero esa variacion en el 16f84 es tan pequeña que no se aprecia.



Ya que he subido el programa me podriais poner la manera de activar las resistencias de polarizacion internas.
 

Adjuntos

  • temporizador_ciclico_162.asm
    11.7 KB · Visitas: 135
He visto tu programa y la verdad mmm esta un poco mal estructurado aveces le pones cosas que no son necesarias, pienso que deberias reestructurarlo, mi recomendacion es revisarlo denuevo y ver como hacerlo mejor.

Y parece que esta mal configurado el oscilador interno segun la hoja de datos la cargarle 20
lo pones a una frecuencia media entre 4mhz y si tu pic16f84a va a 4mhz es claro que habra una gran diferencia en los retardos, intenta cargarle el valor de 3f, amenos que tu pic 16f vaya a 2 mhz
 
ya comente que en la posicion 3ff le mantengo el valor original de fabrica que es 3454.
Al pasar el archivo al ic-pro me pone 20, pero antes de grabarlo yo apcedo a la posicion 3ff y la pongo a 3454.
 
Tengo un problema al realizar el montaje real.

En el programa que subi, configuro GP0, GP1, GP2, GP3 como entradas, pero al realizar su comprobacion veo que GP0 y GP1 actuan como si siempre estubiesen a 0.
En funcion de las 4 entradas el programa se va a leer un Tabla, pero los bit 0 y 1 no varian siempre considera que valen 0.

He verificado con el polimetro que la tension en los terminales 6 y 7 (bit 1 y 0), cambian de valor cuando acciono los microinterruptores.

En el MPLAB la simulacion va perfecta.

He buscado en google pero no encuentro explicacion a este fallo.

Llevo muchas horas dedicadas a este trabajo, incluso tengo diseñado el PCB, y me encuentro bloqueado.
 
Mmmm el pic es nuevo?
Tuviste algun problema con otro circuito?
Has probado algun otro simulador como el proteus?
Prueba utilizar esos puertos con otro programa sencillo, asi descartamos que sea un error del pic. Y a checar denuevo la programacion en caso de que no sea asi.

Podrias poner el circuitos que estas utilizando?, mas que nada el de los botones.
 
Con el pic12f675 tube algunos problemas, verifica el tema de los comparadores que vienen activados por defecto.
Tambien las resistencias pushpull

Este chip es un poco cabrito, como vigiles todas las configuraciones no va.
 
tiopepe123 dijo:
Con el pic12f675 tube algunos problemas, verifica el tema de los comparadores que vienen activados por defecto.
Tambien las resistencias pushpull

Este chip es un poco cabrito, como vigiles todas las configuraciones no va.

¿cabrito? yo diria que es un hijo de pu..
Con los comparadores has dado en el clavo.

ya he solucionado el problema.

Primeramente me dio un problema al seleccionar con el Ic-pro el oscilador interior con la obcion
intOSC CLKOUT con lo que el pin GP4 me lo mantenia siempre en alto, y tube que utilizar intOSC GP4, con lo que va perfecto, y el pin GP4 que lo tengo configurado como salida me cambia perfectamente de estado.

Luego con el problema de GP0 y GP1 que no podia leerlas, lo corregi añadiendo estas instrucciones.

Código:
      movlw	b'00000111' 	;  desactiva el comparador 
        movwf	CMCON           ; selecciona GPIO en vez de comparador

Muchas gracias, ya tengo el circuito funcionando perfectamente.
 
Atrás
Arriba