MicroPython ADC_Read
Die Versorgungsspannung kann über den internen Analog-Digital-Converter des micro:bit ausgelesen werden. Hierüber könnte beispielsweise eine Spannungsüberwachung oder eine Batterie-Warnung integriert werden. Die Funktion supplyVoltage() übernimmt dabei das Auslesen aus dem ADC-Wandler. Sie erwartet keine Übergabeparameter und liefert eine einzelne Variable als Rückgabewert. Diese enthält die gemessene Spannung.
# Import des micro:bit Moduls
from microbit import *
# Variablen die zur Umrechnung benötigt werden
uref = 0.00322265625 # 3,3 V / 1024 (max. Spannung am ADC-Pin / ADC Auflösung)
uratio = 2.7857142 # (10 kOhm + 5,6 kOhm) / 5,6 kOhm [(R1 + R2) / R2, Spannungsteilerverhältnis]
def supplyVoltage():
adcvoltage = pin2.read_analog() # Auslesen des ADC-Werts
voltaged = uref * adcvoltage # ADC-Wert in Volt umrechnen
voltagep = voltaged * uratio # Gemessene Spannung mit dem Spannungteilerverhältnis multiplizieren um die tatsächliche Spannung zu errechnen
return voltagep # gibt die Variable voltagep zurück
# Demo-Schleife
while True:
sup_volt = supplyVoltage() # führt die Funktion supplyVoltage aus und speichert die Rückgabe in sup_volt
print("Eingangsspannung = " + str(sup_volt) + " V") # Gibt den Wert aus sup_volt formatiert mit Text aus
sleep(2000)