Hoy tuve una entrevista, allí me preguntaron, si me daban un microcontrolador y una batería, ¿cómo se mide el nivel de voltaje? Escribe los pasos desde cero con un pseudo código.
¿Cómo se puede hacer esto?
Hoy tuve una entrevista, allí me preguntaron, si me daban un microcontrolador y una batería, ¿cómo se mide el nivel de voltaje? Escribe los pasos desde cero con un pseudo código.
¿Cómo se puede hacer esto?
Si estaban detrás del pseudo código, entonces esa era una mala pregunta; Todo depende del microcontrolador. Probablemente le habría dado al candidato la hoja de datos del microcontrolador y observaría cómo trabaja en ese documento de 300 páginas.
De todos modos, conecte la batería a una entrada ADC (supuestos: el microcontrolador tiene ADC a bordo y el voltaje de la batería es menor que el voltaje de suministro del microcontrolador).
Creo que el problema aquí es que los microcontroladores necesitan una referencia adicional para su A / D. La referencia por defecto es la fuente de alimentación. Puede usar una referencia externa y dividir el voltaje de la batería a algo por debajo de esa referencia, pero eso pone un drenaje constante en la batería, lo que podría no ser una buena idea.
Mi respuesta sería: obtener una referencia de tipo derivación para un voltaje que sea inferior al rango de interés de la batería. Supongamos una batería de ~ 5V, y un TL431 o similar como referencia de 2.5V. Ahora mida el voltaje TL431, usando la batería como referencia. Supongamos un A / D de 10 bits (el más común), que dice N. Ahora lo sabes
N * (Battery / 1023) = 2.5
por lo tanto
Battery = 2.5 * 1023 / N
Si la corriente consumida por la referencia es un problema, cambiaría su energía de un pin de salida: no se consume energía a menos que queramos hacer la medición (que será un período muy corto).
=========================================
Ahora algunas tareas como preparación para la próxima entrevista: Usted tiene un dispositivo de 5V alimentado por USB, que tiene un microcontrolador y un sensor de temperatura LM35. ¿Cómo determinarías la temperatura? Sugerencias: ¿qué hace el LM35? Y verifique el rango de voltaje de una toma USB. (Hay una respuesta alternativa: ¿por qué el $ & ^ * ^ & no usas un sensor de temperatura digital en primer lugar?).
Lea otras preguntas en las etiquetas microcontroller