0% encontró este documento útil (0 votos)
5 vistas7 páginas

Convertidor ADC

El documento describe un Convertidor Análogo Digital (ADC) que convierte señales analógicas en valores digitales con una resolución de 8 o 10 bits y una tasa de muestreo de hasta 50K muestras por segundo. Incluye detalles sobre características, registros, y rutinas de librería para su implementación en microcontroladores PIC, así como un ejemplo de programación en MIKROC para leer valores analógicos y mostrarlos en un LCD. Además, se presentan instrucciones para realizar un experimento en laboratorio utilizando el ADC.
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
5 vistas7 páginas

Convertidor ADC

El documento describe un Convertidor Análogo Digital (ADC) que convierte señales analógicas en valores digitales con una resolución de 8 o 10 bits y una tasa de muestreo de hasta 50K muestras por segundo. Incluye detalles sobre características, registros, y rutinas de librería para su implementación en microcontroladores PIC, así como un ejemplo de programación en MIKROC para leer valores analógicos y mostrarlos en un LCD. Además, se presentan instrucciones para realizar un experimento en laboratorio utilizando el ADC.
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

CONVERTIDOR ANALOGO DIGITAL

El Convertidor Análogo Digital convierte una señal analógica de voltaje variable en valores digitales
a una resolución de 8 o 10 bits. Además, se puede llegar hasta a 50K muestras por segundo.
Características:
• Resolución programable por software en modo de 8 y 10 bits.
• 13 canales de entradas multiplexadas: en el puertos RA (AN0 hasta AN4), puerto RE(AN5
hasta AN7) y puerto RC(AN8 hasta AN12).
• Rango del voltaje de entrada para el ADC 0-Vcc.
• Referencia de voltaje interna o externa.
• Modo de conversión ADC (continua o individual).
• Inicio de conversión ADC por Auto-Disparo en fuentes de Interrupción.
• Interrupción ADC al completar la conversión.

DIAGRAMA DE BLOQUES DEL ADC


REGISTROS DEL ADC
LIBRERIAS DEL ADC

El módulo ADC (Analog to Digital Converter) está disponible en varios módulos PIC MCU.
Rutinas de la libreria:
• ADC_Init
• ADC_Init_Advanced
• ADC_Get_Sample
• ADC_Read

ADC_Init

Prototype void ADC_Init();


Returns Nada.
Description Esta rutina inicializa el módulo ADC interno de PIC para que funcione con el reloj
RC. El reloj determina el período de tiempo necesario para realizar la conversión
AD (min 12TAD).
Requires MCU con módulo ADC incorporado.
Example ADC_Init(); // Inicializa el módulo ADC con la configuración predeterminada.

ADC_Init_Advanced

Prototype void ADC_Init_Advanced(char reference);


Returns Nada.
Description Esta rutina inicializa el módulo ADC interno de PIC para trabajar con la referencia
de voltaje definida por el usuario.
Parámetros:
- - referencia: ajustes de referencia de voltaje. Los valores válidos pueden ser
OR-ed para formar un valor definido por el usuario.
Valor Descripcion
_ADC_INTERNAL_REF Ambas referencias de voltaje se
establecen en VDD interno y VSS.
_ADC_EXTERNAL_REF Ambas referencias de voltaje se
configuran en pines Vref + y Vref-
externos.
_ADC_EXTERNAL_VREFL Referencia de baja tensión
establecida en Vref-pin.
_ADC_EXTERNAL_VREFH Referencia de alta tensión
establecida en Vref + pin.
_ADC_INTERNAL_VREFL Referencia de bajo voltaje
establecida en VSS interno.
_ADC_INTERNAL_VREFH Referencia de alto voltaje establecida
en VDD interno.
_ADC_INTERNAL_FVRH1 Referencia de alto voltaje establecida
a 1.024V.
_ADC_INTERNAL_FVRH2 Referencia de alto voltaje establecida
a 2.048V.
_ADC_INTERNAL_FVRH4 Referencia de alto voltaje establecida
a 4.096V.
_ADC_INTERNAL_FVR Ambas referencias de voltaje se
establecen en 4.096V y 2.048V
internos, respectivamente.
_ADC_INTERNAL_FVRL2 Referencia de bajo voltaje
configurada a 2.048V interno.
_ADC_INTERNAL_FVRH3 Referencia de alto voltaje establecida
- en 3.072V interno.
Requires MCU con módulo ADC incorporado.
No todas las MCU admiten la inicialización avanzada y todas las configuraciones
de inicialización. Consulte la hoja de datos correspondiente.
Example ADC_Init_Advanced(_ADC_EXTERNAL_VREFL | _ADC_INTERNAL_FVRH4);
// referencia de baja tensión Vref- pin, referencia de alta tensión 4.096V

ADC_Read

Prototype unsigned ADC_Read(unsigned short channel);


Returns Lectura de valor sin signo de 8, 10 o 12 bits del canal especificado (depende del
MCU).
Description Inicializa el módulo ADC interno de PIC para que funcione con el reloj RC. El reloj
determina el período de tiempo necesario para realizar la conversión AD (min
12TAD). El canal de parámetros representa el canal desde el cual se va a adquirir
el valor analógico. Consulte la hoja de datos adecuada para la asignación de
canal a pin.
Nota: Esta función no funciona con la fuente de referencia de voltaje externo,
solo con la referencia de voltaje interno.
Requires El MCU con módulo ADC incorporado. Antes de usar la función, asegúrese de
configurar los bits TRISx apropiados para designar los pines como entradas.
Example unsigned tmp;
...
tmp = ADC_Read(2); // Leer valor analógico del canal 2
E.I.S. “PEDRO DOMINGO MURILLO” LABORATORIO N° 5
CARRERA: ELECTRÓNICA TEMA: CONVERSOR ANALOGO
NIVEL: SUPERIOR DIGITAL – ADC
ASIGNATURA: MIC - 500 (TELECOMUNICACIONES) Fecha: 30 de septiembre
MICROCONTROLADORES II

OBJETIVO
Utilizar al Microcontrolador para realizar un conversor análogo digital.

PREINFORME

1. Realizar la programación en MIKROC de un ADC, en base al siguiente circuito:


Elegir como entrada analógica otro canal.
2. Realizar la programación para leer en un LCD, los valores de la entrada analógica
J1
USBCONN

+5V

RV1
33%

GND

VCC
D+
D-
+5V
10k

4
2
3
1
+88.8
Volts
U2
2 15
RA0/AN0 RC0/T1OSO/T1CKI
3 16
C1 RA1/AN1 RC1/T1OSI/CCP2/UOE
4 17
RA2/AN2/VREF-/CVREF RC2/CCP1/P1A
5 23
RA3/AN3/VREF+ RC4/D-/VM
1

6 24
RA4/T0CKI/C1OUT/RCV RC5/D+/VP
22nF 7 25
4 MHZ 14
RA5/AN4/SS/LVDIN/C2OUT RC6/TX/CK
26
C2 CRYSTAL RA6/OSC2/CLKO RC7/RX/DT/SDO
13
OSC1/CLKI
2

33 19
RB0/AN12/INT0/FLT0/SDI/SDA RD0/SPP0
22nF 34 20
RB1/AN10/INT1/SCK/SCL RD1/SPP1
35 21
RB2/AN8/INT2/VMO RD2/SPP2
36 22 +5V
RB3/AN9/CCP2/VPO RD3/SPP3
37 27
RB4/AN11/KBI0/CSSPP RD4/SPP4
38 28
RB5/KBI1/PGM RD5/SPP5/P1B
39 29
RB6/KBI2/PGC RD6/SPP6/P1C
40 30
RB7/KBI3/PGD RD7/SPP7/P1D R1
8 10k
RE0/AN5/CK1SPP
9
RE1/AN6/CK2SPP
10
RE2/AN7/OESPP
18 1
VUSB RE3/MCLR/VPP
PIC18F4550
C3
220nF

R
220

PROGRAMA

unsigned int temp_res;

void main() {
ADCON1 = 0x0E; //configura canal analógico del canal 0
CMCON = 7; //deshabilita comparadores
INTCON = 0; //deshabilita interrupciones
TRISA = 0xFF; //PORTA entrada
TRISC = 0; //PORTC salida
TRISB = 0; //PORTB salida
do {
temp_res = ADC_Read(0); //lee el valor analógico del canal 0
PORTB = temp_res; //envia los 8 bits menos significativos a PORTB
PORTC = temp_res >> 8; //envía los 2 bits más significativos a PORTC
} while(1);
}

Nota: habilitar la libreria ADC

3. Dibujar el Layout del circuito.

PROCEDIMIENTO EN LABORATORIO:
1. Comprobar el funcionamiento del circuito
2. Simular el convertidor.

También podría gustarte