3.9 Módulos Analógicos
Aparte de disponer de un gran número de líneas digitales de E/S utilizadas para la comunicación con los periféricos, el PIC16F887 contiene 14 entradas analógicas. Debido a éstas, el microcontrolador no sólo puede reconocer si un pin es llevado a bajo o alto (0 o +5V), sino que puede medir con precisión el voltaje y convertirlo en un valor numérico, o sea, en formato digital.
El convertidor A/D es uno de los módulos analógicos más importantes dentro del microcontrolodar. Dispone de las siguientes características:
- La conversión se lleva al cabo aplicando el método de aproximación sucesiva;
- Dispone de 14 entradas analógicas separadas que se conectan a los pines del puerto del microcontrolador;
- El convertidor A/D convierte una señal de entrada analógica en un número binario de 10 bits;
- La resolución mínima o calidad de conversión se puede ajustar a diferentes necesidades al seleccionar voltajes de referencia Vref- y Vref+.
CONVERTIDOR A/D
Aunque a primera vista parece muy complicado utilizar un convertidor A/D, en realidad es muy simple. De hecho resulta más simple utilizar un convertidor A/D que los temporizadores o módulos de comunicación serie.
El funcionamiento del convertidor A/D está bajo el control de los bits de cuatro registros:
- ADRESH Registro alto del resultado de la conversión A/D;
- ADRESL Registro bajo del resultado de la conversión A/D;
- ADCON0 Registro de control 0; y
- ADCON1 Registro de control 1.
Registros ADRESH y ADRESL
El resultado obtenido después de convertir un valor analógico en digital es un número de 10 bits que se almacenará en los registros ADRESH y ADRESL. Hay dos maneras de manejarlo: justificación a la izquierda y a la derecha que simplifica en gran medida su uso. El formato del resultado de la conversión depende del bit ADFM del registro ADCON1. En caso de que no se utilice el convertidor A/D, estos registros se pueden utilizar como registros de propósito general.
REQUERIMIENTOS DE ADQUISICIÓN A/D
Para que el convertidor A/D alcance su exactitud especificada, es necesario proporcionar un cierto tiempo muerto entre seleccionar una entrada analógica específica y la medición misma. Este tiempo se le denomina “tiempo de adquisición” y generalmente depende de la impedancia de la fuente. Se utiliza una ecuación para hacer cálculo de tiempo de adquisición con precisión, cuyo valor mínimo es de 20uS aproximadamente. Por consiguiente, para realizar una conversión con precisión, no se olvide este detalle.
RELOJ PARA LA CONVERSIÓN A/D
El tiempo necesario para realizar una conversión A/D cuyo resultado es 1 bit se define en unidades de TAD. Se requiere que sea como mínimo 1,6 uS. Para realizar una conversión completa de 10 bits se requiere un poco más tiempo de lo esperado, son 11 TAD. Como la frecuencia de reloj así como la fuente de conversión A/D son determinadas por software, es necesario seleccionar una de las combinaciones de los bits disponibles ADCS1 y ADCS0 antes de empezar a medir voltaje en una de las entradas analógicas. Estos bits se almacenan en el registro ADCON0.
FUENTE DE RELOJ DE ADC
|
ADCS1 |
ADCS0 |
FRECUENCIA DE DISPOSITIVO (FOSC) |
20 Mhz |
8 Mhz |
4 Mhz |
1 Mhz |
Fosc/2 |
0 |
0 |
100 nS |
250 nS |
500 nS |
2 uS |
Fosc/8 |
0 |
1 |
400 nS |
1 uS |
2 uS |
8 uS |
Fosc/32 |
1 |
0 |
1.6 uS |
4 uS |
8 uS |
32 uS |
Frc |
1 |
1 |
2 - 6 uS |
2 - 6 uS |
2 - 6 uS |
2 - 6 uS |
Cualquier cambio de la frecuencia de reloj del microcontrolador afectará a la frecuencia de reloj de la conversión A/D, lo que puede perjudicar al resultado de la conversión A/D. En la siguiente tabla se muestran las frecuencias de reloj posibles del dispositivo y cómo afectan a la velocidad de la conversión A/D. Los valores en las celdas sombreadas están fuera del rango recomendado.
¿CÓMO UTILIZAR EL CONVERTIDOR A/D?
Para llevar a cabo una conversión A/D sin problemas así como para evitar los resultados inesperados, es necesario considerar lo siguiente:
- El convertidor A/D no hace diferencia entre señales digitales y analógicas.Para evitar errores en medición o dañar el chip, los pines se deben configurar como entradas analógicas antes de que empiece el proceso de conversión. Los bits utiliza dos para este propósito se almacenan en los registros TRIS y ANSEL (ANSELH);
- Al leer el estado de puerto con las entradas analógicas marcadas como CH0-CH13, el estado de los bits correspondientes, o sea, su valor digital se leerá como cero lógico (0); y
- Hablando en términos generales, la medición de voltaje en el convertidor está basado en comparar voltaje de entrada con una escala interna que tiene 1024 grados (210 =1024). El grado más bajo de esta escala representa el voltaje Vref-, mientras que el grado más alto se refiere al voltaje Vref+. La siguiente figura muestra los voltajes de referencia seleccionables así como sus valoresmáximos y mínimos.
Registros ADCON0
ADCS1, ADCS0 - A/D Conversion Clock Select bits (bits de selección de reloj de conversión A/D) selecciona la frecuencia de reloj utilizada para sincronización interna del convertidor A/D. Asimismo afecta a la duración de la conversión.
ADCS1 |
ADCS2 |
RELOJ |
0 |
0 |
Fosc/2 |
0 |
1 |
Fosc/8 |
1 |
0 |
Fosc/32 |
1 |
1 |
RC * |
* Señal de reloj se genera por el oscilador interno RC que está integrado en el convertidor.
CHS3-CHS0 - Analog Channel Select bits (bits de selección de canal analógico) selecciona un pin o un canal analógico para la conversión A/D, o sea para medir el voltaje:
CHS3 |
CHS2 |
CHS1 |
CHS0 |
CANAL |
PIN |
0 |
0 |
0 |
0 |
0 |
RA0/AN0 |
0 |
0 |
0 |
1 |
1 |
RA1/AN1 |
0 |
0 |
1 |
0 |
2 |
RA2/AN2 |
0 |
0 |
1 |
1 |
3 |
RA3/AN3 |
0 |
1 |
0 |
0 |
4 |
RA5/AN4 |
0 |
1 |
0 |
1 |
5 |
RE0/AN5 |
0 |
1 |
1 |
0 |
6 |
RE1/AN6 |
0 |
1 |
1 |
1 |
7 |
RE2/AN7 |
1 |
0 |
0 |
0 |
8 |
RB2/AN8 |
1 |
0 |
0 |
1 |
9 |
RB3/AN9 |
1 |
0 |
1 |
0 |
10 |
RB1/AN10 |
1 |
0 |
1 |
1 |
11 |
RB4/AN11 |
1 |
1 |
0 |
0 |
12 |
RB0/AN12 |
1 |
1 |
0 |
1 |
13 |
RB5/AN13 |
1 |
1 |
1 |
0 |
CVref |
1 |
1 |
1 |
1 |
Vref = 0.6V |
GO/DONE - A/D Conversion Status bit (bit de estado de la conversión A/D) determina el estado actual de de la conversión:
- 1 - La conversión A/D está en progreso
- 0 - La conversión A/D ha finalizado. El bit se pone a cero automáticamente por hardware cuando la conversión A/D finaliza.
ADON - A/D On bit (bit de encendido A/D) habilita el convertidor A/D.
- 1 - Convertidor A/D está habilitado.
- 0 - Convertidor A/D está deshabilitado.
Vamos a hacerlo en mikroBasic...
' Este código es un ejemplo de leer el valor analógico del canal 2 y de visualizarlo
' en los puertos PORTB y PORTC como número binario de 10 bits.
dim adc_rd as word
main:
ANSEL = 0x04 ' Configurar AN2 como pin analógico
TRISA = 0xFF ' PORTA se configura como entrada
ANSELH = 0 ' Configurar los demás pines AN como E/S digitales
TRISC = 0x3F ' Pines RC7 y RC6 se configuran como salidas
TRISB = 0 ' PORTB se configura como salida
while 1
temp_res = ADC_Read(2) ' Obtener el resultado de 10 bits de la conversión AD
PORTB = temp_res ' Enviar los 8 bits más bajos al PORTB
PORTC = temp_res >> 2 ' Enviar los 2 bits más significativos a los RC7 y RC6
wend ' Quedarse en el bucle
end.
Registro ADCON1
ADFM - A/D Result Format Select bit (bit de selección del formato del resultado de la conversión A/D)
- 1 - Resultado de conversión está justificado a la derecha. No se utilizan los seis bits más significativos del registro ADRESH
- 0 - Resultado de conversión está justificado a la izquierda. No se utilizan los seis bits menos significativos del registro ADRESL.
VCFG1 - Voltage Reference bit (bit de configuración de voltaje de referencia) selecciona la fuente de voltaje de referencia bajo que se necesita para el funcionamiento del convertidor A/D.
- 1 - Voltaje de referencia bajo se aplica al pin Vref-
- 0 - Voltaje de alimentación Vss se utiliza como una fuente de voltaje de referencia bajo.
VCFG0 - Voltage Reference bit (bit de configuración de voltaje de referencia) selecciona la fuente de voltaje de referencia alto que se necesita para el fucionamiento del convertidor A/D.
- 1 - Voltaje de referencia alto se aplica al pin Vref+
- 0 - Voltaje de alimentación Vdd se utiliza como una fuente de voltaje de referenia alto.
En breve
Utilizar el convertidor A/D
Para medir el voltaje en un pin de entrada por medio del convertidor A/D, se debe realizar lo siguiente:
Paso 1 - Configuración del puerto:
- Escribir un uno lógico (1) a un bit del registro TRIS, lo que resulta en configurar el pin apropiado como una entrada.
- Escribir un uno lógico (1) a un bit del registro ANSEL, lo que resulta en configurar el pin apropiado como una entrada analógica.
Paso 2 - Configuración del módulo de la conversión A/D:
- Configurar voltaje de referencia en el registro ADCON1.
- Seleccionar una señal de reloj de la conversión A/D en el registro ADCON0.
- Seleccionar uno de los canales de entrada CH0-CH13 del registro ADCON0.
- Seleccionar el formato de dato por medio de ADFM del registro ADCON1.
- Habilitar el convertidor A/D al poner a uno el bit ADON del registro ADCON0.
Paso 3 - Configuración de la interrupción (opcionalmente):
- Poner a cero el bit ADIF.
- Poner a uno los bits ADIE, PEIE y GIE .
Paso 4 -Tiempo de espera para que transcurra el tiempo de adquisición (aproximadamente 20uS).
Paso 5 - Inicio de la conversión poniendo a uno el bit GO/DONE del registro ADCON0.
Paso 6 - Esperar a que la conversión A/D finalice.
- Es necesario comprobar en el bucle de programa si el bit GO/DONE está a cero o esperar que se produzca una interrupción (deberá estar anteriormente habilitada).
Paso 7 - Lectura del resultado de la conversión A/D:
- Leer los registros ADRESH y ADRESL.
COMPARADOR ANALÓGICO
Aparte del convertidor A/D, hay otro módulo, que hasta hace poco ha sido incorpodo sólo en los circuitos integrados que pertenecen a los llamados “componentes analógicos”. Debido al hecho de que casi no hay ningún dispositivo automático complejo que en cierto modo no utilice estos circuitos, dos comparadores de alta calidad, junto con los componentes adicionales están integrados en el microcontrolador y conectados a sus pines.
¿Cómo funciona un comparador? Básicamente, el comparador analógico es un amplificador que compara la magnitud de voltajes en dos entradas. Dispone de dos entradas y una salida. Dependiendo de cuál voltaje de entrada es más alto (valor analógico), un cero lógico (0) o un uno lógico (1) (valores digitales) será la salida:
- Cuando el voltaje analógico en Vin- es más alto que el voltaje análogo en Vin+, la salida del comparador estará a un nivel digital bajo.
- Cuando el voltaje analógico en Vin+ es más alto que el voltaje análogo en Vin-, la salida del comparador estará a un nivel digital alto.
El microcontrolador PIC16F887 dispone de dos de estos comparadores de voltaje cuyas entradas están conectadas a los pines de E/S RA0-RA3, mientras que las salidas están conectadas a los pines RA4 y RA5. Además, hay una fuente de voltaje de referencia interna en el chip mismo, la que vamos a discutir más tarde.
Estos dos circuitos están bajo el control de los bits almacenados en los siguientes registros:
- CM1CON0 está en control del comparador C1;
- CM2CON0 está en control del comparador C2;
- CM2CON1 está en control del comparador C2;
FUENTE INTERNA DE VOLTAJE DE REFERENCIA
Uno de dos voltajes analógicos proporcionados en las entradas del comparador es por lo general estable e inalterable. Es denominado ‘voltaje de referencia’(Vref). Para generarlo, se pueden utilizar tanto una fuente de voltaje externa como una fuente de voltaje interna. El voltaje de referencia Vref se deriva después de seleccionar una fuente, por medio de las dos puntas de una red en escalera que consiste en 16 resistencias, formando un divisor de voltaje. El bit VRSS del registro VRCON se utiliza para seleccionar la fuente de voltaje de referencia.
El módulo de voltaje de referencia del comparador proporciona un voltaje de referencia generado internamente para los comparadores (CVref). El voltaje de referencia CVref dispone de dos gamas con 16 diferentes niveles de voltaje cada una. La selección de gama es controlada por el bit VRR del registro VRCON. El voltaje de referencia seleccionado CVref puede ser la salida al pin RA2/AN2 si el bit VROE se pone a uno. Además, los bits VR0-VR3 se utilizan para seleccionar los niveles de voltaje apropiados. Veamos la siguiente figura:
Aunque la idea principal con el módulo de voltaje de referencia era de proporcionar un voltaje de referencia variable a los módulos analógicos, ahora se utiliza como un convertidor A/D. Este convertidor se ha probado muy útil en algunas aplicaciones. Su funcionamiento está bajo el control del registro VRCON.
COMPARADORES E INTERRUPCIÓN
Siempre que haya un cambio del estado lógico en la salida de un comparador, el bit de bandera CMIF del registro PIR se pone a uno. Ese cambio también causará una interrupción si los siguientes bits se ponen a uno:
- El bit CMIE del registro PIE = 1;
- El bit PEIE del registro INTCON = 1; y
- El bit GIE del registro INTCON = 1.
Si una interrupción está habilitada, un cambio en la salida de un comparador cuando el microcontrolador está en modo de reposo puede causar que el microcontrolador salga de reposo y vuelva a funcionar en modo normal.
FUNCIONAMIENTO EN MODO DE REPOSO (SLEEP MODE)
Si está habilitado antes de entrar en modo de reposo, el comparador se queda activo durante el modo de reposo. Si el comparador no se utiliza para “despertar” el dispositivo, el consumo de corriente se puede reducir en modo de reposo al apagar el comparador. Esto se lleva a cabo al poner a cero el bit CxON del registro CMxCON0.
Para que el comparador “despierte” al microcontrolador del modo de reposo, el bit CxIE del registro IE2 y el bit PEIE del registro INTCON deberán ponerse a uno. La primera instrucción que se ejecutará después de que el microcontrolador salga del modo de reposo será la que sigue a la instrucción Sleep. Si el bit GIE del registro INTCON se pone a uno, el microcontrolador ejecutará la rutina de servicio de interrupción.
Registro CM1CON0
Los bits de este registro están en control del comparador C1. Eso afecta principalmente a la configuración de las entradas. Para explicarlo con más claridad, vea la siguiente figura en la que se muestran sólo los componentes directamente afectados por los bits de este registro.
C1ON - Comparator C1 Enable bit (bit de habilitación del comparador C1) habilita al comparador C1.
- 1 - Comparador C1 está habilitado.
- 0 - Comparador C1 está deshabilitado.
C1OUT - Comparator C1 Output bit (bit de salida del comparador C1) es la salida del comparador C1.
Si C1POL = 1 (salida del comparador está invertida)
- 1 - Voltaje de entrada C1Vin+ es más bajo que el voltaje de entrada C1Vin-.
- 0 - Voltaje de entrada C1Vin+ es más alto que el voltaje de entrada C1Vin-.
Si C1POL = 0 (salida del comparador no está invertida)
- 1 - Voltaje de entrada C1Vin+ es más alto que el voltaje de entrada C1Vin-.
- 0 - Voltaje de entrada C1Vin+ es más bajo que el voltaje de entrada C1Vin-.
C1OE Comparator C1 Output Enable bit (bit de habilitación de salida del comparador C1)
- 1 - Salida del comparador C1OUT está conectada al pin C1OUT*.
- 0 - Salida del comparador se utiliza internamente.
* Para habilitar que el bit C1OUT aparezca en el pin, se deben cumplir dos condiciones: C1ON = 1 (el comparador debe estar activado) y el pin correspondiente se debe configurar como salida (bit TRIS = 0).
C1POL - Comparator C1 Output Polarity Select bit (bit de selección de polaridad de salida del comparador C1) habilita la inversión del estado de la salida del comparador C1.
- 1 - Salida del comparador C1 está invertida.
- 0 - Salida del comparador C1 no está invertida.
C1R - Comparator C1 Reference Select bit (bit de selección de la fuente de voltaje de referencia del comparador C1)
- 1 - Entrada no invertida C1Vin+ está conectada a la fuente de voltaje de referencia C1Vref.
- 0 - Entrada no invertida C1Vin+ está conectada al pin C1IN+.
C1CH1, C1CH0 - Comparator C1 Channel Select bit (bit de selección de canal del comparador C1)
C1CH1 |
C1CH0 |
ENTRADA C1VIN DEL COMPARADOR
|
0 |
0 |
Entrada C1Vin- está conectada al pin C12IN0- |
0 |
1 |
Entrada C1Vin- está conectada al pin C12IN1- |
1 |
0 |
Entrada C1Vin- está conectada al pin C12IN2- |
1 |
1 |
Entrada C1Vin- está conectada al pin C12IN3- |
Registro CM2CON0
Los bits de este registro están en control del comparador C1. Eso afecta principalmente a la configuración de las entradas. Para explicarlo con más claridad, vea la siguiente figura en la que se muestran sólo los componentes directamente afectados por los bits de este registro.
C2ON - Comparator C2 Enable bit (bit de habilitación del comparador C2) habilita el comparador C2.
- 1 - Comparador C2 está habilitado.
- 0 - Comparador C2 está deshabilitado.
C2OUT - Comparator C2 Output bit (bit de salida del comparador C2) es la salida del comparador C2.
Si C2POL = 1 (salida del comparador está invertida)
- 1 - Voltaje de entrada C2Vin+ es más bajo que el voltaje de entrada C2Vin-.
- 0 - Voltaje de entrada C2Vin+ es más alto que el voltaje de entrada C2Vin-.
Si C2POL = 0 (salida del comparador no está invertida)
- 1 - Voltaje de entrada C2Vin+ es más alto que el voltaje de entrada C2Vin-.
- 0 - Voltaje de entrada C2Vin+ es más bajo que el voltaje de entrada C2Vin-.
C2OE - Comparator C2Output Enable bit (bit de habilitación de salida del comparador C2)
- 1 - Salida del comparador C2OUT está conectada al pin C2OUT*.
- 0 - Salida del comparador se utiliza internamente.
* Para habilitar que el bit C2OUT aparezca en el pin, se deben cumplir dos condiciones: C2ON = 1 (el comparador debe estar activado) y el pin correspondiente se debe configurar como salida (bit TRIS = 0)
C2POL - Comparator C2 Output Polarity Select bit (bit de selección de polaridad de salida del comparador C2) habilita la inversión del estado de la salida del comparador C2.
- 1 - Salida del comparador C2 está invertida.
- 0 - Salida del comparador C2 no está invertida.
C2R - Comparator C2 Reference Select bit (bit de selección de la fuente de voltaje de referencia del comparador C2)
- 1 - Entrada no invertida C2Vin+ está conectada a la fuente de voltaje de referencia C2Vref.
- 0 - Entrada no invertida C2Vin+ está conectada al pin C2IN+.
C2CH1, C2CH0 Comparator C2 Channel Select bit (bit de selección de canal del comparador C2)
C2CH1 |
C2CH0 |
ENTRADA C2VIN DEL COMPARADOR
|
0 |
0 |
Entrada C2Vin- está conectada al pin C12IN0- |
0 |
1 |
Entrada C2Vin- está conectada al pin C12IN1- |
1 |
0 |
Entrada C2Vin- está conectada al pin C12IN2- |
1 |
1 |
Entrada C2Vin- está conectada al pin C12IN3- |
Registro CM2CON1
Mirror Copy of the C1OUT bit es una copia del bit C1OUT
Mirror Copy of the C2OUT bit es una copia del bit C2OUT
C1RSEL Comparator C1 Reference Select bit (bit de selección de la fuente de voltaje de referencia del comparador C1)
- 1 - Voltaje seleccionable CVref se utiliza en la fuente de voltaje de referencia C1Vref.
- 0 - Voltaje de referencia fijo de 0,6V se utiliza en la fuente de voltaje de referencia C1Vref.
C2RSEL - Comparator C2 Reference Select bit (bit de selección de la fuente de voltaje de referencia del comparador C2)
- 1 - Voltaje seleccionable CVref se utiliza en la fuente de voltaje de referencia C2Vref.
- 0 - Voltaje de referencia fijo de 0,6V se utiliza en la fuente de voltaje de referencia C2Vref.
T1GSS - Timer1 Gate Source Select bit (bit de selección de la fuente de la compuerta del temporizador Timer1)
- 1 - Compuerta del temporizador Timer1 utiliza señal del pin T1G.
- 0 - Compuerta del temporizador Timer1 utiliza señal SYNCC2OUT.
C2SYNC - Comparator C2 Output Synchronization bit (bit de sincronización de salida del comparador C2)
- 1 - Salida del comparador C2 está sincronizada con un flanco ascendente de señal de reloj del temporizador Timer1
- 0 - Salida del comparador es una señal asíncrona.
Registro VRCON
VREN Comparator C1 Voltage Reference Enable bit (bit de habilitación de la fuente de voltaje de referencia del comparador C1)
- 1 - Fuente de voltaje de referencia CVref está encendido.
- 0 - Fuente de voltaje de referencia CVref está apagado.
VROE Comparator C2 Voltage Reference Enable bit (bit de habilitación de la fuente de voltaje de referencia del comparador C2)
- 1 - Fuente de voltaje de referencia CVref está conectada al pin.
- 0 - Fuente de voltaje de referencia CVref no está conectada al pin.
VRR - CVref Range Selection bit (bit de selección de gama de voltaje de referencia Vref)
- 1 - Fuente de voltaje de referencia se ajusta a producir baja gama de voltaje.
- 0 - Fuente de voltaje de referencia se ajusta a producir alta gama de voltaje.
VRSS - Comparator Vref Range selection bit (bit de selección de gama de voltaje de referencia Vref del comparador)
- 1 - Voltaje de referencia está en la gama de Vref+ a Vref-.
- 0 - Voltaje de referencia está en la gama de Vdd a Vss. (voltaje de alimentación).
VR3 - VR0 CVref Value Selection (selección de valor de voltaje de referencia)
Si VRR = 1 (gama baja)
El voltaje de referencia se calcula por medio de la fórmula: CVref = ([VR3:VR0]/24)Vdd.
Si VRR = 0 (gama alta)
El voltaje de referencia se calcula por medio de la fórmula CVref = Vdd/4 + ([VR3:VR0]/32)Vdd.
En breve
Pasos a seguir para utilizar apropiadamente los comparadores integrados:
Paso 1 - Configuración del módulo:
- Para seleccionar el modo apropiado, se deben configurar los estados de los bits de los registros CM1CON0 y CM2CON0. La interrupción debe estar deshabilitada durante el cambio de modo.
Paso 2 - Configurar la fuente de voltaje de referencia Vref interna (sólo si se utiliza). En el registro VRCON es necesario realizar lo siguiente:
- Seleccionar una de dos gamas de voltaje por medio del bit VRR.
- Configurar el voltaje de referencia Vref necesario por medio de los bits VR3 -VR0.
- Poner a uno el bit VROE si es necesario.
- Habilitar la fuente de voltaje de referencia Vref al poner a uno el bit VREN.
Fórmula utilizada para calcular el voltaje de referencia:
VRR = 1 (gama baja)
CVref = ([VR3:VR0]/24)VLADDER
VRR = 0 (gama alta)
CVref = (VLADDER/4) + ([VR3:VR0]VLADDER/32)
Vladder = Vdd or ([Vref+] - [Vref-]) or Vref+
Paso 3 - Inicio del funcionamiento:
- Habilitar una interrupción al poner a uno los bits CMIE (registro PIE), PEIE y GIE (registro INTCON ).
- Leer los bits C1OUT y C2OUT del registro CMCON.
- Leer la bandera de bit CMIF del registro PIR. Después de haber sido puesto a uno, este bit se pone a cero por software.