Página de inicio Mi Correo






   » Foro
   » Nuevo Foro
   » Mi Correo
   » Mis Actividades...


--- Novedades ---



    
  » Microcontroladores » Interrupciones y Temporizaciones (3 de 15)  

.: El Registro OPTION

Este es otro de los registros que tienen mucho que ver con las interrupciones, algunos de sus Bit's deben ser modificados, según la aplicación que estés realizando.

Por ejemplo; dijimos que por el pin RB0/INT, regresas al PIC del modo SLEEP, lo cual podría hacerse mediante un pulsador, suponte que el pulsador está al polo positivo (VCC) y con una resistencia a GND, de tal modo que la interrupción se produzca al enviar un 1 (presionando el pulsador), pero también podría hacerse enviando un 0 (liberando al pulsador). por lo tanto la interrupción debe ser sensible a un 1 o bien a un 0, como sabrá esto el micro...???, pues muy fácil, hay que especificarlo, y esto se hace en el Bit6 (INTDEG) del registro OPTION, con un 1 será sensible al flanco ascendente, y en el momento que envíes un 1 por el pulsador se producirá la interrupción, si pones ese Bit a 0 será sensible al flanco descendente y la interrupción se producirá cuando liberes el pulsador, es decir enviando un 0.

.: Este es el registro OPTION...
REGISTRO OPTION
RBPU INTDEG T0CS T0SE PSA PS2 PS1 PS0

.: Y aquí verás como configurar algunos de sus BIT's...
BIT's L ó E Reset Descripción
Bit 7: RBPU
Pull-up p' PORTB
L/E 1 1 = Cargas Pull-Up Desconectadas
0 = Cargas Pull-Up Conectadas
Bit 6: INTEDG
Flanco/Interrup.
L/E 1 1 = RB0/INT será sensible a flanco ascendente
0 = RB0/INT será sensible a flanco descendente
Bit 5: T0CS
Fte./Reloj p' TMR0
L/E 1 1 = Pulsos por el pin RA4/T0CKI (contador)
0 = Pulsos igual Fosc/4 (temporizador)
Bit 4: T0SE
Flanco/T0CKI
L/E 1 1 = Incremento TMR0 en flanco descendente
0 = Incremento en flanco ascendente
Bit 3: PSA
Divisor/Frecuencia
L/E 1 1 = Divisor asignado al WDT
0 = Divisor asignado al TMR0

Como puedes ver, en la tabla no figuran los primeros tres Bit's, y es que la combinación de los BIT's; PS2, PS1 y PS0 (2, 1 y 0 respectivamente) determinan el valor del divisor de frecuencia o prescaler (mmmmmmm, no te preocupes que cuando terminemos con este tutorial o mejor dicho cuando hablemos de temporizaciones sabrás de que se trata)...

Basta de teoría, es hora de pasar a la práctica, haremos nuestro primer programa con interrupciones, que emocionante...!!! ya me estaban picando las manos para codificar...!!!, quería hacer algo complejo e interesante, pero temo que te pierdas y lo que es peor, temo enredarme al tratar de explicarlo, así que haremos algo sencillito, ok.??? luego lo iremos complicando y pondremos a llorar a muchos, jejeje

Bueno, como son la 3 de la madrugada y mis bellos ojos comienzan a cerrarse, lo haremos mañana, ahí nos vemos...!!!



R-Luis...

<-- Anterior   Introducción   Siguiente -->
1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15
Tabla de Referencias


    
--| |--