Académique Documents
Professionnel Documents
Culture Documents
El tiempo empleado en la Conversion viene dado por la expresion: TACQ= TAMP+TC+TCOFF Tiempo empleado en la conversin ~= 20us (*)
d
(c) Domingo Llorente 2010 4
Para fijar la seal de reloj utilizada en la conversin se utiliza: setup_adc(ADC_CLOCK_INTERNAL); // Reloj interno para la conv.
Otros valores posibles son: ADC_OFF, Para parar el conversor ADC_CLOCK_DIV_32, Utiliza un divisor por 32 de la Fosc.
Nota: La lista completa de valores se puede consultar en el archivo: 16F877A.h (c) Domingo Llorente 2010 10
voltios=5.0*valor_leido/1024.0;
Nota: No olvidar declarar las variables: int16 valor_leido; float voltios; (c) Domingo Llorente 2010 11
Ejemplo de programa
Disear un programa que est, constantemente leyendo la entrada analgica ANL0 y mostrando en el LCD de la placa el valor ledo y su valor en voltios.
12
Luego creamos la carpeta para nuestro proyecto y damos un nombre al archivo con extensin .pjt
13
14
15
16
17
Solucin:
18
Resumen
Para realizar un programa con la interrupcin externa habilitada: 1.- Antes de la funcin main(); declarar una varialbe de 16bits. int16 valor_leido; 2.- En la funcin main() configurar el conversor: setup_adc_ports( AN0 ); setup_adc(ADC_CLOCK_INTERNAL); 3.- Seleccionar la entrada y hacer la lectura: set_adc_channel(0); // Canal AN0 seleccionado delay_us(20); // Retardo para asegurar la conversin valor_leido=read_adc(); // Lectura del conversor
19