View
6
Download
0
Category
Preview:
Citation preview
Conversor A/D
Conversor Analógico a Digital
UNEXPO – Pto. Ordaz. MICROPROCESADORESProf. Antonio PatetiProf. Antonio Pateti
Conversor A/D
SensorNivel
ControladorAnalógico
Analógico
ValorDeseado
UNEXPO – Pto. Ordaz. MICROPROCESADORES
Proceso
ProcesoControladorV.D.
Prof. Antonio PatetiProf. Antonio Pateti
Controlador Digital
Conversor A/D
ProcesoControladorV.D.
UNEXPO – Pto. Ordaz. MICROPROCESADORES
MicroprocesadorA/D D/A
Prof. Antonio PatetiProf. Antonio Pateti
Conversor A/D
Conversor Analógico a Digital:
Convierte el voltaje analógico enun numero digital
UNEXPO – Pto. Ordaz. MICROPROCESADORES
ConvertidorA/D
1,53 Volt ‘1110’B
‘E’H
‘14’D
Prof. Antonio PatetiProf. Antonio Pateti
Conversor A/D
Conversor Analógico a Digital:
El voltaje de entrada esta limitado porun rango definido por el Voltaje dereferencia
VREF+
UNEXPO – Pto. Ordaz. MICROPROCESADORES
ConvertidorA/DV D
VREF-
Prof. Antonio PatetiProf. Antonio Pateti
Conversor A/D
Conversor Analógico a Digital:
El número de salida esta definido porlos bits del conversor (Resolución)
D0
VREF+
UNEXPO – Pto. Ordaz. MICROPROCESADORES
ConvertidorA/D
VD0D1D2
D3
VREF-
Posee 16 estados(24), la salida vadesde 0000 a 1111
Prof. Antonio PatetiProf. Antonio Pateti
Conversor A/D
Resolución en el conversor A/D : ConvertidorA/D
ViD0
+5V
0V
D1D2D3
Para un conversor de n bits se tiene: Se tiene 2n estados
Un A/D de 8 bits posee 256 estados
UNEXPO – Pto. Ordaz. MICROPROCESADORES
Un A/D de 10 bits posee 1024 estados
Para mayor Resolución menor errorde cuantización
Prof. Antonio PatetiProf. Antonio Pateti
Un A/D de 12 bits posee 4069 estados
Conversor A/D
Grafica de transferencia del Conversor A/D:
ConvertidorA/D
ViD0
+5V
0V
D1D2
D3
D
1111
1110
1101
1100
1011
1010
1001
UNEXPO – Pto. Ordaz. MICROPROCESADORES
Vi54,664,3343,663,333
1000
2,66
0111
2,33
0110
2
0101
1,66
0100
1,33
0011
10,66
0010
0,33
0001
00000
Prof. Antonio PatetiProf. Antonio Pateti
Conversor A/D
Error de Cuantización :
ConvertidorA/D
ViD0
+5V
0V
D1D2
D3
D 0010
El máximo errorde cuantizaciónes de ½ LSB
UNEXPO – Pto. Ordaz. MICROPROCESADORES
Vi0,660,33
0001
00000
0,332
0,332
El máximo errorde cuantizaciónes de ½ LSB
Prof. Antonio PatetiProf. Antonio Pateti
Conversor A/D
Ecuación de transferencia para el conversor A/D :
REFREF
REFinn VV
VVD
)12(
Para un conversor de 10 bits, VREF+=5Volt, VREF-=0Volt,se tiene:
UNEXPO – Pto. Ordaz. MICROPROCESADORES
Para un conversor de 10 bits, VREF+=5Volt, VREF-=0Volt,se tiene:
inVD 6,204
Prof. Antonio PatetiProf. Antonio Pateti
Conversor A/D
Ecuación de transferencia para el conversor A/D :
REFREF
REFinn VV
VVD
)12(
Para un conversor de 12 bits, VREF+=5Volt, VREF-=0Volt,se tiene:
UNEXPO – Pto. Ordaz. MICROPROCESADORES
Para un conversor de 12 bits, VREF+=5Volt, VREF-=0Volt,se tiene:
inVD 819
Prof. Antonio PatetiProf. Antonio Pateti
A/DD
Conversor A/D
Esquema simplificado de un conversor A/D
MUX. A.
Sampled & Hold2,33V
0111A/D
UNEXPO – Pto. Ordaz. MICROPROCESADORES
t=0 I.C.
2,33V
tACQ Tiempo Conversión
F.C.
0111
Prof. Antonio PatetiProf. Antonio Pateti
Conversor Analógico a Digital del PIC16F1787
Conversor A/D
UNEXPO – Pto. Ordaz. MICROPROCESADORES
Conversor Analógico a Digital del PIC16F1787
Prof. Antonio PatetiProf. Antonio Pateti
Conversor A/D
Conversor Analógico a Digital del PIC16F1787:
Posee canal de entrada diferencial V+ y V-
Posee hasta 15 canales
El ADC es de 10 ó 12 bits de Aproximaciones Sucesivas
UNEXPO – Pto. Ordaz. MICROPROCESADORES
El ADC es de 10 ó 12 bits de Aproximaciones Sucesivas
El ADC puede configurarse el VREF interno o externo
Prof. Antonio PatetiProf. Antonio Pateti
El ADC puede dar resultado en complemento a 2 omagnitud y signo
Conversor A/D
Pines utilizados por el A/D
AN0 RA0AN1 RA1AN2 RA2AN3 RA3AN4 RA5AN5 RE0AN6 RE1AN7 RE2AN8 RB2AN9 RB3AN10 RB1AN11 RB4AN12 RB0AN13 RB5AN21 RD1
UNEXPO – Pto. Ordaz. MICROPROCESADORESProf. Antonio PatetiProf. Antonio Pateti
AN0 RA0AN1 RA1AN2 RA2AN3 RA3AN4 RA5AN5 RE0AN6 RE1AN7 RE2AN8 RB2AN9 RB3AN10 RB1AN11 RB4AN12 RB0AN13 RB5AN21 RD1
Registros utilizados por el ADC
• ACON0, ADCON1,ADCON2
• ADRESH, ADRESL
Conversor A/D
• ANSELA, ANSELB,ANSELD, ANSELE
UNEXPO – Pto. Ordaz. MICROPROCESADORESProf. Antonio PatetiProf. Antonio Pateti
• ANSELA, ANSELB,ANSELD, ANSELE
Conversor A/DDiagrama en bloque del ADC del PIC16F1787
UNEXPO – Pto. Ordaz. MICROPROCESADORESProf. Antonio PatetiProf. Antonio Pateti
S/H
Conversor A/DModelo de la entrada en el ADC del PIC16F87x
VIN CPIN5 pF
VT=0,6V
VT=0,6V
VDD
RIC ≤ 1K RSSSS
I fuga± 100nA CHOLD=120 pF
RSANx
Switch demuestreo
AlADC
UNEXPO – Pto. Ordaz. MICROPROCESADORES
Donde: CPIN: Capacitor de Entrada
VT: Voltaje umbral del diodo
I Fuga: Corriente de fuga por las conexiones
RIC: Resistencia de interconexión
SS: Switch del S/H
CHOLD: Capacitor del S/H
Prof. Antonio PatetiProf. Antonio Pateti
Conversor A/DTiempo de Adquisición y de Conversión
Tiempo de Adquisición:(TACQ)
Rs
VAIN
5 pF
CPIN
VT = 0.6V
VT = 0.6V
CHOLD = 120 pF
RIC < 1K RSSSSANx
VDD
I fuga 100 nA
SwitcheMuestreo
TACQ = TAMP + TC + TCOFF
UNEXPO – Pto. Ordaz. MICROPROCESADORES
Donde: TAMP: Tiempo Ajuste (2 Seg)TC: Tiempo de carga o descarga del CHOLDTCOFF: Coeficiente de Temperatura
Prof. Antonio PatetiProf. Antonio Pateti
Conversor A/DTiempo de Adquisición y de Conversión
Tiempo de Adquisición (TACQ)
TACQ = TAMP + TC + TCOFF
TAMP = 2 Seg
TC =-(CHOLD)(RIC+RSS+RS)ln(1/2047)
Rs
VAIN
5 pF
CPIN
VT = 0.6V
VT = 0.6V
CHOLD = 120 pF
RIC < 1K RSSSSANx
VDD
I fuga 100 nA
SwitcheMuestreo
UNEXPO – Pto. Ordaz. MICROPROCESADORES
TC =-(CHOLD)(RIC+RSS+RS)ln(1/2047)
TCOFF=(Temp-25ºC)(0,05S/ºC) Si Temp>25ºC
Prof. Antonio PatetiProf. Antonio Pateti
Conversor A/DTiempo de Adquisición y de Conversión
Calculo de TACQ
TACQ = TAMP + TC + TCOFF
TAMP = 2 Seg
TC =-(CHOLD)(RIC+RSS+RS)ln(1/2047)
TCOFF=(Temp-25ºC)(0,05S/ºC) Si Temp>25ºC
UNEXPO – Pto. Ordaz. MICROPROCESADORES
Datos:CHOLD = 120 pFRSS = 7 KΩ, para VDD = 5VRIC = 1 KΩ
Prof. Antonio PatetiProf. Antonio Pateti
Conversor A/DTiempo de Adquisición y de Conversión
Calculo de TACQ Datos: CHOLD = 120 pFRSS = 7 KΩ, para VDD = 5VRIC = 1 KΩ
Para RS=10K y Temp=30ºC
TC=-(120 pF)(1 K+7 K+10 K)ln(1/2047)
TC = 16,47 S
Para RS=50 y Temp=30ºC
TC=-(120 pF)(1 K+7 K+50 )ln(1/2047)
TC = 7,36 S
UNEXPO – Pto. Ordaz. MICROPROCESADORES
TC = 16,47 S
TCOFF=(30ºC-25ºC)(0,05S/ºC)
TCOFF = 0,25 S
TACQ= 2 S + 16,47 S + 0,25 S
TACQ= 18,72 S
TC = 7,36 S
TCOFF=(30ºC-25ºC)(0,05S/ºC)
TCOFF = 0,25 S
TACQ= 2 S + 7,36 S + 0,25 S
TACQ= 9,61 S
Prof. Antonio PatetiProf. Antonio Pateti
Conversor A/D
ADRMD:Modo de Formato para el resultado del ADC0: Formato del ADC de 12 bits1: Formato del ADC de 10 bits
ADCON0
UNEXPO – Pto. Ordaz. MICROPROCESADORESProf. Antonio PatetiProf. Antonio Pateti
GO/DONE:Bit de estatus del conversor ADC0: Fin de conversión o no hay conversión en progreso1: Conversión en progreso. Va a ‘0’ cuando finaliza Conversión
ADON:Modo de Formato para el resultado del ADC0: ADC Deshabilitado1: ADC Habilitado
Conversor A/D
CHS<4:0>: Selección de la entrada positiva del ADC00000: AN000001: AN100010: AN200011: AN300100: AN400101: AN500110: AN600111: AN701000: AN801001: AN901010: AN1001011: AN1101100: AN1201101: AN13
01110: Reservado (No hay canal conectado)
10101: AN21
11101: Indicador de Temperatura11110: Salida DAC11111: Voltaje de Referencia (FRV).
ADCON0
UNEXPO – Pto. Ordaz. MICROPROCESADORESProf. Antonio PatetiProf. Antonio Pateti
CHS<4:0>: Selección de la entrada positiva del ADC00000: AN000001: AN100010: AN200011: AN300100: AN400101: AN500110: AN600111: AN701000: AN801001: AN901010: AN1001011: AN1101100: AN1201101: AN13
01110: Reservado (No hay canal conectado)
10101: AN21
11101: Indicador de Temperatura11110: Salida DAC11111: Voltaje de Referencia (FRV).
Conversor A/DADCON1
ADFM: Formato para el resultado del ADC0: Formato del ADC con Magnitud y Signo1: Formato del ADC en complemento a 2
CDCS<2:0>: Selección del Periodo para el reloj del conversor AD000: Fosc/2001: Fosc/8010: Fosc/32011: FRC100: Fosc/4101: Fosc/16110: Fosc/64111: FRC
UNEXPO – Pto. Ordaz. MICROPROCESADORESProf. Antonio PatetiProf. Antonio Pateti
CDCS<2:0>: Selección del Periodo para el reloj del conversor AD000: Fosc/2001: Fosc/8010: Fosc/32011: FRC100: Fosc/4101: Fosc/16110: Fosc/64111: FRC
Conversor A/DADCON1
ADNREF: Configuración de VREF-0: VREF- es Vss1: VREF- es conectado al pin VREF-
UNEXPO – Pto. Ordaz. MICROPROCESADORESProf. Antonio PatetiProf. Antonio Pateti
ADPREF<1:0>: Configuración de VREF+00: VREF+ es conectado a VDD01: VREF+ es conectado al pin VREF+10: Reservado11: VREF+ es conectado internamente a FVR
Conversor A/DADCON2
TRIGSEL<3:0>: Selección para la Auto conversión del ADC0000: Deshabilitado0001: Se da Inicio de Conversión por CCP10010: Se da Inicio de Conversión por CCP20011: Reservado. Deshabilitado0100: Se da Inicio de Conversión por PSMC10101: Se da Inicio de Conversión por PSMC10110: Se da Inicio de Conversión por PSMC10111: Se da Inicio de Conversión por PSMC21000: Se da Inicio de Conversión por PSMC21001: Se da Inicio de Conversión por PSMC21010: Se da Inicio de Conversión por PSMC31011: Se da Inicio de Conversión por PSMC31100: Se da Inicio de Conversión por PSMC31101: Reservado. Deshabilitado1110: Reservado. Deshabilitado1111: Reservado. Deshabilitado
UNEXPO – Pto. Ordaz. MICROPROCESADORESProf. Antonio PatetiProf. Antonio Pateti
TRIGSEL<3:0>: Selección para la Auto conversión del ADC0000: Deshabilitado0001: Se da Inicio de Conversión por CCP10010: Se da Inicio de Conversión por CCP20011: Reservado. Deshabilitado0100: Se da Inicio de Conversión por PSMC10101: Se da Inicio de Conversión por PSMC10110: Se da Inicio de Conversión por PSMC10111: Se da Inicio de Conversión por PSMC21000: Se da Inicio de Conversión por PSMC21001: Se da Inicio de Conversión por PSMC21010: Se da Inicio de Conversión por PSMC31011: Se da Inicio de Conversión por PSMC31100: Se da Inicio de Conversión por PSMC31101: Reservado. Deshabilitado1110: Reservado. Deshabilitado1111: Reservado. Deshabilitado
Conversor A/DADCON2
CHSN<3:0>: Selección de la entrada negativa del ADC0000: AN00001: AN10010: AN20011: AN30100: AN40101: AN50110: AN60111: AN71000: AN81001: AN91010: AN101011: AN111100: AN121101: AN131110: AN211111: VREF-. Seleccionado por ADNREF
UNEXPO – Pto. Ordaz. MICROPROCESADORESProf. Antonio PatetiProf. Antonio Pateti
CHSN<3:0>: Selección de la entrada negativa del ADC0000: AN00001: AN10010: AN20011: AN30100: AN40101: AN50110: AN60111: AN71000: AN81001: AN91010: AN101011: AN111100: AN121101: AN131110: AN211111: VREF-. Seleccionado por ADNREF
ADNREF: Configuración de VREF-0: VREF- es Vss1: VREF- es conectado al pin VREF-
Conversor A/DFormato del Resultado del ADC
ADFM: Formato para el resultado del ADC0: Formato del ADC con Magnitud y Signo1: Formato del ADC en complemento a 2
ADRMD: Modo de Formato para el resultado del ADC0: Formato del ADC de 12 bits1: Formato del ADC de 10 bits
UNEXPO – Pto. Ordaz. MICROPROCESADORESProf. Antonio PatetiProf. Antonio Pateti
Conversor A/DFormato del Resultado del ADC
ADFM: Formato para el resultado del ADC0: Formato del ADC con Magnitud y Signo1: Formato del ADC en complemento a 2
ADRMD: Modo de Formato para el resultado del ADC0: Formato del ADC de 12 bits1: Formato del ADC de 10 bits
UNEXPO – Pto. Ordaz. MICROPROCESADORESProf. Antonio PatetiProf. Antonio Pateti
Conversor A/DEjemplo del Formato del Resultado del ADC
ADFM: Formato para el resultado del ADC0: Formato del ADC con Magnitud y Signo1: Formato del ADC en complemento a 2
ADRMD: Modo de Formato para el resultado del ADC0: Formato del ADC de 12 bits1: Formato del ADC de 10 bits
UNEXPO – Pto. Ordaz. MICROPROCESADORESProf. Antonio PatetiProf. Antonio Pateti
Conversor A/DTiempo de Adquisición y de Conversión
t=0 I.C.GO=1
tACQ Tiempo Conversión
F.C.ADIF=1GO=0
UNEXPO – Pto. Ordaz. MICROPROCESADORESProf. Antonio PatetiProf. Antonio Pateti
Conversor A/DTiempo de Adquisición y de Conversión
t=0 I.C.GO=1
tACQ Tiempo Conversión
F.C.ADIF=1GO=0
BSF ADCON0,GO
Q4
A/D CLK TACQ
TCNV
TAD
1Tcy
UNEXPO – Pto. Ordaz. MICROPROCESADORES
A/D CLK
9 8 7 ... ... 2 1 0A/D DATA
ADIF
ADRES OLD_DATA NEW_DATA
GO DONE
SAMPLE SAMPLING STOPPED
TACQ
Inicio Conversión
Fin de Conversión
Desconecta CHOLDConecta CHOLD
Prof. Antonio PatetiProf. Antonio Pateti
Conversor A/DCalculo del TAD del conversor A/D
CDCS<2:0>: Selección del Periodo para el reloj del conversor AD000: Fosc/2001: Fosc/8010: Fosc/32011: FRC100: Fosc/4101: Fosc/16110: Fosc/64111: FRC
UNEXPO – Pto. Ordaz. MICROPROCESADORESProf. Antonio PatetiProf. Antonio Pateti
Conversor A/DInicio de conversión para el A/D (GO=‘1’):
Hay dos formas de colocar GO=‘1’: Por Software: (BSF ADCON0,GO)
De forma automática configurando losbits TRIGSEL<3:0> para que de iniciode conversión de forma automática.
En nuestro caso por CCP1 y CCP2
UNEXPO – Pto. Ordaz. MICROPROCESADORES
De forma automática configurando losbits TRIGSEL<3:0> para que de iniciode conversión de forma automática.
En nuestro caso por CCP1 y CCP2
Prof. Antonio PatetiProf. Antonio Pateti
Conversor A/DInicio de conversión para el A/D (GO=‘1’):
CCPRxH CCPRxL
TMR1H TMR1L
CCPxIF
CCPx
CCPxCON<3:0>4
ComparadorLógica deSalida
S
R
Q
Disparo deEvento
Espaciales
TRISC<x>
0008↑
UNEXPO – Pto. Ordaz. MICROPROCESADORES
TMR1H TMR1LCCPxCON<3:0>TRISC<x>
1011 00 0000 0100 0200 0300 0400 0500 0600 0700 0800 0000 01
CCPRxCCPxIFGO=1
TIC=(CCPRx +1)*(4*Tosc)*PreD_T1
Prof. Antonio PatetiProf. Antonio Pateti
AN0 RC2
VDD
TMR2=PR2
TMR2=AN0
TMR2=PR2
PIC 16F877
Conversor A/D
Ejemplo con el Conversor A/D:
AN0 RC2
VDD
TMR2=PR2
TMR2=AN0
TMR2=PR2
PIC 16F877
UNEXPO – Pto. Ordaz. MICROPROCESADORES
El TPWM=4096 seg Se debe dar un Inicio de Conversión
cada 1 mSeg.
Prof. Antonio PatetiProf. Antonio Pateti
Conversor A/D
Ejemplo con el Conversor A/D:
R Q
CCPR1L
CCPR1H
Comparador
CCP1X:CCP1YCCP1R1LADRESH
CCP1X:CCP1YADRESL<7,6>
UNEXPO – Pto. Ordaz. MICROPROCESADORES
CCP1R
S
Q
TRISC<x>
Comparador
TMR2
Comparad
PR2PWMPeriodo = [PR2+1]4Tosc[PreDiv TMR2]
4096 Seg = [255+1]1 Seg 16
Prof. Antonio PatetiProf. Antonio Pateti
Conversor A/DDiagrama de Flujo
Inicio
Init_Port RC2 Salida
Init_Timer1 T1CON 0x01Pre-Div 1Se utiliza con el modulo CCP2,Para disparos de eventos especiales
Init_CCP2 CCP2CON 0x0BCCPR2 .1023
Modo comparación, eventos especialesGO1 cuando TMR1=CCPR2
Salida del PWM (CCP1)
UNEXPO – Pto. Ordaz. MICROPROCESADORES
1
Init_CCP2 CCP2CON 0x0BCCPR2 .1023
Modo comparación, eventos especialesGO1 cuando TMR1=CCPR2
Init_ADC ADCON1 0x0EADCON0 0x41
TAD Fosc/8RA0 AN0Selecciona AN0Justificado Izq.
Prof. Antonio PatetiProf. Antonio Pateti
ADIF=1
Conversor A/DDiagrama de Flujo
Init_Timer2
1
T2CON 0x06PR2 0xFF
Init_CCP1 CCP1CON0x0CCCP1 como PWMPeriodo = 4096SegCU= ADRESH:ADRESL<7,6>
Pre-Div 16Para el PWM
NO
CCP1R1LADRESH
SI
ADIF=1
UNEXPO – Pto. Ordaz. MICROPROCESADORES
NO
CCP1X:CCP1YADRESL<7,6>
Prof. Antonio PatetiProf. Antonio Pateti
Recommended