Systembeschreibung
------------------
Firmware der Steuerung des MCU-Butlers ab Version 2.0. Diese dient zum Ein-/Aussschalten der Betriebsspannungen auf dem Board,
zur Messung der systemrelevanten Betriebsspannungen und Anzeige der Werte auf einem OLED-Display DDS1306.

Funktionsweise
--------------
Nach dem Einschalten erfolgt die Initialisierung der ADCs, sowie der Grafik-Library. Danach erfolgt die Ausgabe eines
Einschaltscreens durch Aufruf der Funktion "getOFFscreen". Alle Boardspannungen sind noch ausgeschaltet (Pon = 0) 
Die Ein-/Aus-Taster werden jetzt zyklisch abgefragt und die Variable "Status" entsprechend gesetzt. Im Ausschaltstatus wird 
wiederum die Ausschaltmeldung auf dem Display ausgegeben und "Pon" auf 0 gesetzt (Ausschaltzustand). Ist "Status" = 1 wird "Pon"
auf 1 gesetzt und somit das Einschaltsignal für die Betriebsspannungen 3P3 und 5P erzeugt. Der Displayscreen wird über 
"getONscreen" aufgerufen. Dort werden 4 systemrelevanten Spannungen, die jeweils in der Variablen "Voltage" abgelegt werden,
dargestellt:

Uin = Boardeingangsspannung
3P3 = Betriebsspannung 3,3V
5P = Betriebsspannung 5V
PW = verwendete Systemspannung (3,3P oder 5P, entsprechend Vorgabe durch MCU-Modul)

Die Anzeigewerte werden jeweils durch Aufruf der Funktion "ADC_read", und unter Berücksichtigung eines Umrechnungswertes (Dividor)
gewonnen. Das ist notwendig, um die entsprechenden Spannungsteiler und ihre Toleranzen zu berücksichtigen. Die Vorgehensweise zu
deren Ermittlung, ist im Dokument "Berechnungen.ods" beschrieben. Bei Inbetriebnahme müssen die Anzeigewerte mit einer entsprechenden
Multimetermessung verglichen und gegebenenfalls nachkalibriert werden. Dazu lassen sich neue Einträge für den Dividor wie folgt
ermitteln:

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+ neuer Dividor = (Anzeigewert : Multimetermesswert) * aktueller Dividor (siehe Quelltext) +
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Dieser muss nun als neuer Eintrag in den Quelltext eingefügt und alles neue kompiliert und geflasht werden.


Pin-Zuordnung/Steuersignale
---------------------------

PD6(10)-Einschalttaster; Input mit Pullup
PD7(11)-Ausschalttaster; Input mit Pullup

ADC0(23)-Uin
ADC1(24)-3P3
ADC2(25)-5P
ADC3(26)-PW

PD3(1)-Pon; Output

SDA(27)-I²S-Signalleitung
SCL(28)-I²S-Signalleitung

Versionskontrolle
---------------------

V1.0 
voll funktionsfähig

