P. 1
Configuracion Del Pic 12f629

Configuracion Del Pic 12f629

|Views: 920|Likes:
Publicado porJorge Palacios

More info:

Published by: Jorge Palacios on Apr 03, 2012
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as DOCX, PDF, TXT or read online from Scribd
See more
See less

12/27/2014

pdf

text

original

Configuracion del pic 12f629

Voy a destacar las diferencias a la hora de configurar el 12f629 conparandolas con el 16F84A. 16F84 equ 0x0C ; a partir de esta direccion empieza la memoria de datos 12F629 equ 0x20 ; a partir de esta direccion empieza la memoria de datos las intrucciones TRISA y TRISB se sustituyen por TRISIO las instrucciones PORTA y PORTB se sustituyen por GPIO El terminal GP3 solo puede actuar como entrada de datos

Disposicion de pines Trabaja con un voltaje comprendido entre 2 y 5,5 voltios

PARA DESACTIVAR EL COMPARADOR PARA QUE GP0 Y GP1 ACTUEN COMO ENTRADAS NORMALES. De fabrica vienen configuradas en modo comparador bcf movlw movwf STATUS,RP0 ; BANCO 0 b'00000111' CMCON ; selecciona GPIO en vez de comparador ; 0x07 desactiva el comparador y lo pone además en bajo consumo

Valor de calibración del oscilador interno .RP0 3FFh . . Bank 1 B'00001111' . BANCO 0 CONFIGURAR EL RELOJ INTERNO bsf STATUS call OSCCAL . solo he habilitado la resistemcia en GP1 . B'00000010' WPU . Calibra osc interno .RP0 . Habilita pull-ups OPTION_REG . 0 salidas y 1 entradas.PARA HABILITAR LAS RESISTENCIAS INTERNAS: Todos tienen resistencias internas menos GP3 bsf movlw movwf movlw movwf bcf STATUS. STATUS. BANCO 1 b'xx001111' TRISIO . Bank 0 CONFIGURAR LOS PINES COMO ENTRADA O SALIDA: bsf movlw movwf bcf STATUS.RP0 .RP0 . STATUS.RP0 . Bank 1 .

..............hay que utilizarlo cuando se utilice el oscilador interior intOSC CLKOUT................Master clear.power up timer. Bandgap 10b..... ........ CPD............... Default..perro guardian...instrucciones antes del final del programa .codigo de proteccion area de datos...............................Siempre utilizo esta configuracion BITS CONFIGURACION: WDT....... Bandgap 11b........... BODEN..................... ... CP...... Bank 0 ............. XT..codigo de proteccion del programa ........... RC CLKOUT..................... .......... MCLR....... 0x3FF Org Retlw End 0x20 CONFIGURACION EN EL ICPRO OSCILADOR: LP........ En la posicion del programa 3FF...... HS....... BANDGAP: Bandgap 00b........ intOSC GP4.... se encuentra el valor para calibrar el oscilador interno.........reset por bajada de tension. en OFF configura GP3 como entrada y en ON como reset.............Reset al conectar la alimentacion.............. PWRT....................... Bandgap 01b...............................................RP0 .......... EC GP4.........movwf bcf STATUS...............Si lo utilizo como oscilador interior resulta que GP4 me lo pone siempre a1 RC GP4...............

En dicha fotografia se puede apreciar que tengo activado el oscilador interno. reset por bajada de tension y codigo de proteccion del programa. realizar una lectura y anotar el valor que indica dicha posicion. el perro guardian.GP3 configurada como entrada. la utilizo para anotar la informacion de los bits de configuracion. incluso mas abajo (no aparece en la imagen) tengo anotado el valor del Chesksum La configuracion de la imagen de arriba corresponde con el siguiente programa . Ver figura. para asegurame de que este todo correcto antes de la grabacion.por lo que es aconsejable antes de proceder a la grabacion del pic. Como no estoy utilizando la eprom.

.12F675 y 12F629 oscilador valor de calibración.

sino a otra distinta. Si cambiamos dicho valor el oscilador interno no oscilara a la frecuencia de 4Mhz. En el caso de que pulsemos SI. para que asi nos mantenga el valor original de fabrica "54h". habra que proceder a borrarlo. Hay que decirle que NO. ya que el valor original era "54h" Lo correcto antes de grabarlo seria cambiar el valor de la posicion 3FF y ponerle el valor "3454" Cada pic tiene un valor distinto En el caso de haber perdido el valor original hay una forma de recuperarlo. y pregunta si ponge el valor (20h). VER AQUI xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx Estos datos aun no los tengo probados. Dicho valor se encuentra en la ultima posicion de memoria 0x3FF.Antes de la programacion con los datos de su archivo hexadecimal deves de hacer una nota del oscilador. Con este valor se calibra el oscilador a 4MHZ con un 1% de tolerancia. BORRAR Y GRABAR En el caso de que tengamos que realizar una nueva grabacion del pic. por lo que el oscilador ira a otra frecuencia distinta a 4Mhz. por lo que no hare ningun comentario: . este lee el contenido de la posicion 3FF (en este caso 54h). que es el que hay grabado en el programa. que es el que aparece en mi programa. Pero al realizar la nueva grabacion aparecera el mensaje de la figura. con el valor de calibracion que viene fijado de fabrica por Microchip. Al realizar la grabacion del pic mediante el ICpro. meteremos el valor "20h".

high. 0111b= 7d => 1. por defecto .convertidor activo 1- Algunos enlaces de interes http://www. no usados -00. 0110b= 6d => 2. (1) por ahora no uso el voltaje de referencia interno b'10000110' . las entradas para el ADC obligatoriamente deben ser entradas :-) TRISIO . selecciona el banco 0 de registros 0xff . Vdd como referencia -0.net/post_-TUTORIAL-DEFINITIVO--Programa-tu-12f629Correctamente-_1707313921 . (1) Fosc/16 y entrada en GP0 ANSEL b'00001001' . por defecto.6 VRCON b'01010001' .bcf movlw movwf bsf movlw movlw movlw movwf movlw movwf movlw movwf bcf movlw movwf STATUS. selecciona el banco 0 de registros b'0000001' ADCON0 STATUS.conversión terminada -0.34 voltios si Vdd=4.RP0 .html http://www. selecciona el banco 1 de registros b'00000000' .talkingelectronics. GP1 y GP2 salidas para indicar la temperatura con los LEDs STATUS. low .03 voltios si Vdd=4.com/12F675. (2) Vref.com/projects/StartHere12F629/StartHere12F629-P1.RP0 .best-microcontroller-projects. (2) Vref.html http://www. ADFM a la izquierda -0-.6 b'10100111' . se asegura que todo quede "en alto" GPIO . GP0 es la entrada -00..RP0 .elotrolado.

You're Reading a Free Preview

Descarga
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->