El Registro de Control ADCON0

Anuncio
TEMA 20
EL CONVERSOR A/D
Introducción Al Conversor Analógico/Digital
Los microcontroladores PIC de la familia 16F78x, poseen un
conversor A/D de 10 bits de resolución, y con 5 entradas para los
dispositivos de 28 terminales (16F873/6) y de 8 entradas para los
dispositivos de 40 terminales (16F874/7).
La resolución del conversor vendrá determinada por la tensión de
referencia que posea el conversor y es:
Resolución = Vref/1024
CCFF DPE MÓDULO DE PROYECTOS
2
Diagrama de Bloques del Conversor Analógico/Digital
CCFF DPE MÓDULO DE PROYECTOS
3
Introducción Al Conversor Analógico/Digital
En anterior esquema podemos comprobar que la entrada activa del
conversor A/D se selecciona mediante los bits CHS2:CHS0 del
registro ADCON.
Las tensiones de referencia (Vref+ y Vref-) que utiliza el
conversor, por defecto poseen el valor VDD (5 v) y masa (0 v).
Pero opcionalmente se puede disponer de 2 tensiones de
referencia, externas denominadas Vref+ y Vref-, y que están
sujetas a ciertas limitaciones (pero perdemos 2 canales de
entrada).
CCFF DPE MÓDULO DE PROYECTOS
4
Introducción Al Conversor Analógico/Digital
A través del canal seleccionado, se aplica la señal analógica a
un condensador de sample and hold
(captura y
mantenimiento) y luego se introduce al conversor A/D, este
facilitará un resultado de 10 bits.
La conversión se realiza mediante la técnica de aproximaciones
sucesivas.
El conversor es el único dispositivo capaz de seguir trabajando
cuando el micro se encuentra en el modo SLEEP. Para ello el
oscilador interno debe conectarse al conversor.
CCFF DPE MÓDULO DE PROYECTOS
5
Introducción Al Conversor Analógico/Digital
El conversor para su funcionamiento posee 4 registros
asociados
• ADRESH Parte alta del resultado de la conversión
• ADRESL Parte baja del resultado de la conversión
• ADCON0 Registro de control 0
• ADCON1 Registro de control 1
Los pines que funcionaran como entradas al conversor A/D
deben ser configurados como entradas analógicas.
CCFF DPE MÓDULO DE PROYECTOS
6
El Registro de Control ADCON0
El registro ADCON0 controla la operación de conversión A/D,
se encuentra en la dirección 1Fh (banco 0).
Bits 7-6 ADCS1-ADSC0: Sirven para seleccionar la frecuencia
del reloj que se empleará en la conversión y de acuerdo a la
siguiente tabla:
CCFF DPE MÓDULO DE PROYECTOS
7
El Registro de Control ADCON0
ADSC1:ADSC0
FRECUENCIA
00
Fosc/2
01
Fosc/8
10
Fosc/32
11
Frc (utiliza el oscilador interno)
Se denomina TAD al tiempo que tarda en ejecutarse la conversión
de cada bit, en el caso de trabajar con 10 bits, se requerirá un
tiempo mínimo de 12. TAD.
CCFF DPE MÓDULO DE PROYECTOS
8
El Registro de Control ADCON0
El valor de TAD se selecciona por software mediante los
anteriores bits,y en los PIC 16F87x, nunca debe ser menor
que 1,6 μsegundos.
Bits 5-3 CHS2:CHS0 Sirven para seleccionar el canal de
entrada al conversor y de acuerdo con lo siguiente:
000 = canal 0, (RA0/AN0)
001 = canal 1, (RA1/AN1)
010 = canal 2, (RA2/AN2)
011 = canal 3, (RA3/AN3)
CCFF DPE MÓDULO DE PROYECTOS
9
El Registro de Control ADCON0
100 = canal 4, (RA5/AN4)
101 = canal 5, (RE0/AN5)(1)
110 = canal 6, (RE1/AN6)(1)
111 = canal 7, (RE2/AN7)(1)
Nota (1): Estos canales no están disponibles en los
dispositivos PIC16F873/876.
CCFF DPE MÓDULO DE PROYECTOS
10
El Registro de Control ADCON0
Bit 2 GO/DONE: bit de estado de la conversión A/D
SI ADON = 1
Poniendo a 1 este bit se inicia una conversión. Este bit
permanecerá a 1 mientras la conversión está realizándose, y
es puesto a “0” automáticamente por hardware cuando
finaliza.
Bit 1: no implementado, se lee como 0.
Bit 0 ADON: bit de habilitación del conversor A/D
1 = El conversor A/D está operativo
0 = El conversor A/D no está operativo, y no consume
corriente.
CCFF DPE MÓDULO DE PROYECTOS
11
El Registro de Control ADCON1
El registro ADCON1 sirve para configurar los terminales de la
puerta A, como entradas analógicas, o como E/S digitales,
posee la dirección 9Fh (banco 1).
Bit 7 ADFM: bit de selección del formato del resultado
1 = Justificación a la derecha. Los 6 bits mayor peso del registro
ADRESH son puestos a 0
0 = Justificación a la izquierda los 6 bits menos significativos del
registro ADRESL son puestos a 0
El Registro de Control ADCON1
Bits 6-4: no implementados se leen como “0”.
Bits 3-0 PCFG3:PCFG0: bits de configuración del
conversor A/D. Se utilizan para configurar las patillas
como entradas analógicas o como terminales de E/S
digitales, y de acuerdo a la siguiente tabla.
CCFF DPE MÓDULO DE PROYECTOS
13
El Registro de Control ADCON1
El Registro de Control ADCON1
Nota 2: Esta columna indica el número de canales disponibles
que son entradas A/D y que número de canales de entrada
son entradas de tensión de referencia.
CCFF DPE MÓDULO DE PROYECTOS
15
Programación del Conversor A/D
Microchip en el manual del microcontrolador recomienda
seguir los siguientes pasos para programar el conversor
analógico/digital:
1. Configurar el módulo A/D:
• Fijar los pines que serán entradas analógicas, entradas
digitales y de tensión de referencia, (ADCON1).
• Seleccionar el canal de entrada para el conversor A/D
(ADCON0)
• Seleccionar el reloj para el conversor A/D (ADCON0)
• Habilitar el módulo de conversión A/D (ADCON0)
CCFF DPE MÓDULO DE PROYECTOS
16
Programación del Conversor A/D
2. Activar si se desea las interrupciones del módulo
conversor A/D.
• Poner a cero el bit ADIF
• Poner a 1 el bit ADIE
• Permitir las interrupciones de los periféricos (bit
PEIE=1)
• Permitir las interrupciones (bit GIE = 1) bit
3. Esperar el tiempo requerido para la adquisición.
CCFF DPE MÓDULO DE PROYECTOS
17
Programación del Conversor A/D
4. Comienzo de la conversión
• Poner a 1 el bit GO/DONE (ADCON0)
5. Esperar a que finalice la conversión
La finalización puede detectarse:
• Comprobando cuando se pone a cero el bit GO/DONE
(esto ocurre cuando finaliza la conversión)
• Esperando a que se produzca una interrupción del
conversor A/D, si esta esta habilitada.
CCFF DPE MÓDULO DE PROYECTOS
18
Programación del Conversor A/D
6. Lectura el resultado de la conversión A/D
• El resultado se encontrará en el par de registros
(ADRESH:ADRESL), y con el formato seleccionado.
• Poner a 0 el bit ADIF (flag de la interrupción A/D), si la
interrupción está habilitada.
7. Para una nueva conversión
• Se debe volver a los pasos 1 y 2, el tiempo que se debe
esperar entre dos conversiones es de 2.TAD
CCFF DPE MÓDULO DE PROYECTOS
19
Requisitos Para la Conversión A/D
Para que el conversor pueda tener la precisión
especificada, debe permitirse que el condensador de
capturara y mantenimiento, alcance el valor de la
tensión de entrada del canal
El modelo equivalente de una entrada analógica es el
siguiente:
CCFF DPE MÓDULO DE PROYECTOS
20
Requisitos Para la Conversión A/D
La impedancia de la fuente (RS), afecta a la carga del
condensador de muestreo, por ello se limita su valor, de
tal forma que no debe sobrepasar el valor de 10k, si su
valor disminuye, el tiempo de adquisición también lo hará.
El tiempo de adquisición viene dado por la siguiente expresión:
CCFF DPE MÓDULO DE PROYECTOS
21
Selección del Reloj del Convertidor A/D
Como ya se ha indicado anteriormente, se denomina TAD
al tiempo que se tarda en convertir un bit. Ya se ha
indicado que el tiempo mínimo necesario para efectuar
una conversión a 10 bits es de 12.TAD.
La señal de reloj del convertidor A/D se fija mediante
software, siendo las posibilidades:
Fos/2; Fosc/8; Fosc/32; Frc (procede del osilador Interno)
Los periodos de TAD, referidos a los periodos del reloj del
microcontrolador serán:
CCFF DPE MÓDULO DE PROYECTOS
22
Selección del Reloj del Convertidor A/D
ADCS1:0
FRECUENCIA DEL
RELOJ DEL
CONVERSOR A/D
TAD
00
Fosc/2
2.Tosc
01
Fosc/8
8.Tosc
10
Fosc/32
32.Tosc
11
Frc
Oscilador RC interno
en el C. A/D
CCFF DPE MÓDULO DE PROYECTOS
23
El valor mínimo que debe poseer TAD es de 1,6 μsegundos.
Veamos que valores toma TAD para diferentes combinaciones de
los bits ADCS1:0 y diferentes frecuencias de funcionamiento del
micro.
Selección TAD
Frecuencia de funcionamiento del Micro
TAD
ADSC1:0 20Mhz
5Mhz
1.25Mhz
333.33Mhz
2Tosc
8Tosc
32Tosc
RC
00
01
10
11
400ns
1.6us
6.4us
2-6us
1.6us
6.4us
25.6us
2-6us
6us
24us
98us
2-6us
100ns
400ns
1.6us
2-6us
Los valores marcados en rojo violan el mínimo tiempo requerido de TAD
La fuente RC tiene un TAD típico de 4 us, el PIC con Frecuencias superiores a
1MHz, , el modo RC solo es recomendable en modo sleep.
CCFF DPE MÓDULO DE PROYECTOS
24
Descargar