Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Conversin A/D
Un sistema de conversin A/D hacer llegar al controlador digital la informacin suministrada por el proceso analgico que se desea controlar. Establece una relacin biunvoca entre el valor de la seal en su entrada y la palabra digital obtenida en su salida. La conversin A/D se fundamenta en la teora de muestreo: Si una seal continua,
S(t) , tiene una banda de frecuencia en la que fm es la mayor frecuencia, dicha seal podr reconstruirse sin distorsin a partir de muestras de la seal tomadas a una frecuencia de valor fs > 2fm
Circuitos de captura y mantenimiento (S/H=Sample and hold): Muestrean la seal analgica (durante un intervalo de tiempo) y mantienen ese valor, generalmente en un condensador, durante el tiempo que dura la transformacin A/D propiamente dicha.
2,5 < 3,2 mitad superior 2) Prueba con 1100 (3,75V) 3,75 > 3,2 mitad inferior 3) Prueba con 1010 (3,125V)
3,125 < 3,2 mitad superior 4) Prueba con 1011 (3,4375V) 3,4375 > 3,2 valor inferior
10
12
ADCS1:ADCS0: Seleccin del reloj para la conversin A/D 00 = fOSC/2 01 = fOSC/8 10 = fOSC/32 CHS2:CHS0: Seleccin del canal de conversin 000 = Canal 0 001 = Canal 1 010 = Canal 2 100 = Canal 4 101 = Canal 5 110 = Canal 6 GO/DONE: Estado de la conversin Si ADON=1: 1 = Conversin en progreso
bit 2
0 = Conversin finalizada
bit 0
ADON: Bit de encendido del convertidor A/D 1 = Mdulo A/D encendido 0 = Mdulo A/D apagado 13
bit 7
ADFM: Seleccin de formato del resultado 1 = Ajuste a la derecha 0 = Ajuste a la izquierda PCFG3:PCFG0: Configuracin de las entradas al mdulo A/D
bit 3-0
14
bit 7-6
ADCS1:ADCS0: Seleccin del reloj para la conversin A/D junto con ADCS2 que est en ADCON1. 00 = fOSC/2 00 = fOSC/4 01 = fOSC/8 01 = fOSC/16 10 = fOSC/32 10 = fOSC/64 11 = fRC 11 = fRC
ADCS2=0 ADCS2=1
bit 6
ADCS2: Seleccin de reloj para conversin A/D junto con ADCS1 y ADCS0.
15
bit 7 bit 6
GIE: Habilitacin global de interrupciones PEIE: Habilitacin de interrupciones de perifricos Registro PIE1 (8Ch)
bit 6
bit 6
ADIF: Flag de la interrupcin del convertidor A/D 1 = Conversin A/D completada. 0 = Conversin A/D an no completada. 16
1. Configurar el mdulo A/D. Definir entradas analgicas y tensin de referencia. (ADCON1) Seleccionar el canal de la conversin. (ADCON0) Seleccionar el reloj de la conversin. (ADCON0) Encender el mdulo A/D. (ADCON0) 2. 3. Configurar la interrupcin por conversin A/D. Bajar el flag ADIF. (PIR1). Habilitar la interrupcin del convertidor A/D. (PIE1). Habilitar las interrupciones de los perifricos. (INTCON). Habilitar la mscara global de interrupciones. (INTCON) Esperar a que transcurra el tiempo de adquisicin. Tiempo necesario para capturar el valor analgico a convertir. Los valores tpicos del tiempo de adquisicin son del orden de 20s. 17
18
Mxima impedancia recomendada para la fuente: Rs<10K. En estas condiciones, TACQ 20S Hasta que no acabe la conversin, no empieza otra adquisicin (SS abierto) Esperar TACQ : a) Tras una conversin; b) tras seleccionar un nuevo canal; c) Tras encender el mdulo AD 19
El fichero 16f876.h incluye como primera directiva #device PIC16F876. Es necesario incluir informacin del tipo de conversor A/D. Por ello los ficheros C que usen este mdulo debern comenzar por: #device 16F876.h #device adc=10
22
23
24
25
26
ad_fuente.h
27
LCD1
LM016L
RS RW E 4 5 6
1 2 3
U1
9 10 1 OSC1/CLKIN OSC2/CLKOUT MCLR/Vpp/T HV RA0/AN0 RA1/AN1 RA2/AN2/VREFRA3/AN3/VREF+ RA4/T0CKI RA5/AN4/SS RB0/INT RB1 RB2 RB3/PGM RB4 RB5 RB6/PGC RB7/PGD RC0/T1OSO/T1CKI RC1/T1OSI/CCP2 RC2/CCP1 RC3/SCK/SCL RC4/SDI/SDA RC5/SDO RC6/TX/CK RC7/RX/DT 21 22 23 24 25 26 27 28 11 12 13 14 15 16 17 18
RV1 BAT1
5
RV1(3) 2 3 4 5 6 7
1k
PIC16F876
1 LSB =
7 8 9 10 11 12 13 14
D0 D1 D2 D3 D4 D5 D6 D7
28
LCD1
LM016L
RS RW E 4 5 6
1 2 3
U1
9 10 1 OSC1/CLKIN OSC2/CLKOUT MCLR/Vpp/T HV RA0/AN0 RA1/AN1 RA2/AN2/VREFRA3/AN3/VREF+ RA4/T0CKI RA5/AN4/SS RB0/INT RB1 RB2 RB3/PGM RB4 RB5 RB6/PGC RB7/PGD RC0/T1OSO/T1CKI RC1/T1OSI/CCP2 RC2/CCP1 RC3/SCK/SCL RC4/SDI/SDA RC5/SDO RC6/TX/CK RC7/RX/DT 21 22 23 24 25 26 27 28 11 12 13 14 15 16 17 18
RV1 BAT1
5
RV1(3) 2 3 4 5 6 7
1k
PIC16F876
Simular en ISIS
7 8 9 10 11 12 13 14
D0 D1 D2 D3 D4 D5 D6 D7
29