1 / 26

Conversor A/D – PIC16F877A

Conversor A/D – PIC16F877A. Jadsonlee da Silva Sá Jadsonlee.sa@univasf.edu.br www.univasf.edu.br/~jadsonlee.sa. Introdução. Conversor A/D  Utilizado para converter grandezas analógicas em digitais. Canal de entrada. Introdução. Exemplo de aplicação: temperatura ambiente ao longo do dia.

taya
Download Presentation

Conversor A/D – PIC16F877A

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Conversor A/D – PIC16F877A Jadsonlee da Silva Sá Jadsonlee.sa@univasf.edu.br www.univasf.edu.br/~jadsonlee.sa

  2. Introdução • Conversor A/D  Utilizado para converter grandezas analógicas em digitais. Canal de entrada

  3. Introdução • Exemplo de aplicação: temperatura ambiente ao longo do dia.

  4. Introdução • Sensor de temperatura – Converte uma grandeza física em uma grandeza elétrica (tensão). Ex.: LM35 e termopar.

  5. Introdução • Sinais analógicos e digitais. Sinal amostrado Quantidade de bits - Resolução. Sinal Digitalizado

  6. Introdução • Tensão de referência (Faixa de tensão do sinal analógico). Conversor A/D de 8 bits – 256 níveis de quantização. Tensão de referência de 0V – 5V, teríamos a seguinte resolução. Cada conversão dura um determinado tempo.

  7. Módulo Conversor A/D • Possui 8 canais de entrada de 10 bits (1024 níveis). • Tensão de referência selecionada via software (VDD, VSS, Vref+ e Vref-).

  8. Módulo Conversor A/D • Pode funcionar durante o SLEEP. • Clock do A/D deve ser derivado de um oscilador RC interno ao A/D. Diagrama de Blocos. Os dados convertidos são armazenados em dois registradores ADRESH e ADRESL.

  9. Módulo Conversor A/D • Registradores relacionados. Deve-se setar os correspondentes bits de TRISA e TRISE como entradas.

  10. Módulo Conversor A/D

  11. Módulo Conversor A/D

  12. Módulo Conversor A/D

  13. Módulo Conversor A/D

  14. Módulo Conversor A/D

  15. Módulo Conversor A/D • Quando a conversão é finalizada, os seguintes eventos ocorrerão: • Os dados são armazenados nos registradores ADRESH e ADRESL; • O bit GO/DONE de ADCON0 é zerado; • O bit ADIF é setado.

  16. Módulo Conversor A/D • Configurando o módulo ADC: • Configure a tensão de referência e os pinos analógicos – ADCON1. • Selecione o canal de entrada , o clock de conversão e acione o módulo – ADCON0. • Configure a interrupção (se desejado) – ADIF = 0, ADIE = 1, PEIE = 1 e GIE = 1. • Espere pelo tempo de aquisição requisitado. • Inicie a conversão. • Espere a conversão ser finalizada. • Leia os dados convertidos em ADRESH e ADRESL, e zere o bit ADIF.

  17. Módulo Conversor A/D • Temporização durante uma conversão A/D. 20 μs (mínimo) 12TAD (mínimo)

  18. Módulo Conversor A/D • Tempo de conversão de um bit - TAD. • Tempo mínimo para conversão dos 10 bits – 12 TAD. • O valor mínimo de TAD deve ser de 1,6 μs.

  19. Exemplo 1 • Conversão A/D e mostra o resultado usando uma barra de LEDs. Divisor de tensão

  20. Exemplo 1 • Assembly.

  21. Exemplo 1 • Assembly.

  22. Exemplo 1 • Assembly.

  23. Exemplo 1 • Assembly.

  24. Exemplo 1 01 1111 1111 = 511d 50%  2,5 V

  25. Exemplo 3 • Conversão A/D Linguagem C. Com 20MHz, posso dividir Fosc por 32 ou 64.

  26. Tarefa • Faça um programa em assembly e outro em C, que a cada interrupção do timer 1 (período = 1s), realiza a conversão A/D de um sinal no canal 0 e transmite o resultado via USART para um PC (ver aula passada sobre serial).

More Related