Diferencia entre revisiones de «ADC (Conversor Analógico-Digital) - MC9S08QE128»
Línea 37: | Línea 37: | ||
===Hardware Trigger=== | ===Hardware Trigger=== | ||
− | El trigger que inicia una conversión en el ADC puede ser vía software activándolo en un instante de tiempo programable o también puede ser vía hardware. Para esto, el Real Time Counter ([[RTC (Real-timer counter) - MC9S08QE128|RTC]]) | + | El trigger que inicia una conversión en el ADC puede ser vía software activándolo en un instante de tiempo programable o también puede ser vía hardware. Para esto, el Real Time Counter ([[RTC (Real-timer counter) - MC9S08QE128|RTC]]) puede ser habilitado como el trigger para cada conversión que se vaya a hacer con el ADC. |
+ | Basta con configurar el ADCSC2_ADTRG = 1 y asi el ADC hará la conversión cada vez que haya un flanco de subida en el ADHWT que sucederá cuando el RTCINT coincida con RTCMOD | ||
+ | |||
+ | ===Selección del Clock=== | ||
+ | Una de las características del ADC es que tiene 4 relojes como fuente para escoger. | ||
+ | [[Archivo:adcclocks.jpg|700px|right|thumb|Bloques_Clocks_ADC]] | ||
+ | El primero es el bus clock, este se selecciona por defecto después de cada reset y trabajará a la misma frecuencia que esté trabajando el micro | ||
+ | La segunda opción es tomar como fuente el mismo bus clock pero el módulo del ADC nos permite dividirlo por 2, 4 y 8 para variar la velocidad de conversión | ||
+ | El tercero es el ALTCLK (alternate clock) que se establece como el ICSERCLK del micro y funciona como el external reference clock | ||
+ | La última opción para escoger el clock con el que se quiere trabajar es el ADACK que es un reloj asíncrono que se genera por otro reloj fuente del ADC y se mantiene activo cuando el micro esta en modo stop3 o wait permietiendo conversiones en ambos modos para operaciones con menor ruido | ||
+ | |||
==Funcionamiento del Modulo== | ==Funcionamiento del Modulo== |
Revisión del 19:39 15 nov 2012
El módulo ADC del microcontrolador Freescale MC9S08QE128 toma como entrada analógica la señal que resulta al variar el potenciómetro y lo convierte en un valor binario ajustable a 12, 10 y 8 bits
El conversor posee dos señales llamadas Voltage Reference High (V REFH) y Voltage Reference Low (V REFL) y podrá convertir muestras entre V SSAD (Tierra Analógica) y V DDAD que va entre 1.8 y 3.6 Volts
Contenido
Características
El módulo ADC posee:
- Algoritmo de aproximación lineal de 12 bits de resolución
- 32 canales que permiten hasta 28 entradas analógicas
- Formato de salida digital en 12, 10 u 8 bits
- Modo de conversion simple o continua
- Interrupción y bandera para conversiones completadas
- Tiempo de muestreo configurable para el dato de salida
- Reloj para la entrada seleccionable de entre 4 fuentes
- Modos wait y stop3 para operaciones con menos ruido
- Trigger de conversión por hardware seleccionable
- Comparador automatico (mayor que, menor que, igual a) con interrupcion para un valor programable
Asignación de canales
El ADC permite hacer las conversiones para cualquier canal entre AD0 y AD23. Si el registro que guarda el canal en el que se quiere trabajar ADCSC1_ADCH(4:0) es igual a 11111, entonces el subsistema que se encarga de convertir será apagado
Sensor de Temperatura
El ADC posee un sensor de temperatura cuya salida esta conectada al canal analógico AD26 y está definida por:
De donde Vtemp es el voltaje del AD26 a la temperatura del ambiente, Vtemp25 es el voltaje del AD26 a 25°C que por datasheet del micro se sabe que es 701.2 mV y m es la pendiente del voltaje vs temperatura que se sabe por datasheet que es 1.646mV desde -40°C hasta 25°C y 1.769 mV desde 25°C hasta 85°C
Para usar el sensor de temperatura será necesario llenar los 5 bits menos significativos del registro ADCSC1 que corresponden al canal que se usará, con el número decimal 26 en binario (11010)
Hardware Trigger
El trigger que inicia una conversión en el ADC puede ser vía software activándolo en un instante de tiempo programable o también puede ser vía hardware. Para esto, el Real Time Counter (RTC) puede ser habilitado como el trigger para cada conversión que se vaya a hacer con el ADC. Basta con configurar el ADCSC2_ADTRG = 1 y asi el ADC hará la conversión cada vez que haya un flanco de subida en el ADHWT que sucederá cuando el RTCINT coincida con RTCMOD
Selección del Clock
Una de las características del ADC es que tiene 4 relojes como fuente para escoger.
El primero es el bus clock, este se selecciona por defecto después de cada reset y trabajará a la misma frecuencia que esté trabajando el micro La segunda opción es tomar como fuente el mismo bus clock pero el módulo del ADC nos permite dividirlo por 2, 4 y 8 para variar la velocidad de conversión El tercero es el ALTCLK (alternate clock) que se establece como el ICSERCLK del micro y funciona como el external reference clock La última opción para escoger el clock con el que se quiere trabajar es el ADACK que es un reloj asíncrono que se genera por otro reloj fuente del ADC y se mantiene activo cuando el micro esta en modo stop3 o wait permietiendo conversiones en ambos modos para operaciones con menor ruido
Funcionamiento del Modulo
Configuracion del ADC
Contributors
AK, Anairam, Artdamato, Dalak, Fdepasquale, Hyma, Jesus Grimón, Julioa44, LitzaPinto, Luis E Santana P, Minleung, Misato, Ncertad, Racuna