Convertidores Analógico Digitales y Digitales Analógicos
Periféricos
INTERCONEXIONANDO EL MICROCONTROLADOR 8051 CON CONVERTIDORES ANALÓGICOS-DIGITALES Y DIGITALES-ANALÓGICOS.
En todos los sistemas de control, un dispositivo que resulta esencial es el convertidor analógico/Digital, el cual nos permite pasar señales del mundo Analógico al mundo Digital. Existen en el mercado aproximadamente 60 diferentes tipos de convertidores Analógicos - Digitales, que van desde los de 8 bits hasta los de 18 bits, con fijadores internos, de aproximaciones sucesivas, con salidas en 3er. estado, etc., etc., etc. La selección de tal o cual convertidor, va de acuerdo a las necesidades y requerimientos particulares de nuestro sistema propuesto. De la misma manera, para recuperar una señal que ha sido digitalizada, se tiene el convertidor digital - analógico, el cual consiste de un juego de resistencias, que son alimentadas ya sea con un voltaje de referencia conocido, o bien, puestas a tierra ó aterrizadas, lo cual depende directamente de un circuito de interruptores internos, que se abren o cierran dependiendo la señal digital proporcionada (fig. 1).
El voltaje de salida del convertidor D/A est dado por la expresión siguiente: Eo = Vff (a1 2-1 + a2 2-2 + a3 2-3 + .......+ an 2-n ) Donde: Vr es el voltaje analógico de referencia. a1, a2 ,..., an pueden ser los valores digitales 0 ó 1. Vr/2 , es el voltaje proporcionado por el bit más significativo. Vr/2 , es el voltaje proporcionado por el bit menos significativo.
Manual del microcontrolador 8051
1
Dr. Alejandro Vega S.
Regreso al menú principal
Convertidores Analógico Digitales y Digitales Analógicos
Periféricos
El voltaje máximo de salida (cuando todos los bits son iguales a 1) es igual a: Eo = Vr (1/2 + 1/4 + 1/8 +....+ 1/2n ), Lo cual se aproxima a Eo= Vr (1-2-n)
Por ejemplo para Vr=10 Volts, con un convertidor de : a) 8 bits Eo = 10(1-2-8 ) = 9.96 V b) 12 bits Eo = 10(1-2-12 ) = 9. 99 V
Como se puede apreciar el voltaje de salida se aproxima como máximo al voltaje de referencia, a medida que crece el número de bits del convertidor. Las características para seleccionar un convertidor D/A son las siguientes: -Rapidez -Linearidad -Voltaje de salida y baja impedancia. -Resolución 8,10,12,14,16 y 18 bits -Facilidad de ser controlado por µPs. -Exactitud absoluta. -No-linearidad. -Monotonicidad.(Un valor de salida corresponde siempre a un valor de entrada.) -Estabilidad (tiempo, temperatura) En el siguiente ejemplo se trabaja con dos convertidores uno D/A el DAC0830 y el otro A/D el ADC0801 ambos de 8 bits. Mediante el A/D se adquieren datos de manera continua (cada 100µs aprox.) de una señal analógica de entrada. Estos datos se almacenan en una memoria RAM. Mediante el microcontrolador extrae los datos de la RAM y los envía directamente al C-D/A el cual los presentados a la salida recuperando de esta forma la señal analógica. La finalidad de esta acción de adquisición, almacenado y presentación de datos, es poder "congelar" la última señal que fue adquirida y es mostrada en determinado momento. La cantidad de señal que puede ser congelada, representa, los últimos 10,000 datos que fueron adquiridos, es decir los datos tomados durante el último segundo, debido a que el convertidor A/D, tiene un tiempo de adquisición de datos de aproximadamente 10µs (10,000 datos x segundo). Como el C-D/A, tiene una velocidad de conversión muy superior a la del CA/D, (aproximadamente 1 micros), la presentación de datos es más rápida que su muestreo. En nuestro caso particular, se presentan datos nuevos aproximadamente cada 20 micros, es decir, por cada 5 mostrados existe 1 dato adquirido.
Manual del microcontrolador 8051
2
Dr. Alejandro Vega S.
Convertidores Analógico Digitales y Digitales Analógicos
Periféricos
Si partimos de la base de que una pantalla completa del osciloscopio o monitor es llenada por una señal analógica conformada de 10,000 puntos, y que el C-D/A, muestra los 10,000 datos en .2seg, podemos deducir que en 5 barridos de la pantalla completa, el CA/D, habrá adquirido 10,000 datos nuevos. Dicho de otra manera, en cada barrido completo de la pantalla (presentación de 10,000 datos por el C-D/A), se habrán adquirido 2000 datos nuevos por el C-A/D, que serán presentados en el siguiente barrido de la pantalla, perdiéndose los primeros 2000 datos adquiridos. Por tal motivo, se requerirán de dos apuntadores, uno apuntando los datos adquiridos por el C-A/D y el otro los datos mostrados por el C-D/A. Una vez que se ha llenado la primera tabla de 10,000 datos el apuntador del C-D/A se incrementará en 2000, cada vez que haga un barrido completo de la pantalla. Produciendo de esta manera la eliminación de los primeros 2000 datos tomados y exhibición de los últimos 2000 datos adquiridos al final del barrido de la pantalla, creando la simulación de una señal que se recorre cada .2 segs. un 1/5 de la pantalla. La señal parecerá que se mueve hacia la izquierda con una velocidad de una pantalla por segundo. Esta velocidad se puede variar, aumentando el tiempo de adquisición y presentación de datos, lo cual hará que la señal se mueva más lenta.
BUS DE DATOS
31
EA/VP
33pF 19 11.0592Mhz
5V
33pF
18
X2
9
RESET
10uF RESET 100k 1N4148
P0.0 P0.1 P0.2 P0.3 P0.4 P0.5 P0.6 P0.7
X1
12 13 14 15
P2.0 P2.1 P2.2 P2.3 P2.4 P2.5 P2.6 P2.7
INT0 INT1 T0 T1
1 2 3 4 5 6 7 8
P1.0 P1.1 P1.2 P1.3 P1.4 P1.5 P1.6 P1.7
RD WR PSEN ALE/P TXD RXD
39 38 37 36 35 34 33 32
3 4 7 8 13 14 17 18
21 22 23 24 25 26 27 28
1 11
D0 D1 D2 D3 D4 D5 D6 D7
2 5 6 9 12 15 16 19
Q0 Q1 Q2 Q3 Q4 Q5 Q6 Q7
10 9 8 7 6 5 4 3 25 24 21 23 2 26 27
OC G 74LS373
17 16 29 30 11 10
A0 A1 A2 A3 A4 A5 A6 A7 A8 A9 A10 A11 A12 A13 A14
20 22 1
VCC
O0 O1 O2 O3 O4 O5 O6 O7
11 12 13 15 16 17 18 19
10 9 8 7 6 5 4 3 25 24 21 23 2 26 1
A0 A1 A2 A3 A4 A5 A6 A7 A8 A9 A10 A11 A12 A13 A14
20 22 27
CE OE VPP
11 12 13 15 16 17 18 19
D0 D1 D2 D3 D4 D5 D6 D7
CE RD WR
27256
43256
8031 BUS DE DATOS
VCC
6 7
7 6 5 4
10k 16 15 14 13
CONGELA LA IMAGEN VCC
19
CAP
1 2 18 17
D0 D1 D2 D3 D4 D5 D6 D7
Vref D A C 0 8 3 0
ILE CS WR1 WR2 XFER
8
5
Iout1
11
VCC
Iout2
12
Vsal
VCC R1b
9
DGND
3
AGND
10
VCC
20
6 7
6 5
7 5
Vref+ Vref5V
5V
13 11 12 18 17 16 15 14 13 12 11
74HC08
U? A12 A13 A14
1 2 3 6 4 5
A B C G1 G2A G2B
Y0 Y1 Y2 Y3 Y4 Y5 Y6 Y7
15 14 13 12 11 10 9 7
1 2 3 5
DB0 DB1 DB2 DB3 DB4 DB5 DB6 DB7
VI+ VICLKR
7
VREF AGND
MASA ANALOGICA
19
10k 2.5V
9 8 Size A Date:
Manual del microcontrolador 8051
3
150 pf
4
ADC0801
74HC138
1k
VOLTAJE DE ENTRADA
10k CLK
CS RD WR INTR
6
INTERCONEXIONADO DEL MICROCONTROLADOR CON CONVERTIDORES D/A Y A/D Document Number SISTEMA MINIMO 3 April 15, 1998
Sheet
Dr. Alejandro Vega S.
REV of
Convertidores Anal贸gico Digitales y Digitales Anal贸gicos
Perif茅ricos
Programa para el interconexionado y manejo del microcontrolador 8031 con los convertidores A/D y D/A ;******************************************* ;* PROGRAMA PARA MANEJAR LOS CONVERTIDORES * ;* ANA-DIGI Y DIGI-ANA, PARA CONGELAR UNA * ;* IMAGEN EN EL OSCILOSCOPIO * ;*******************************************
0000 0000 0000 0003 0005 0007 0009 000B 000D 000E 000F 0010
BANDERA: EQU 20H.0 020100 C082 C083 8E82 8F83 05A0 E2 F0 A3 8004
0013 0013 B2A8 0015 32 0016 0018 001A 001C 001E 0020 0022 0024 0027 002A 002D 0030 0033 0034 0036 0037 0038 003A 003B 003D 003F 0041 0043 0045 0047
E583 7006 D200 8A82 8B83 AE82 AF83 D5211A D52217 7521D0 752207 30000E EC 2421 FC ED 3422 FD 7004 AC02 AD03 15A0 D083 D082 32
0100 758805 0103 C200
NT0:
NT1:
ORG 00H LJMP CONVER PUSH DPL PUSH DPH MOV DPL,R6 MOV DPH,R7 INC P2 MOVX A,@R0 MOVX @DPTR,A INC DPTR SJMP CONT0
;R7R6==>APUNTADOR ANALO ;APUNTA C-A/D ;ADQUIERE EL DATO ;ALMACENA EL DATO
ORG 13H CPL IE.0 RETI
CONT0:
MOV A,DPH JNZ COINT0 SETB BANDERA MOV DPL,R2 ;VUELVE A CARGAR EL MOV DPH,R3 ;APUNTADOR ANAL`GICO COINT0: MOV R6,DPL ;ALMACENA EL VALOR DEL MOV R7,DPH ;APUNTADOR ANAL`GICO DJNZ 21H,BRIN DJNZ 22H,BRIN MOV 21H,#0D0H ;SE VUELVE A CARGAR MOV 22H,#07H ;EL CONTADOR DE 2000 JNB BANDERA,BRIN MOV A,R4 ADD A,#21H ;SE INCREMENTA EL APUNTA MOV R4,A ;DOR DIGITAL 2000 DATOS MOV A,R5 ADDC A,#22H MOV R5,A JNZ BRIN MOV R4,02H MOV R5,03H BRIN: DEC P2 POP DPH POP DPL RETI CONVER: MOV TCON,#05H CLR BANDERA
Manual del microcontrolador 8051
4
Dr. Alejandro Vega S.
Convertidores Anal贸gico Digitales y Digitales Anal贸gicos
Perif茅ricos
;********************************************** ;* SE INICIAN LOS APUNTADORES EN LA LOCALIDAD * ;* D8F0H ==> -10000 EN LA PARTE SUPERIOR * ;***** DE LA MEMORIA RAM ***** ;********************************************** 0105 0107 0109 010B 010D 010F 0111 0114 0117 011A 011D 0120
7AF0 7BD8 AC02 AD03 AE02 AF03 7521D0 752207 7523D0 752407 75A885 75A077
MOV MOV MOV MOV MOV MOV MOV MOV MOV MOV MOV MOV
R2,#0F0H R3,#0D8H R4,02H R5,03H R6,02H R7,03H 21H,#0D0H 22H,#07H 23H,#0D0H 24H,#07H IE,#85H P2,#77H
;R3R2 ==>APUNTADOR ; INICIAL. ;R5R4 ==>APUNTADOR ; DIGITAL ;R7R6 ==>APUNTADOR ; ANA-DIG ;22H21H==>CONTADOR ; DE 2000 DATOS ;24H23H==>CONTADOR ; DE 1000 DATOS ;INT0 Y INT1 PERMITIDAS ;PARTE ALTA DEL C-D/A
;********************************************** ;**** RUTINAS DE EXHIBICI`N DE DATOS **** ;**** POR EL CONVERTIDOR DIGITAL-ANALO ***** ;********************************************** 0123 8A82 0125 8B83
BRINC0: MOV DPL,R2 MOV DPH,R3
0127 0128 0129 012C 012F 0132 0135 0137 0139 013A 013C 013E 0000
BRINC1: MOVX A,@DPTR ;SE TOMA EL DATO DE LA MOVX @R0,A ;MEMORIA Y SE ENVVA DJNZ 23H,BRINC2 DJNZ 24H,BRINC2 MOV 23H,#10H MOV 24H,#27H MOV DPL,R4 MOV DPH,R5 BRINC2: INC DPTR MOV A,DPH JZ BRINC0 SJMP BRINC1 END
E0 F2 D5230D D5240A 752310 752427 8C82 8D83 A3 E583 60E5 80E7
Manual del microcontrolador 8051
5
Dr. Alejandro Vega S.