Ejemplos básicos del Convertidor Analógico Digital usando el PIC18F452 📊

Para convertir una señal analógica en su equivalente digital, hay que saber las características de la señal y así seleccionar el ADC (Convertidor Analógico Digital) adecuado, dependiendo de nuestros requerimientos de velocidad, resolución, rango de entrada, etc.

Convertidor Analógico Digital.
ADC Figura-01


El propósito de esta entrada es tocar, los conceptos básicos para realizar una simulación en Proteus ISIS, del ADC de un PIC18F452 compilado con PIC-C CCS que nos pueda servir para cuantificar el voltaje de algún sensor, para nuestros proyectos; y si quieren profundizar en el tema dejo el siguiente material:
  • Conversores Análogo-Digital y Digital-Análogo: Conceptos Básicos y Libros de PIC-C CCS y Proteus ISIS para principiantes [MEGA].
  • Conversión Análogo-Digital [Wikipedia-es].
  • Conversor de señal analógica a digital [Wikipedia-es].

Diagrama de entrada del PIC18F452.
PIC18F452 Figura-02.


Del lote de 8 PIC que cuento para aprender, 4 de ellos son PIC18F452 muy recomendado por mis profesores en mi vida como universitario, como una versión mejorada del muy utilizado PIC16F877a, por eso lo uso en la mayoría de mis ejemplo.
Datasheet PIC18F452 [MEGA].

ADC PIC18F452.
Diagrama del A/D Figura-03.


El PIC18F452 posee 8 entradas analógicas como pueden ver en la figura-02, pero solo pose un modulo ADC como podemos ver en la figura-03.


Ejemplo N°1.

Para el ejemplo vamos a medir una señal proveniente de una resistencia variable figura-04, para esto debemos saber el Rango de Entrada, el cual es la diferencia del voltaje máximo y minino que puede medir el PIC18F452.

Rango de entrada = Vmax - Vmin


El PIC18F452 puede medir tensiones unipolares, de Vmax igual al VDD "Voltaje de alimentación positiva" y Vmin igual a VSS "Voltaje de referencia a tierra", en condiciones normales de alimentación el Rango de Entrada es de 5.0 V.

Diagrama ejemplo 1.
Ejemplo 1 Figura-04.


En PIC-C CCS configuraremos el PIC18F452 a 4 MHz y el ADC:
  • (1) Solo habilitado la entrada digital A0.
  • (2) Seleccionamos el número de Bits N.
  • (3) El tiempo de conversión.

Configuración ADC Figura-05.


Con el número de Bits (N) y el Rango de Entrada podemos obtener la Resolución, que es el mínimo voltaje que podemos medir.

Resolución=Rango de entrada2N - 1


Simulacion del ejemplo 1.
Simulación 1 Figura-06.





Ejemplo N°2.

Como mencionamos anteriormente el PIC18F452 cuenta con 8 entrada analógicas, pero solo un ADC; en este ejercicio vamos a medir 8 señales como se muestra en la figura-07.

Usando las 8 entradas.
Ejercicio N°2 Figura-07.


Hay que realizar una conmutación del puerto analógico a usar figura-03, antes de solicitar la lectura del ADC, como se hace en el ejercicio anterior figura-06.

Simulación de 8 fuentes.
Simulación Figura-08.


Configuramos en PIC-C CCS el PIC18F452 a 4 MHz y el ADC así:

Configuración ADC.
Configuración ADC Figura-09.





Ejemplo N°3.

Si repasamos la figura-03, vemos que podemos fijar el voltajes Vref+ y el Vref- esto cambia el Rango de Entrada, solo debemos tomar en consideración que Vref+ debe ser menor al VDD y Vref- mayor al VSS.

Diagrama 3.
Diagrama ejemplo 3 Figura-10.


Configuramos en PIC-C CCS el PIC18F452 a 4 MHz y el ADC así:

Configuración ADC.
Configuración ADC Figura-11.


Y nos ayudaremos con una fuente que genere una señal Sinusoide de amplitud entre crestas de 3 V y un offset de 2,5 V, es decir que varié entre (1 – 4) V a una frecuencia muy baja figura-12.

Fuente seno varia entre 1V y 4V.
Fuente seno Figura-12.


Simulación Figura-13.





Importante.

El ADC del PIC18F452 posee una etapa de muestreo y retención (Sample & Hold) figura-14 un convertidor de aproximaciones sucesivas de 10 Bits figura-03 muy utilizado por sus altas velocidades de conversión.

Entrada analógica.
Modelo de la entrada analógica Figura-14.


El mínimo tiempo desde que se realiza un muestreo hasta que se obtiene un valor digital, depende de etapas, configuraciones y condiciones, que en el datasheet del PIC18F452 se detallan para así cumplir el teorema de Nyquist [Wikipedia-es]; que la frecuencia de muestreo debe ser el doble del ancho de banda de la señal.

Tabla de selección del tiempo de conversión.
Tabla de selección del tiempo de conversión Figura-15.



Como siempre; estos ejemplos están orientados a la simulación con Proteus y así probar el concepto básico; la información de los FUSES esta en el archivo “main.h” de cada uno de los archivos.

Carpetas de los ejercicios [MEGA]

Y para finalizar cualquier duda o corrección usar los comentarios o enlaces de contacto del blog.


También te puede interesar.


Comentarios

Entradas más populares de este blog

Super Mario RPG 🎮