Técnicas de Interface: conversor A/D e D/A Prof. Adilson Gonzaga
Interface com Conversores A/D e D/A Conversor A/D ADC Converte um Valor Analógico para Digital Conversor D/A DAC Converte um Valor Digital para Analógico Um Microcontrolador/Microprocessador pode ser usado para Processamento de Sinais. Os sinais analógicos devem ser amostrados (S/H), convertidos para Sinais Digitais (ADC) para serem processados. Depois de processados, os Sinais Digitais podem ser re-convertidos para Sinais Analógicos (DAC). 2
Amostragem do Sinal Analógico circuito Amostrador (S/H Sample and Hold): capacitor e uma chave controlada pelo Microcontrolador fechando e abrindo por intervalos determinados. O Valor do sinal amostrado permanece constante durante o intervalo em que a chave está aberta (retenção), permitindo ao Conversor A/D realizar a conversão sem que haja alteração do valor de entrada. Amostragem Retenção 3
CONVERSORES D/A Digital para Analógico VR X D A V0 VR => Valor de Referência V0 => Valor Analógico de Saída X => Número Digital 4
D A VR V0 X VO = VR. X n a n a a X + + = 2 2 2 2 1 2 1 D A + + = n n a a a R V V 2 2 2 2 1 2 1 0 = = 1 0 i a Vo depende da posição 2 -iésima Vo = Soma das componentes binárias ativas 5
Função de Transferência de um Conversor D/A Q= Quantum 6
Principais tipos de Conversores D/A Conversores D/A Paralelos 1) Por Resistores Proporcionais 2) Por Escada R-2R Conversores D/A Seriais 7
Conversor D/A por Resistores Proporcionais Si fechada => ai = 1 Si aberta => ai = 0 8
2 1 1 I R V a o = = + = = = 2 2 1 2 2 1 I I R V a a o R => Precisão ( ) n o n I I I R V a a a a + + = = = = = 2... 2 2 1... 2 1 3 2 1 ( ) n o a n a a I R V + + = 2... 2 2 2 2 1 1 X I R V o = I => Constante 9
Conversor D/A por Escada R-2R Propriedade da Escada R-2R 2R 2R 2R 2R A resistência equivalente vista de qualquer nó (A,B,C,D,E) é igual a 2R. 10
Conversor D/A por Escada R-2R Ex: Só a 3 =1 CB I/2 BA I/4 AT I/8 = I/2 3 = I*2-3 Vo = Rf*I*X Vo= Rf*I*(a 1 *2-1 + a 2 *2-2 +...a n *2 -n ) 11
CONVERSORES A/D Analógico para Digital VR V X A D X VR => Valor de Referência V X => Valor Analógico de Entrada X => Número Binário 12
X = (V x /V R ) VR V X A D X V X = V R (a 1 *2-1 + a 2 *2-2 +...a n *2 -n ) 13
Função de Transferência do Conversor A/D n Q=V/2 n = Número de Bits do A/D V = Valor Analógico do Fundo de Escala 14
Precisão de um conversor A/D Analógico Digital Analógico A/D Converter n Digital 0.00 0000 0.25 0001 0.50 0010 0.75 0011 Exemplo: Analog Range: 0V - 4V 1.00 0100 1.25 0101 1.50 0110 Digital: n=4 1.75 0111 2.00 1000 2.25 1001 2.50 1010 2.75 1011 3.00 1100 3.25 1101 3.50 1110 3.75 1111 15
Um Conversor A/D realiza : Quantização Codificação Quantização É a Transformação de um sinal analógico contínuo em um conjunto de estados discretos. Codificação É o método que associa um código digital a cada um desses estados. 16
Tipos de Conversores A/D Por Realimentação Paralela * D/A Paralelo na malha de Realimentação Por Realimentação Serial * D/A Serial na malha de Realimentação Conversores Imediatos * Conversores Flash Conversores Intermediários * Conversores por Rampa Dupla * Conversores de Tensão/Freqüência 17
Conversor A/D por Realimentação Paralela V E = V X + (-V F ) 18
Conversor A/D por Aproximação Sucessiva Princípio de Operação 19
Circuito do Conversor A/D por Aproximação Sucessiva 20
A/D por Rampa Simples A/D por Aproximação Sucessiva 21
Conversores A/D Imediatos * Conversores Flash São Conversores de alta velocidade pois o tempo de conversão depende apenas dos atrasos dos Amplificadores Operacionais e da Lógica de Codificação. 22
Exemplo de Conversor D/A DAC0808 Conversor de 8-Bits fabricado pela National na tecnologia Escada R-2R 23
Exemplo de Interface Direta do DAC0808 com o Microcontrolador 8051 24
Exemplo de Aplicação: Gerador de Funções (Amplitude e Freqüência Programáveis Amplitude: Máximo e Mínimo Valor Digital Freqüência: Atraso entre dois valores consecutivos Função Rampa de inclinação Positiva: Contador crescente Função Rampa de inclinação Negativa: Contador decrescente Função Triangular: Contador crescente e decrescente Função Onda Quadrada: Dois valores Máximo e Mínimo Função Senoidal: Tabelar os valores da Senóide Função Mista: qualquer formato pode ser gerado (triangular,rampa,senóide,quadrada, etc em loop) 25
Exemplo de Conversor A/D ADC0808 Conversor de 8-Bits com 8 canais analógicos Multiplexados, fabricado pela National na tecnologia Aproximação Sucessiva 26
Timing Diagrama de Tempos do Conversor ADC0808 27
Timing Diagrama de Tempos do Conversor ADC0808 28
Exemplo de Interface Direta do ADC0808 com o Microcontrolador 8051 29
Exemplo do Algoritmo de programação do Conversor A/D ADC0808, para o diagrama anterior e sem usar a Interrupção no fim da conversão. A Interrupção Int0 do 8051 pode também ser programada para responder em descida de borda e o Algoritmo deve eliminar o bloco de decisão que verifica o Fim de Conversão (EOC). Assim, a Sub-rotina de Atendimento da Interrupção do A/D (Int0), fará a leitura do dado em P2 30
Exemplo de interface de um conversor A/D e um conversor D/A com o 8051 usando Mapeamento de Memória. Entradas Analógicas: ADC0808 (8 entradas Analógicas) Saída Analógica: DAC0808 (1 saída Analógica) Usando o mesmo esquema das aulas anteriores. Mapeamento: RAM Externa de 0000 a 7FFFh Conversores de 8000h a FFFFh 31
Mapeamento do Conversor A/D ADC0808 Análise do Datasheet: 1) Este conversor possui 8 canais de Entradas Analógicas. Para selecionar um Canal Analógico, o micro deve escrever um dos 8 endereços no conversor. 2) Cada Entrada Analógica deve ser mapeada como endereço de memória 3) Dispositivo de Entrada. O valor digital equivalente a cada Entrada Analógica deve ser lido do duto do conversor. 32
Timing Diagrama de Tempos do Conversor ADC0808 33
Seleção dos canais do Conversor A/D (operação de Escrita) A15 A15 = 1 e A3 = 0 satisfaz o endereçamento proposto Canal A2 A1 A0 Endereço(WR) IN0 0 0 0 8000h IN1 0 0 1 8001h IN2 0 1 0 8002h IN3 0 1 1 8003h IN4 1 0 0 8004h IN5 1 0 1 8005h IN6 1 1 0 8006h IN7 1 1 1 8007h 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 A0 8000h 8007h 34
Decodificação dos endereços do conversor A/D Durante o pulso de escrita (WR = 0) nos endereços de 8000h a 8007 h, as linhas A15 = 1 e A3 = 0 Exemplo: Seleção do Canal 1 do A/D MOV DPTR,#8001h MOVX @DPTR,A 35
Mapeamento do Conversor D/A DAC0808 Para mapear um conversor D/A será necessário utilizar um Latch para manter o dado constante durante a conversão. WR Duto de Dados Latch CS 36 Deve-se escolher um endereço (>8000h) para Mapear o D/A
Decodificação do endereço do conversor D/A A15 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 A0 8000h 8007h 1 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 8008h A/D Escrever (WR) no endereço 8008h faz o A3 = 1 e o A15 =1 MOV DPTR,#8008h MOV A,#DADO MOVX @DPTR,A 37
Mapeamento dos Conversores A/D e D/A 38
Detalhe do Mapeamento dos Conversores Leitura do A/D em endereço >7FFFh 39
40