Escolar Documentos
Profissional Documentos
Cultura Documentos
SISTEMAS MICROCONTROLADOS
SISTEMAS MICROCONTROLADOS
Captulo 9
Conversor A/D
Este convertidor permite la conversin de hasta 14 entradas analgicas. El convertidor (figura 9.1) es de diez bits y convierte por aproximaciones sucesivas. La seal de referencia para el convertidor puede ser VDD o el valor ledo a travs de las patillas AN3/VREF+, AN2/VREF-. Tiene la caracterstica especial de que puede funcionar en modo de reposo.
Los registros asociados al convertidor son: ADCON0: Controlan la operacin A/D del mdulo. ADCON1: Configura las funciones de los pines de los puertos. ADRESH y ADRESL : Resultado de la conversin. ANSEL y ANSELH: seleccin del canal analgico. A continuacin se realiza la descripcin de cada uno de ellos. El registro ADCON0 consta de los siguientes bits:
146
bit 7:6
ADCS1:ADCS0: Bits de seleccin del reloj para la conversin A/D. Con ADSC2 del registro ADCON1=0 00 = FOSC/2.
01 = FOSC/8. 10 = FOSC/32. 11 = FRC (Reloj del oscilador interno RC).
bit 5:2
CHS2:CHS0: Bits de seleccin del canal. 0000 = Canal 0, (AN0). 0001 = Canal 1, (AN1). 0010 = Canal 2, (AN2). 0011 = Canal 3, (AN3). 0100 = Canal 4, (AN4). 0101 = Canal 5, (AN5). 0110 = Canal 6, (AN6). 0111 = Canal 7, (AN7). 1000 = Canal 8, (AN8). 1001 = Canal 9, (AN9). 1010 = Canal 10, (AN10). 1011 = Canal 11, (AN11). 1100 = Canal 12, (AN12). 1101 = Canal 13, (AN13). 1110 = CVREF 1111=Referencia corregida (0.6V voltaje de referencia corregida)
bit 1
GO/ DONE: Bits de estado de la conversin Cuando ADCON = 1 1 = Conversin en proceso (poner a 1 para iniciar una conversin). 0 = La conversin ha finalizado/o no esta en progreso.
bit 0
ADCON: Activacin del conversor A/D. 1 = El comparador est activado. 0 =El comparador no est activado.
147
bit 7
ADFM: A/D bit de seleccin de formato de la conversin. 1 = Justificado a la derecha. Los seis bits ms significativos de ADRESH se leen como cero 0. 0 = Justificado ala derecha. Los seis bits menos significativos de ADRESL se leen como. 0.
bit 6 bit 5
bit 4
bit 3:0
Los pasos a seguir para realizar una conversin A/D son: 1. Configurar mdulo A/D: a. Configuracin de pines analgicos/ Tensin de referencia/ E/S digitales (ANSEL, ANSELH). b. Seleccin de la entrada A/D (ADCON0). c. Seleccin de reloj para la conversin A/D (ADCON0). d. Habilitar mdulo A/D (ADON (ADCON0<0>) 2. Configurar las interrupciones (si se quiere): a. ADIF =0 b. GIE = PEIE = ADIE = 1 3. Esperar el tiempo de adquisicin.
148
4. Comenzar la conversin poniendo a 1 el bit GO/ DONE (ADCON0<2>). 5. Esperar a que termine la conversin. Puede ser de dos formas: a. Leyendo constantemente el bit GO/ DONE hasta que se ponga a 0, indicando el fin de la conversin. b. Esperando a que se produzca la interrupcin. 6. Leer registro de conversin ADRESH y ADRESL y borrar el flag ADIF si es necesario. 7. Para la siguiente conversin se salta a los puntos 1, 2 3 en funcin de lo que se necesite. El tiempo de conversin por bit se define como TAD. Un mnimo de 2TAD son necesarios antes de la conversin. Para la conversin existen ciertos requerimientos de tiempos: Tiempo de adquisicin (TACQ): Es el tiempo que tarda en cargarse el condensador de retencin con la tensin de la salida. Esta carga depende de varios factores, como pueden ser las impedancias asociadas a la fuente de tensin y a los interruptores de muestreo. Se calcula as: TACQ = TAMP + TC + TCOFF Siendo TAMP el tiempo de establecimiento del amplificador, TC el tiempo de carga del condensador y TCOFF el coeficiente de temperatura. El tiempo de adquisicin es del orden de 11s. Tiempo de conversin por bit (TAD): Para convertir 10 bits se requiere un tiempo de 9.5TAD. Por otro lado, el TAD va a depender de la fuente de reloj que se seleccione para la conversin. Para una correcta conversin A/D, el reloj debe seleccionarse para asegurar un tiempo TAD de 1,6 s. En la tabla 4.2 se muestran las distintas fuentes que se pueden seleccionar junto con el TAD asociado a cada una de ellas.
TABLA 4.2 TAD frente a la frecuencia de operacin del dispositivo.
149
4: Para dispositivos de frecuencias superiores a 1MHz, el dispositivo debe de estar en modo SLEEP para la conversin completa, o la precisin del convertidor A/D puede estar fuera de las especificaciones.
El tiempo necesario para la conversin tambin depende de la resolucin con que se quiera realizar dicha conversin. De este modo: Tiempo de conversin = TAD + N TAD + (10 N) (2TOSC), Siendo N el nmero de bits a convertir. Este tiempo de conversin se puede forzar violando los requerimientos de TAD. En la figura 9.2 se muestra la secuencia de la conversin A/D.
La funcin de transferencia ideal del convertidor A/D es aquella cuya primera transicin ocurre cuando la tensin analgica de entrada es 1 unidad del bit menos significativo del resultado (VREF/256) (figura 9.2).
150
Para la conversin, los TRIS asociados tienen que configurase como entradas. Adems Si el mdulo CCPx est configurado en modo de comparacin con trigger interno, ste disparar la conversin A/D.
151
Los distintos valores que pueden obtener, en funcin de los bits VR3:VR0 (VRCON<3:0>) y VRR (VRCON<5>), con una alimentacin de 5V son los indicados en la tabla.
TABLA Voltajes de referencia tpicos con VDD = 5.0 V
VR3:VR0
0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111
152
El registro de control de este mdulo es el registro VRCON que consta de los siguientes bits:
bit 7
VREN: Habilitacin del mdulo CVREF. 1 = El mdulo VREF est conectado. CVREF. 0 = El mdulo VREF est desconectado.
bit 6
VROE: Activacin de la salida del mdulo CVREF 1 = CVREF est habilitado como salida por RA2/AN2/VREF-/CVREF pin. 0 = Tanto el comparador como el pin de salida estn desconectados.
bit 5
VRR: Seleccin del rango de VREF. 1 = De 0V a 0.75 CVRSRC, con un paso de CVRSRC /24. 0 = De 0.25 VDD a 0.75 CVRSRC, con un paso de CVRSRC /32.
VRSS: Seleccin del rango de VREF del comparador. VR3:VR0: Seleccin del valor de CVREF. Cuando VRR = 1: CVREF = (VR<3:0>/24) VDD Cuando VRR = 0: CVREF = VDD + (VR<3:0>/32) VDD
Como se puede ver, no se pueden obtener todo el rango de tensiones desde VDD hasta VSS. Hay que tener en cuenta los consumos de potencia al habilitar el pin de salida de VREF. Adems tambin puede utilizarse como salida del convertidor D/A con una capacidad asociada. Debido a sta capacidad, la tensin de referencia del mdulo debe ser utilizada mediante un buffer como se muestra en la figura 9.5.
153
154