Decisiones de diseño para usar ADC sin VREF

Estaba mirando la familia de procesadores KE02 de Freescale , y los diseñadores de MCU tomaron una decisión de diseño interesante que gira en torno al ADC que no puedo entender por completo.

El KE02 tiene una referencia de banda prohibida interna, pero no se puede utilizar como referencia para el ADC. En su lugar, la referencia ADC se establece en VREFH/VREFL y la referencia de banda prohibida está vinculada a un canal ADC. De la hoja de datos:ingrese la descripción de la imagen aquí

En cuanto a agregar un VREF externo, la hoja de datos establece que VREFH/VREFL está vinculado a AVDD/AGND en ciertos paquetes. Por lo que he visto, con la excepción del paquete con mayor número de pines, todos los demás KE02 tienen VREFH/VREFL vinculado a AVDD/AGND.

24.2.3 Referencia de voltaje alto (VREFH) VREFH es el voltaje de referencia alto para el convertidor. En algunos paquetes, VREFH está conectado internamente a VDDA. Si está disponible externamente, VREFH puede conectarse al mismo potencial que VDDA o puede ser impulsado por una fuente externa entre el VDDA mínimo especificado en la hoja de datos y el potencial VDDA (VREFH nunca debe exceder VDDA).

Si el riel AVDD/AGND es preciso y estable, usar AVDD/AGND como referencia ADC no es un problema. Sin embargo, si AVDD/AGND está vinculado a un riel ruidoso (piense en EMI, SMPS, etc.), uno inexacto (por ejemplo, riel regulado a +/- 4%) o a un riel no regulado (piense en una conexión directa a un batería), las lecturas del ADC se vuelven poco confiables.

En tal situación, la solución sería capturar explícitamente el valor analógico del intervalo de banda interno y aplicar una escala no lineal en función del valor adquirido. Esto es mucho trabajo adicional, especialmente porque esto no sería un problema si la banda prohibida interna o una banda prohibida externa estuvieran disponibles para el voltaje de referencia del ADC.

Entonces, ¿por qué Freescale diseñaría el ADC de esta manera? Ya hay una referencia de banda prohibida interna en el troquel: ¿sería tan difícil proporcionarla como una posible fuente para la referencia de ADC? ¿Hay beneficios de costo/rendimiento de no vincular la referencia de banda prohibida interna a la referencia de ADC?

¿O me estoy perdiendo un truco realmente simple para calibrar las lecturas de ADC en función del voltaje de banda prohibida medido que haría que esta implementación de ADC HW no sea un problema?

Tal vez me estoy perdiendo cuál es tu punto. La forma en que lo veo es que puede usar la referencia interna para "alimentar" los pines de referencia externos, pero AD23 no se puede usar como una entrada ADC cuando opta por esto. Si necesita AD23 como entrada, la referencia interna no va a ninguna parte y no está disponible.
ST hace lo mismo molesto en algunos de sus mcu
@Andyaka: dicho de otra manera, quiero que 0x0FFF (para un ADC de 12 bits) sea == el voltaje de banda prohibida interna, siempre, para todos los valores de AVDD, que esta arquitectura no puede admitir. No es terriblemente difícil hacer esto (los PIC de menos de $ 1 lo admiten), así que estoy tratando de descubrir la razón de ingeniería detrás de la decisión de Freescale de diseñar su ADC sin una conexión desde la banda prohibida interna a la referencia del ADC.
@Mike: Sí, veo este tipo de arquitectura ADC esparcida aquí y allá. Elegí el KE02 porque es la hoja de datos más reciente que he estado mirando. Realmente estoy tratando de encontrar un reemplazo de Cortex-M0(+) para el PIC16F1823, pero esa es una historia para otro día.

Respuestas (2)

Esto se está convirtiendo en una práctica bastante común con algunos fabricantes. Incluso algunos PIC de Microchip hacen esto (PIC10F322, si recuerdo correctamente).

Lo hacen de esta manera porque es más fácil para ellos y no mucho más difícil para ti. Y esta técnica puede funcionar bien, SI el riel Vdd es razonablemente constante durante el período de tiempo entre los ciclos de calibración.

Si piensa en la relación entre un voltaje de referencia medido y preciso y la variación de la referencia A/D, verá que a medida que cae el voltaje de referencia A/D (Vdd), la lectura de referencia aparente AUMENTARÁ.

Está bien, si Vdd proviene de un suministro de batería no regulado que cambia lentamente. No es tan bueno si necesita lecturas realmente precisas y su fuente de alimentación es ruidosa.

Tenga en cuenta que también está bien si está realizando principalmente lecturas radiométricas, como las que provienen de algún tipo de sensor tipo puente (medidor de tensión, sensor de presión, etc.).

Muchas veces con ese tipo de producto, todo lo que necesita es una indicación de batería baja. No necesita hacer ningún cálculo de tiempo de ejecución: simplemente lea la referencia interna y señale el estado de la batería dependiendo de si la lectura A/D está por encima o por debajo de algún valor que calculó al escribir su código.

Para muchos productos simples que funcionan con baterías, esta técnica está bien. Si necesita un convertidor A/D mejor, utilice un chip diferente o agregue un convertidor A/D externo con su propia referencia.

"o agregue un convertidor A/D externo con su propia referencia". Esta es la clave: si el paquete de número de pin más grande es excesivo, para obtener acceso a VREF, entonces la solución sería un pequeño chip ADC externo con las referencias analógicas personalizadas que necesite. También puede mejorar el diseño de PCB, tener el chip ADC con su propio plano y trazas, lejos de la MCU de conmutación digital.
Entonces, ¿sería seguro asumir que los ADC están diseñados de esta manera para ahorrar costos?
Cuanto más pienso en esto, más me parece extraño que un microcontrolador anunciado para aplicaciones sólidas no tenga ningún tipo de referencia vinculada a la referencia del ADC. Del sitio web: "La familia es una solución de MCU de última generación con rendimiento ESD/EMC mejorado para aplicaciones de dispositivos de alta confiabilidad sensibles a los costos que se utilizan en entornos de alto ruido eléctrico". Supongo que para obtener lecturas precisas con este MCU, uno querría tener un riel regulado de baja ondulación de alta precisión y un buen filtro AVDD, lo que agrega costo. Tal vez estoy haciendo de esto un asunto más grande de lo que es.

Creo que la razón principal de esta decisión de diseño es que la banda prohibida no sería aceptable como voltaje de referencia para el ADC utilizado sin modificaciones costosas, ya sea debido a los requisitos actuales del DAC (AVDD parece alimentarlo directamente, sin búferes involucrados) , o porque a 1.25V el comparador en el ADC tendría que ser más preciso (según la hoja de datos KE02, VDDA siempre debe estar entre VDD-0.3V y VDD+0.3V, por lo que será al menos 2.4V). Sin embargo, solo estoy especulando sobre las decisiones de diseño.