Heute hatte ich ein Interview, dort fragten sie mich, ob man einen Mikrocontroller und eine Batterie bekommt, wie misst man dann den Spannungspegel? Schreiben Sie die Schritte von Grund auf mit Pseudocode.
Wie kann das gemacht werden?
Heute hatte ich ein Interview, dort fragten sie mich, ob man einen Mikrocontroller und eine Batterie bekommt, wie misst man dann den Spannungspegel? Schreiben Sie die Schritte von Grund auf mit Pseudocode.
Wie kann das gemacht werden?
Antworten:
Wenn sie hinter dem Pseudocode her waren, war das eine schlechte Frage. es hängt alles vom Mikrocontroller ab. Ich hätte dem Kandidaten wahrscheinlich das Datenblatt des Mikrocontrollers gegeben und beobachtet, wie er sich durch dieses 300-seitige Dokument arbeitet.
Auf jeden Fall schließen Sie die Batterie an einen ADC-Eingang an (Annahmen: Der Mikrocontroller verfügt über einen ADC an Bord und die Batteriespannung liegt unter der Versorgungsspannung des Mikrocontrollers).
Ich denke, der Haken dabei ist, dass Mikrocontroller eine externe Referenz für ihre A / D benötigen. Die Standardreferenz ist das Netzteil. Sie können eine externe Referenz verwenden und die Batteriespannung auf einen Wert unterhalb dieser Referenz aufteilen. Dadurch wird die Batterie jedoch ständig entladen, was möglicherweise keine gute Idee ist.
Meine Antwort wäre: Erhalten Sie eine Shunt-Referenz für eine Spannung, die niedriger als der interessierende Batteriebereich ist. Nehmen wir eine ~ 5V-Batterie und einen TL431 oder ähnliches als 2,5V-Referenz an. Messen Sie nun die TL431-Spannung anhand der Batterie als Referenz. Angenommen, ein 10-Bit-A / D (am häufigsten) lautet N. Jetzt wissen Sie das
N * (Battery / 1023) = 2.5
daher
Battery = 2.5 * 1023 / N
Wenn der von der Referenz aufgenommene Strom ein Problem darstellt, würde ich seine Leistung von einem Ausgangsstift umschalten: Es wird keine Leistung gezogen, es sei denn, wir möchten die Messung durchführen (was eine sehr kurze Zeitspanne sein wird).
========================================
Nun einige Hausaufgaben als Vorbereitung für das nächste Interview: Sie haben ein USB-betriebenes 5-V-Gerät mit einem Mikrocontroller und einem LM35-Temperatursensor. Wie würden Sie die Temperatur bestimmen? Hinweise: Was gibt der LM35 aus und überprüfen Sie den Spannungsbereich einer USB-Steckdose. (Es gibt eine alternative Antwort: Warum verwenden Sie bei $ & ^ * ^ & überhaupt keinen digitalen Temperatursensor?)