Mail to Code: Tutorial

Lernt, wie man den Code für Rechenknechte schreibt.

English version English Version

GPIOs

GPIO steht für General Purpose Input Output, also für Allgemeine Ein- Ausgabe Pins. Derartige Pins sind die Peripherie eines Mikrocontrollers und können Signale Ausgeben oder eben Einlesen.

Signal-Ausgabe

Im Modus "Ausgabe" kann im Programm festgelegt werden, ob an den entsprechenden Pin 0V oder die Logikspannung des verwendeten Microcontrollers angelegt werden soll. Typische Spannungen sind 3.3V oder 5.0V.
Über diese Spannung können an den Pin angeschlossene Verbraucher Ein- oder Ausgeschaltet werden. Die Pins können nur einen sehr kleinen Strom von wenigen Milliampere liefern. Daher muss sichergestellt sein, dass keine Verbraucher direkt an einen GPIO angeschlossen werden! Ansonsten besteht die Gefahr, dass der Mikrocontroller beschädigt wird! Eine Ausnahme stellen LEDs mit einem entsprechend gewählten Vorwiderstand dar. Alle anderen Verbraucher müssen über Transistoren oder Verstärker-ICs geschaltet werden.

Signal-Eingabe

Im Modus "Eingang" kann in einem Programm abgefragt werden, ob an einem Pin gerade die Logikspannung (+5V bzw. +3.3V) oder 0V anliegt. Entsprechend wird eine "0" oder eine "1" zurückgegeben.
Es muss sichergestellt sein, dass keine höhere Spannung als die vom Mikrocontroller verwendete Logikspannung (3.3V oder 5.0V) an einen Pin gelegt wird, da ansonsten der Mikrocontroller beschädigt wird!
Im Verlauf dieses Tutorials werden entsprechende Schaltungen gezeigt, die das Anlegen zu hoher Spannungen verhindern. Ebenfalls in einem späteren Kapitel wird gezeigt, dass spezielle GPIOs auch analoge Signale einlesen können und der Rückgabewert in die tatsächlich anliegende Spannung ungerechnet werden kann.





Du findest diese Seite klasse?

Gummibärchen als Nervennahrung beim Programmieren und der Betrieb dieses Servers verschlingen mein Geld.
Helft mit einer Motivationsspritze, dieses Projekt am Laufen zu halten.

Klick hier oder scan den QR Code, um eine Spende zu überweisen.



Vielen Dank!

Fragen? Anregungen? Fehler gefunden?
Kontakt per E-mail: question@h1i1.de