Escolar Documentos
Profissional Documentos
Cultura Documentos
Introducción
El convertidor analógico a digital API (ADC) ofrece un conjunto de funciones para la
programación y el funcionamiento del ADC. Se proporcionan funciones para configurar
los secuenciadores de ejemplo, leer los datos capturados, registrar un manejador de
interrupciones secuencia de muestras, y manejar interrumpir el enmascaramiento /
compensación.
Dependiendo de las características del microcontrolador individual, el ADC soporta
hasta veinticuatro canales de entrada, además de un sensor de temperatura interno.
Cuatro secuenciadores de muestreo, cada uno con eventos de activación configurables,
se pueden capturar. El primer secuenciador captura hasta ocho muestras, el segundo y
tercer secuenciadores capturar hasta cuatro muestras, y el cuarto secuenciador capta una
sola muestra. Cada muestra puede ser el mismo canal, canales diferentes, o cualquier
combinación, en cualquier orden.
Los secuenciadores de muestra tienen prioridades configurables que determinan el
orden en el que se capturan cuando varios disparos ocurren simultáneamente. El
secuenciador de prioridad más alta que se desencadena Actualmente se muestrea
primero. Se debe tener cuidado con los desencadenantes que se producen con frecuencia
(como el gatillo "siempre"); Si su prioridad es demasiado alto, es posible matar de
hambre a los secuenciadores de menor prioridad.
sobre muestreo de hardware de los datos de ADC está disponible para una mayor
precisión. Un factor de sobre muestreo de 2x, 4x, 8x, 16x, 32x, 64x o es compatible,
pero reduce el rendimiento del ADC por un factor correspondiente. sobre muestreo de
hardware se aplica de manera uniforme en todos los secuenciadores de muestra.
sobre muestreo Software de los datos de ADC también está disponible (incluso cuando
sobre muestreo hardware está disponible). Un factor de sobre muestreo de 2x, 4x, 8x o
es compatible, pero reduce la profundidad de los secuenciadores de muestra en una
cantidad correspondiente. Por ejemplo, la primera muestra de secuenciador captura ocho
muestras; en el modo de sobre muestreo 4x, sólo puede capturar dos muestras porque
los primeros cuatro muestras se utilizan para el primer valor de sobre muestreo y el
segundo cuatro muestras se utilizan para el segundo valor de sobre muestreo. La
cantidad de sobre muestreo software está configurado sobre una base secuenciador por
muestra.
A sobre muestreo software más sofisticado se puede utilizar para eliminar la reducción
de la profundidad de la muestra de secuenciador. Al aumentar la probabilidad del ADC
por 4x (por ejemplo) y un promedio de cuatro disparadores valor de los datos, de sobre
muestreo 4x se consigue sin ninguna pérdida de capacidad de muestra de secuenciador.
En este caso, un aumento en el número de desencadenantes de ADC (y
presumiblemente las interrupciones de ADC) es la consecuencia.
Debido a que este método requiere ajustes fuera del controlador de ADC en sí, no se
apoya directamente por el conductor (aunque nada impide que en el controlador de ella).
Las API de sobre muestreo software no se deben utilizar en este caso.
Este controlador está contenida en driverlib / adc.c, con driverlib / adc.h que contiene
las declaraciones de API para el uso de las aplicaciones.
Descripción detallada
El analógico a digital de API convertidor está dividida en tres grupos de funciones: las
que se ocupan de la secuenciadores de ejemplo, los que se ocupan del gatillo
procesador, y aquellos que se ocupan de interrupción manejo.
Los secuenciadores de muestra se configuran con ADCSequenceConfigure () y
ADCSequenceStepConfigure (). Están activadas y desactivadas con
ADCSequenceEnable () y ADCSequenceDisable (). se obtienen los datos capturados
con ADCSequenceDataGet (). FIFO secuenciador de muestra extracto y refinado se
gestiona con ADCSequenceOverflow (), ADCSequenceOverflowClear (),
ADCSequenceUnderflow (), y ADCSequenceUnderflowClear (). sobre muestreo de
hardware de la ADC se controla con ADCHardwareOversampleConfigure ().
sobremuestreo Software del ADC se controla con ADCSoftwareOversampleConfigure
(), ADCSoftwareOversampleStepConfigure (), y ADCSoftwareOversampleDataGet ().
El gatillo procesador se genera con ADCProcessorTrigger ().
El manejador de interrupciones para las interrupciones ADC muestra del secuenciador
son administradas con ADCIntRegister ()
y ADCIntUnregister (). Las fuentes de la muestra secuenciador de interrupción se
gestionan con ADCIntDisable (), ADCIntEnable (), ADCIntStatus (), y ADCIntClear ()
ADCBusy
Determina si el ADC está ocupado o no.
Prototipo:
bool
Descripción:
Esta función permite a la persona que llama para determinar si es o no el ADC está
muestreando la actualidad. Si se devuelve false, entonces el ADC no es el muestreo de
datos.
Utilice esta función para detectar que el ADC está terminado datos de muestreo antes de
poner el dispositivo en un sueño profundo. Antes de utilizar esta función, es muy
recomendable que el disparador de eventos se cambia a ADC_TRIGGER_NEVER en
todos los secuenciadores habilitados para evitar que el ADC se inicie después de
comprobar el estado de ocupado.
Devoluciones:
Devuelve true si el ADC es el muestreo o falsa si todas las muestras se han completado.
ADCClockConfigGet
Devuelve la configuración de reloj para el ADC.
Prototipo:
uint32_t
parámetros:
ui32Base es la dirección base de la ADC para configurar, que siempre deben ser
ADC0_BASE. pui32ClockDiv es un puntero al divisor de reloj de entrada para el reloj
seleccionado por el ADC_CLOCK_SRC en uso por los ADCs.
Descripción:
Esta función devuelve la configuración de reloj ADC y el divisor de reloj para los ADC.
Ejemplo: Leer la configuración actual del reloj del ADC.
Devoluciones:
La configuración actual del reloj del ADC se define como una combinación de uno de
ADC_CLOCK_SRC_PLL, ADC_CLOCK_SRC_PIOSC,
ADC_CLOCK_SRC_MOSC, o ADC_CLOCK_SRC_ALTCLK un OR lógico con uno
de ADC_CLOCK_RATE_FULL, ADC_CLOCK_RATE_HALF,
ADC_CLOCK_RATE_QUARTER, o ADC_CLOCK_RATE_EIGHTH. Ver
ADCClockConfigSet () para obtener más información sobre estos valores.
ADCClockConfigSet
Prototipo:
vacío
parámetros:
ui32Base es la dirección base de la ADC para configurar, que siempre deben ser
ADC0_BASE.
ui32Config es una combinación de la ADC_CLOCK_SRC_ y ADC_CLOCK_RATE_ *
Los valores utilizados para configurar la entrada de reloj ADC.
Descripción:
Esta función se utiliza para configurar el reloj de entrada a los módulos ADC. La
configuración del reloj se comparte a través de unidades de ADC por lo ui32Base debe
estar siempre ADC0_BASE. El valor ui32Config es OR lógico de uno de los
ADC_CLOCK_RATE_ y uno de los valores ADC_CLOCK_SRC_ se definen a
continuación. Los valores ADC_CLOCK_SRC_ * determinan el reloj de entrada para el
ADC. No todos los valores están disponibles en todos los dispositivos a fin de
comprobar la hoja de datos del dispositivo para determinar las opciones de
configuración de valor. Independientemente de la fuente, la frecuencia final para
dispositivos TM4C123x debe ser 16 MHz y de piezas TM4C129x después de dividir
debe estar entre 16 y 32 MHz.
Nota:
Para los dispositivos TM4C123x, si está habilitado el PLL, el PLL / 25 se utiliza cuando
el reloj del ADC menos que se especifique ADC_CLOCK_SRC_PIOSC. Si el PLL está
desactivada, el MOSC se utiliza como la fuente de reloj menos que se especifique
ADC_CLOCK_SRC_PIOSC.
ADC_CLOCK_SRC_PLL - La salida principal PLL (clase TM4x129 solamente).
ADC_CLOCK_SRC_PIOSC - El PIOSC interna a 16 MHz.
ADC_CLOCK_SRC_ALTCLK - La salida de la ALTCLK en el módulo de control del
sistema (sólo clase TM4x129).
ADC_CLOCK_SRC_MOSC - El MOSC externa (clase TM4x129 solamente).
ADC_CLOCK_RATE valores controlan la frecuencia muestras se proporcionan a la
aplicación. Los valores son los siguientes:
ADC_CLOCK_RATE_FULL - Todas las muestras.
ADC_CLOCK_RATE_HALF - Cada otra muestra.
ADC_CLOCK_RATE_QUARTER - Uno de cada cuatro muestras.
ADC_CLOCK_RATE_EIGHTH - Cada ninguna de las muestras.
El parámetro ui32ClockDiv permite dividir una frecuencia más alta hacia abajo en el
rango válido para los ADC. Este parámetro es típicamente única opción
ADC_CLOCK_SRC_PLL utiliza porque es el único valor de reloj que puede ser con el
en el rango correcto para utilizar el divisor. El valor real varía de 1 a 64 años.
Devoluciones:
Ninguna.
ADCComparatorConfigure
Configura un comparador digital ADC.
Prototipo:
vacío
Descripción:
Esta función configura un comparador. El parámetro ui32Config es el resultado de una
operación lógica OR entre los valores ADC_COMP_INT_xxx
ADC_COMP_TRIG_xxx, y.
ADCComparatorIntClear
parámetros:
ui32Base es la dirección base del módulo ADC.
ui32Status es el estado interrupciones de mapa de bits para borrar.
Descripción:
El estado de interrupción especificada se borra.
Devoluciones:
Ninguna.
ADCComparatorIntDisable
Prototipo:
vacío
parámetros:
ui32Base es la dirección base del módulo ADC.
ui32SequenceNum es el número de secuencia de la muestra.
Descripción:
Esta función desactiva la muestra de interrupción secuencia comparador solicitada.
Devoluciones:
Ninguna.
ADCComparatorIntEnable
Permite a una interrupción de muestreo de la secuencia de comparación.
Prototipo:
vacío
parámetros:
ui32Base es la dirección base del módulo ADC.
ui32SequenceNum es el número de secuencia de la muestra.
Descripción:
Esta función permite a la muestra de interrupción secuencia comparador solicitado.
Devoluciones:
Ninguna.
ADCComparatorIntStatus
parámetros:
ui32Base es la dirección base del módulo ADC.
Descripción:
Esta función devuelve los bits de estado de interrupción comparador digitales. Este
estado es la secuencia agnóstico.
Devoluciones:
El estado comparador de interrupción de corriente.
ADCComparatorRegionSet
Define las regiones comparador digital ADC.
Prototipo:
vacío
parámetros:
ui32Base es la dirección base del módulo ADC.
ui32Comp es el índice del comparador configurar.
ui32LowRef es el punto de referencia para el umbral de baja / media banda.
ui32HighRef es el punto de referencia para el medio / alto umbral de banda.
Descripción:
La operación comparador digital ADC se basa en tres regiones de valor ADC:
De banda baja se define como cualquier valor ADC menor que o igual al valor
ui32LowRef.
de banda media se define como cualquier valor ADC mayor que el valor ui32LowRef
pero inferior o igual al valor ui32HighRef. de banda alta se define como cualquier valor
ADC mayor que el valor ui32HighRef.
Devoluciones:
Ninguna.
ADCComparatorReset
Restablece las condiciones actuales del comparador digital ADC.
Prototipo:
vacío
parámetros:
ui32Base es la dirección base del módulo ADC.
ui32Comp es el índice del comparador.
bTrigger es la bandera para indicar el restablecimiento de las condiciones de disparo.
bInterrupt es la bandera para indicar el restablecimiento de las condiciones de
interrupción.
Descripción:
Debido a que el comparador digital utiliza los valores de ADC actuales y anteriores,
esta función permite que el comparador se restablecerá a su valor inicial para evitar que
los datos obsoletos de ser utilizado cuando se activa una secuencia.
Devoluciones:
Ninguna.
ADCHardwareOversampleConfigure
Configura el factor de sobremuestreo de hardware de la ADC.
Prototipo:
vacío
parámetros:
ui32Base es la dirección base del módulo ADC.
ui32Factor es el número de muestras que se promedió.
Descripción:
Esta función configura el hardware sobremuestreo para la ADC, que puede ser utilizado
para proporcionar una mejor resolución de los datos muestreados. Sobremuestreo se
logra haciendo un promedio de varias muestras de la misma entrada analógica. Seis
tasas de sobremuestreo diferentes son compatibles; 2x, 4x, 8x, 16x, 32x, 64x y. La
especificación de un factor de sobremuestreo de cero desactiva sobremuestreo de
hardware.
ADCIntClear
Borra fuente de secuencia de interrupción de muestreo.
Prototipo:
vacío
parámetros:
ui32Base es la dirección base del módulo ADC.
ui32SequenceNum es el número de secuencia de la muestra.
Descripción:
La muestra de interrupción secuencia especificada está desactivada, de modo que ya no
afirma. Esta función debe ser llamada en el controlador de interrupciones para mantener
la interrupción se dispare de nuevo inmediatamente después de la salida.
Nota:
Debido a que hay un buffer de escritura en el procesador Cortex-M, es posible que
pasen varios ciclos de reloj antes de que la fuente de interrupción es en realidad se
aclaró. Por lo tanto, se recomienda que la fuente de interrupción se borrará temprano en
el controlador de interrupción (a diferencia de la última acción) para evitar volver desde
el controlador de interrupción antes de que la fuente de interrupción es en realidad
borra. El no hacerlo puede resultar en el controlador de interrupción se volvió a entrar
inmediatamente (debido a que el controlador de interrupciones sigue considerando que
la fuente de interrupción afirmó).
Devoluciones:
Ninguna.
ADCIntClearEx
Borra las fuentes de interrupción ADC especificados.
Prototipo:
vacío
parámetros:
ui32Base es la dirección base del puerto ADC.
ui32IntFlags es la máscara de bits de las fuentes de interrupción desactivar.
Descripción:
Borra la interrupción de la fuente de interrupción especificada (s).
El parámetro ui32IntFlags es el OR lógico de los valores ADC_INT_ *. Véase la
función ADCIntEnableEx () para la lista de valores posibles ADC_INT *.
Nota:
Debido a que hay un buffer de escritura en el procesador Cortex-M, es posible que
pasen varios ciclos de reloj antes de que la fuente de interrupción es en realidad se
aclaró. Por lo tanto, se recomienda que la fuente de interrupción se borrará temprano en
el controlador de interrupción (a diferencia de la última acción) para evitar volver desde
el controlador de interrupción antes de que la fuente de interrupción es en realidad
borra. El no hacerlo puede resultar en el controlador de interrupción se volvió a entrar
inmediatamente (debido a que el controlador de interrupciones sigue considerando que
la fuente de interrupción afirmó).
Devoluciones:
Ninguna.
ADCIntDisable
Desactiva una interrupción secuencia de muestras.
Prototipo:
vacío
parámetros:
ui32Base es la dirección base del módulo ADC.
ui32SequenceNum es el número de secuencia de la muestra.
Descripción:
Esta función desactiva la alarma de secuencia de muestras solicitada.
Devoluciones:
Ninguna.
ADCIntDisableEx
Desactiva fuentes de interrupción del ADC.
Prototipo:
vacío
parámetros:
ui32Base es la dirección base del módulo ADC.
ui32IntFlags es la máscara de bits de las fuentes de interrupción desactivar.
Descripción:
Esta función desactiva las fuentes de interrupción ADC indicados. Sólo las fuentes que
están habilitadas se puede reflejar a la interrupción del procesador; fuentes con
discapacidad no tienen ningún efecto en el procesador.
El parámetro ui32IntFlags es el OR lógico de cualquiera de los siguientes:
ADC_INT_SS0 - interrumpió debido a la secuencia de muestras ADC 0.
ADC_INT_SS1 - interrumpió debido a la ADC secuencia de muestras 1.
ADC_INT_SS2 - interrumpió debido a la secuencia de muestras ADC 2.
ADC_INT_SS3 - interrumpió debido a la secuencia de muestras ADC 3.
ADC_INT_DMA_SS0 - interrumpió debido a la DMA en secuencia de muestras ADC
0.
ADC_INT_DMA_SS1 - interrumpió debido a la DMA en ADC secuencia de muestras
1.
ADC_INT_DMA_SS2 - interrumpió debido a la DMA en ADC secuencia de la muestra
2.
ADC_INT_DMA_SS3 - interrumpió debido a la DMA en secuencia de muestras ADC
3.
ADC_INT_DCON_SS0 - interrumpir debido al comparador digital en secuencia de
muestras ADC 0.
ADC_INT_DCON_SS1 - interrumpir debido al comparador digital de ADC secuencia
de muestras 1.
ADC_INT_DCON_SS2 - interrumpir debido al comparador digital ADC en secuencia
de la muestra 2.
ADC_INT_DCON_SS3 - interrumpir debido al comparador digital en secuencia de
muestras ADC 3.
Devoluciones:
Ninguna.
ADCIntEnable
Activa una alarma de secuencia de muestras.
Prototipo:
vacío
parámetros:
ui32Base es la dirección base del módulo ADC.
ui32SequenceNum es el número de secuencia de la muestra.
Descripción:
Esta función permite que la secuencia de muestras de interrupción solicitada. Cualquier
interrupción en circulación se borran antes de activar la alarma de secuencia de
muestras.
Devoluciones:
Ninguna.
ADCIntEnableEx
Permite a fuentes de interrupción del ADC.
Prototipo:
vacío
parámetros:
ui32Base es la dirección base del módulo ADC.
ui32IntFlags es la máscara de bits de las fuentes de interrupción desactivar.
Descripción:
Esta función permite a las fuentes de interrupción ADC indicados. Sólo las fuentes que
están habilitadas se puede reflejar a la interrupción del procesador; fuentes con
discapacidad no tienen ningún efecto en el procesador.
El parámetro ui32IntFlags es el OR lógico de cualquiera de los siguientes:
ADC_INT_SS0 - interrumpió debido a la secuencia de muestras ADC 0.
ADC_INT_SS1 - interrumpió debido a la ADC secuencia de muestras 1.
ADC_INT_SS2 - interrumpió debido a la secuencia de muestras ADC 2.
ADC_INT_SS3 - interrumpió debido a la secuencia de muestras ADC 3.
ADC_INT_DMA_SS0 - interrumpió debido a la DMA en secuencia de muestras ADC
0.
ADC_INT_DMA_SS1 - interrumpió debido a la DMA en ADC secuencia de muestras
1.
ADC_INT_DMA_SS2 - interrumpió debido a la DMA en ADC secuencia de la muestra
2.
ADC_INT_DMA_SS3 - interrumpió debido a la DMA en secuencia de muestras ADC
3.
ADC_INT_DCON_SS0 - interrumpir debido al comparador digital en secuencia de
muestras ADC 0.
ADC_INT_DCON_SS1 - interrumpir debido al comparador digital de ADC secuencia
de muestras 1.
ADC_INT_DCON_SS2 - interrumpir debido al comparador digital ADC en secuencia
de la muestra 2.
ADC_INT_DCON_SS3 - interrumpir debido al comparador digital en secuencia de
muestras ADC 3.
Devoluciones:
Ninguna.
ADCIntRegister
Registra un controlador de interrupciones para una interrupción del ADC.
Prototipo:
vacío
parámetros:
ui32Base es la dirección base del módulo ADC.
ui32SequenceNum es el número de secuencia de la muestra.
pfnHandler es un puntero a la función que se llamará cuando se produce la secuencia de
interrupción de muestreo ADC.
Descripción:
Esta función establece el manejador a ser llamado cuando se produce una interrupción
de la secuencia de la muestra. Esta función permite la interrupción global en el
controlador de interrupciones; la interrupción de la secuencia debe estar habilitado con
ADCIntEnable (). Es responsabilidad del gestor de interrupciones para desactivar la
fuente de interrupción a través de ADCIntClear ().
Ver también:
IntRegister () para obtener información importante acerca de cómo registrar el
manejador de interrupciones.
Devoluciones:
Ninguna.
ADCIntStatus
Obtiene el estado de alarma actual.
Prototipo:
uint32_t
ADCIntStatus (uint32_t ui32Base, uint32_t ui32SequenceNum, bool bMasked)
parámetros:
ui32Base es la dirección base del módulo ADC.
ui32SequenceNum es el número de secuencia de la muestra.
bMasked es falsa si se requiere que el estado de alarma cruda y verdadera si se requiere
la condición de interrupción enmascarada.
Descripción:
Esta función devuelve el estado de alarma para la secuencia de muestra especificado. O
bien el estado de alarma en bruto o el estado de las interrupciones que se les permite
reflejar al procesador pueden ser devueltos.
Devoluciones:
El estado de alarma crudo o enmascarada actual.
ADCIntStatusEx
Obtiene el estado de interrupción para el módulo ADC especificado.
Prototipo:
uint32_t
parámetros:
ui32Base es la dirección base del módulo ADC.
bMasked especifica si se devuelve el estado de interrupción enmascarada o crudos.
Descripción:
Si bMasked se establece como verdadero, entonces se devuelve el estado de
interrupción enmascarada; de lo contrario, se devuelve el estado de alarma en bruto.
Devoluciones:
Devuelve el estado de interrupción de corriente para el módulo ADC especificado. El
valor devuelto es el OR lógico de los valores ADC_INT_ * que están actualmente
activos.
ADCIntUnregister
Se elimina el registro del controlador de interrupción para una interrupción del ADC.
Prototipo:
vacío
parámetros:
ui32Base es la dirección base del módulo ADC.
ui32SequenceNum es el número de secuencia de la muestra.
Descripción:
Esta función elimina el registro del manejador de interrupciones. Esta función se
desactiva la interrupción global en el controlador de interrupciones; la interrupción de
secuencia debe ser desactivado a través ADCIntDisable ().
Ver también:
IntRegister () para obtener información importante acerca de cómo registrar el
manejador de interrupciones.
Devoluciones:
Ninguna.
ADCPhaseDelayGet
Obtiene el retardo de fase entre un disparador y el inicio de una secuencia.
Prototipo:
uint32_t
parámetros:
ui32Base es la dirección base del módulo ADC.
Descripción:
Esta función obtiene el retardo de fase de corriente entre la detección de un evento ADC
de disparo y el inicio de la secuencia de la muestra.
Devoluciones:
Devuelve el retardo de fase, se especifica como uno de ADC_PHASE_0,
ADC_PHASE_22_5,
ADC_PHASE_45, ADC_PHASE_67_5, ADC_PHASE_90, ADC_PHASE_112_5,
ADC_PHASE_135, ADC_PHASE_157_5, ADC_PHASE_180, ADC_PHASE_202_5,
ADC_PHASE_225, ADC_PHASE_247_5, ADC_PHASE_270, ADC_PHASE_292_5,
ADC_PHASE_315, o ADC_PHASE_337_5.
ADCPhaseDelaySet
Ajusta el retardo de fase entre un disparador y el inicio de una secuencia.
Prototipo:
vacío
ADCPhaseDelaySet (uint32_t ui32Base, uint32_t ui32Phase)
parámetros:
ui32Base es la dirección base del módulo ADC.
ui32Phase es el retardo de fase, se especifica como uno de ADC_PHASE_0,
ADC_PHASE_22_5,
ADC_PHASE_45, ADC_PHASE_67_5, ADC_PHASE_90, ADC_PHASE_112_5,
ADC_PHASE_135, ADC_PHASE_157_5, ADC_PHASE_180, ADC_PHASE_202_5,
ADC_PHASE_225, ADC_PHASE_247_5, ADC_PHASE_270, ADC_PHASE_292_5,
ADC_PHASE_315, o ADC_PHASE_337_5.
Descripción:
Esta función establece el retardo de fase entre la detección de un evento desencadenante
ADC y el inicio de la secuencia de muestras. Al seleccionar un retardo de fase diferente
para un par de módulos ADC (como ADC_PHASE_0 y ADC_PHASE_180) y que tiene
cada muestra módulo ADC la misma entrada analógica, es posible aumentar la
velocidad de muestreo de la entrada analógica (con muestras de N, N + 2 , N + 4, y así
sucesivamente, que viene de la primera ADC y las muestras de N + 1, N + 3, N + 5, y
así sucesivamente, que viene de la segunda ADC). El módulo ADC tiene un retardo de
fase única que se aplica a todas las secuencias de la muestra dentro de ese módulo.
Nota:
Esta capacidad no está disponible en todas partes.
Devoluciones:
Ninguna.
ADCProcessorTrigger
Provoca un disparador procesador para una secuencia de muestras.
Prototipo:
vacío
Descripción:
Esta función activa una secuencia de muestras procesador iniciada si el disparador
secuencia de muestras está configurado para ADC_TRIGGER_PROCESSOR. Si
ADC_TRIGGER_WAIT se ORed en el número de secuencia, el gatillo procesador
iniciada se retrasa hasta que un disparador procesador de iniciado más tarde a un
módulo ADC diferente que especifica ADC_TRIGGER_SIGNAL, lo que permite
múltiples ADCs partir de un gatillo procesador iniciada de una manera síncrona.
Devoluciones:
Ninguna.
ADCReferenceGet
Devuelve la configuración actual de la referencia del ADC.
Prototipo:
uint32_t
parámetros:
ui32Base es la dirección base del módulo ADC.
Descripción:
Devuelve el valor de la configuración de referencia ADC. El valor devuelto es uno de
ADC_REF_INT, o ADC_REF_EXT_3V.
Nota:
El valor devuelto por esta función sólo tiene sentido si se utiliza en una parte que es
capaz de utilizar una referencia externa. Consulte la hoja de datos de su parte para ver si
hay una entrada de referencia externa.
Devoluciones:
El ajuste actual de la referencia del ADC.
ADCReferenceSet
Selecciona la referencia ADC.
Prototipo:
vacío
parámetros:
ui32Base es la dirección base del módulo ADC.
ui32Ref es la referencia de usar.
Descripción:
La referencia ADC se establece como especificado por ui32Ref. Debe ser uno de
ADC_REF_INT, o ADC_REF_EXT_3V para la referencia interna o externa Si se elige
ADC_REF_INT, a continuación, una referencia 3V interna se utiliza y no se necesita
referencia externa. Si se elige ADC_REF_EXT_3V, a continuación, una referencia 3V
debe ser suministrado a la clavija AVREF.
Nota:
La referencia ADC sólo se puede seleccionar en las partes que tienen una referencia
externa. Consulte la hoja de datos de su parte para determinar si hay una referencia
externa.
Devoluciones:
Ninguna.
ADCSequenceConfigure
Configura la fuente de disparo y la prioridad de una secuencia de muestras.
Prototipo:
vacío
parámetros:
ui32Base es la dirección base del módulo ADC.
ui32SequenceNum es el número de secuencia de la muestra.
ui32Trigger es la fuente de disparo que inicia la secuencia de muestras; debe ser uno de
los valores ADC_TRIGGER_ *.
ui32Priority es la prioridad relativa de la secuencia de la muestra con respecto a las
otras secuencias de la muestra.
Descripción:
Esta función configura los criterios para la iniciación de una secuencia de muestras.
secuenciadores muestra válida van de cero a tres; secuenciador cero captura hasta ocho
muestras, secuenciadores uno y dos de captura de hasta cuatro muestras, y un
secuenciador de tres captura una sola muestra. La condición de disparo y la prioridad
(con respecto a la ejecución de otro secuenciador de muestras) se establecen.
El parámetro ui32Trigger puede tomar los siguientes valores:
ADC_TRIGGER_PROCESSOR - Un disparador generado por el procesador, a través
de la función ADCProcessorTrigger ().
ADC_TRIGGER_COMP0 - Un disparador generado por la primera comparador
analógico; configurado con ComparatorConfigure ().
ADC_TRIGGER_COMP1 - Un disparador generado por el segundo comparador
analógico; configurado con ComparatorConfigure ().
ADC_TRIGGER_COMP2 - Un disparador generado por la tercera comparador
analógico; configurado con ComparatorConfigure ().
ADC_TRIGGER_EXTERNAL - Un disparador generado por una entrada desde el pin
B4 puerto.
Nota
que algunos microcontroladores pueden elegir entre cualquier GPIO usando la función
GPIOADCTriggerEnable ().
Devoluciones:
Ninguna.
ADCSequenceDataGet
Prototipo:
int32_t
parámetros:
ui32Base es la dirección base del módulo ADC.
ui32SequenceNum es el número de secuencia de la muestra.
pui32Buffer es la dirección en la que se almacenan los datos.
Descripción:
Esta función copia los datos de la salida de la muestra especificada secuenciador FIFO a
un tampón residente en memoria. El número de muestras disponibles en el FIFO de
hardware se copian en la memoria intermedia, que se supone que es lo suficientemente
grande como para mantener que muchas muestras. Esta función sólo devuelve las
muestras que están actualmente disponibles, que puede no ser la secuencia completa de
la muestra si es en el proceso de ejecución.
Devoluciones:
Devuelve el número de muestras copiados en la memoria intermedia.
ADCSequenceDisable
Desactiva una secuencia de muestras.
Prototipo:
vacío
parámetros:
ui32Base es la dirección base del módulo ADC.
ui32SequenceNum es el número de secuencia de la muestra.
Descripción:
Previene la secuencia de muestra especificado de ser capturados cuando se detecta su
activación. Una secuencia de muestras debe estar desactivado antes de que se configura.
Devoluciones:
Ninguna.
ADCSequenceDMADisable
Desactiva DMA para secuenciadores de muestra.
Prototipo:
vacío
parámetros:
ui32Base es la dirección base del módulo ADC.
ui32SequenceNum es el número de secuencia de la muestra.
Descripción:
Evita que el secuenciador de muestra especificado desde la generación de solicitudes de
DMA.
Devoluciones:
Ninguna.
ADCSequenceDMAEnable
Habilita DMA para secuenciadores de muestra.
Prototipo:
vacío
parámetros:
ui32Base es la dirección base del módulo ADC.
ui32SequenceNum es el número de secuencia de la muestra.
Descripción:
Permite que las solicitudes de DMA a ser generados sobre la base del nivel de FIFO del
secuenciador muestra.
Devoluciones:
Ninguna.
ADCSequenceEnable
Habilita una secuencia de muestras.
Prototipo:
vacío
parámetros:
ui32Base es la dirección base del módulo ADC.
ui32SequenceNum es el número de secuencia de la muestra.
Descripción:
Permite que la secuencia de muestra especificado para ser capturado cuando se detecta
su activación. Una secuencia de muestras debe configurarse antes de que esté habilitada.
Devoluciones:
Ninguna.
ADCSequenceOverflow
Determina si se ha producido una secuencia de desbordamiento de la muestra.
Prototipo:
int32_t
ADCSequenceOverflow (uint32_t ui32Base, uint32_t ui32SequenceNum)
parámetros:
ui32Base es la dirección base del módulo ADC.
ui32SequenceNum es el número de secuencia de la muestra.
Descripción:
Esta función determina si se ha producido un desbordamiento de secuencia de muestras.
Desbordamiento ocurre si las muestras capturadas no son leídos de la FIFO antes de que
ocurra el siguiente disparo.
Devoluciones:
Devuelve cero si no había un exceso de capacidad, y no cero si no lo era.
ADCSequenceOverflowClear
Borra la condición de desbordamiento en una secuencia de muestras.
Prototipo:
vacío
parámetros:
ui32Base es la dirección base del módulo ADC.
ui32SequenceNum es el número de secuencia de la muestra.
Descripción:
Esta función borra una condición de desbordamiento en una de las secuencias de
muestras. La condición de desbordamiento debe ser limpiado con el fin de detectar una
condición de desbordamiento posterior (que de otro modo no causa ningún daño).
Devoluciones:
Ninguna.
ADCSequenceStepConfigure
Configurar un paso del secuenciador de muestras.
Prototipo:
vacío
parámetros:
ui32Base es la dirección base del módulo ADC.
ui32SequenceNum es el número de secuencia de la muestra.
ui32Step es el paso para ser configurado.
ui32Config es la configuración de este paso; debe ser un OR lógico de ADC_CTL_TS,
ADC_CTL_IE, ADC_CTL_END, ADC_CTL_D, selecciona uno de los canales de
entrada
(ADC_CTL_CH0 través ADC_CTL_CH23), y una de las selecciona comparador digital
(ADC_CTL_CMP0 través ADC_CTL_CMP7).
Descripción:
Esta función configura el ADC para un paso de una secuencia de muestra. El ADC se
puede configurar para la operación de una sola terminal o diferencial (el bit
ADC_CTL_D selecciona el funcionamiento diferencial cuando se fija), el canal a ser
muestreado puede ser elegido (el ADC_CTL_CH0 a través de valores
ADC_CTL_CH23), y el sensor de temperatura interna se puede seleccionar (los
ADC_CTL_TS poco). Además, este paso se puede definir como el último en la
secuencia (el bit ADC_CTL_END) y puede ser configurado para causar una
interrupción cuando el paso se completa (el bit ADC_CTL_IE). Si los comparadores
digitales están presentes en el dispositivo, este paso también puede ser configurado para
enviar la muestra de ADC al comparador seleccionado utilizando ADC_CTL_CMP0
través ADC_CTL_CMP7. La configuración es utilizada por el ADC en el momento
apropiado cuando se produce el disparo de esta secuencia.
Nota:
Si el comparador digital está presente y se activa mediante el ADC_CTL_CMP0 a
través selecciona ADC_CTL_CMP7, la muestra de ADC no está escrita en la FIFO
datos de la secuencia ADC.
El parámetro ui32Step determina el orden en el que las muestras son capturados por el
ADC cuando se produce el disparo. Puede variar de cero a siete para el primero
secuenciador muestra, de cero a tres para el segundo y tercero secuenciador muestra, y
sólo puede ser cero para el cuarto secuenciador muestra.
Modo diferencial sólo funciona con pares de canales adyacentes (por ejemplo, 0 y 1). La
selección de canal debe ser el número de la pareja de canales de la muestra (por
ejemplo, ADC_CTL_CH0 de 0 y 1, o ADC_CTL_CH1 para 2 y 3) o resultados no
definidos son devueltos por el ADC. Además, si se selecciona el modo diferencial
cuando se muestrea el sensor de temperatura, los resultados no definidos son devueltos
por el ADC.
Es responsabilidad de la persona que llama para asegurarse de que no se especifica una
configuración válida; esta función no comprueba la validez de la configuración
especificada.
Devoluciones:
Ninguna.
ADCSequenceUnderflow
Prototipo:
int32_t
ADCSequenceUnderflow (uint32_t ui32Base, uint32_t ui32SequenceNum)
parámetros:
ui32Base es la dirección base del módulo ADC.
ui32SequenceNum es el número de secuencia de la muestra.
Descripción:
Esta función determina si se ha producido un desbordamiento secuencia de muestras.
Underflow ocurre si demasiadas muestras se leen de la memoria FIFO.
Devoluciones:
Devuelve cero si no había un flujo inferior, y no cero si no lo era.
ADCSequenceUnderflowClear
Prototipo:
vacío
parámetros:
ui32Base es la dirección base del módulo ADC.
ui32SequenceNum es el número de secuencia de la muestra.
Descripción:
Esta función borra una condición de subdesbordamiento en uno de los secuenciadores
de muestra. La condición de subdesbordamiento debe ser limpiado con el fin de detectar
una condición de subdesbordamiento posterior (que de otro modo no causa ningún
daño).
Devoluciones:
Ninguna.
ADCSoftwareOversampleConfigure
Prototipo:
vacío
parámetros:
ui32Base es la dirección base del módulo ADC.
ui32SequenceNum es el número de secuencia de la muestra.
ui32Factor es el número de muestras que se promedió.
Descripción:
Esta función configura el software de sobremuestreo para la ADC, que puede ser
utilizado para proporcionar una mejor resolución de los datos muestreados.
Sobremuestreo se logra haciendo un promedio de varias muestras de la misma entrada
analógica. Tres tasas de sobremuestreo diferentes son compatibles; 2x, 4x, 8x y.
Sobremuestreo sólo se admite en los secuenciadores de muestra que son más de una
muestra en profundidad (es decir, no se admite el cuarto secuenciador de muestras).
Sobremuestreo por 2x (por ejemplo) divide la profundidad de la muestra de
secuenciador por dos; por lo sobremuestreo 2x en el primer secuenciador de muestras
sólo puede proporcionar cuatro muestras por gatillo. Esto también significa que
sobremuestreo 8x sólo está disponible en el primer secuenciador de muestras.
Devoluciones:
Ninguna.
ADCSoftwareOversampleDataGet
Obtiene los datos capturados para una secuencia de muestras usando el software de
sobremuestreo.
Prototipo:
vacío
parámetros:
ui32Base es la dirección base del módulo ADC.
ui32SequenceNum es el número de secuencia de la muestra.
pui32Buffer es la dirección en la que se almacenan los datos.
ui32Count es el número de muestras que se deben leer.
Descripción:
Esta función copia los datos de la salida especificada secuencia de muestras a un búfer
FIFO residente en memoria con el software de sobremuestreo aplica. El número
solicitado de muestras se copian en el búfer de datos; Si no hay suficientes muestras en
la FIFO de hardware para satisfacer esta cantidad de elementos de datos
sobremuestreadas, a continuación, se devuelven resultados incorrectos. Es
responsabilidad de la persona que llama para leer solamente las muestras que están
disponibles y esperar hasta que hay suficientes datos disponibles, por ejemplo como
resultado de la recepción de una interrupción.
Devoluciones:
Ninguna.
ADCSoftwareOversampleStepConfigure
Configura un paso del secuenciador software de sobremuestreo.
Prototipo:
vacío
parámetros:
ui32Base es la dirección base del módulo ADC.
ui32SequenceNum es el número de secuencia de la muestra.
ui32Step es el paso para ser configurado.
ui32Config es la configuración de este paso.
Descripción:
Devoluciones:
Ninguna.
Ejemplo de programación