¿Cuál es la diferencia entre un canal ADC STM32 inyectado y normal?

19

El manual de referencia del STM32F1 describe canales ADC "regulares" e "inyectados", pero no aclara la diferencia. ¿Cuál es la diferencia entre los dos tipos y cuándo podría usar uno u otro?

joeforker
fuente

Respuestas:

17

Puede configurar el ADC para leer en una secuencia de canales en un bucle. Esos canales se están convirtiendo regularmente. En modo inyectado, la conversión se desencadena por un evento externo o por software. Una conversión inyectada tiene mayor prioridad en comparación con una conversión "regular" y, por lo tanto, interrumpe las conversiones regulares.

Los diferentes modos ADC se explican en la nota de aplicación AN3116.

Sebastian Hölzer
fuente
8

El modo inyectado es un modo en el que la conversión de ADC se puede "inyectar" durante la conversión de canales regulares debido a algún disparador (temporizador u otra cosa). Esto es útil, por ejemplo, en la aplicación de control del motor, para retrasar la conversión hasta después de que se complete algún evento (como la conmutación del transistor) para que se reduzca el ruido de conversión.

Gustavo Litovsky
fuente
@ChrisStratton: Los que controlan los motores.
Gustavo Litovsky
Ah, está bien, ahora ha editado para aclarar que está hablando de lo que efectivamente son las solicitudes de conversión aleatoria del software, en comparación con las conversiones programadas más regularmente.
Chris Stratton
@ChrisStratton - Sí. Mi respuesta original fue escrita bastante rápido y me di cuenta de que no estaba clara.
Gustavo Litovsky
1
¿Es esta una cita directa del manual de referencia?
joeforker