querdenker engineering
Schnittstellen und Services

Schnittstellen und Services

Hardware-Schnittstellen und zugehörige Systemdienste in eigenen Programmen nutzen.

Dieses Kapitel beschreibt zwei mögliche Ebenen für die Arbeit mit den Schnittstellen: die Hardwarebeschreibung über den Device Tree und den Zugriff aus dem Userspace. Welche Ebene sinnvoll ist, hängt vom Gerät, dem verwendeten Treiber und dem gewünschten Integrationsgrad ab.

Anbindung

Der Device Tree beschreibt und aktiviert die Hardware. Der Userspace greift anschließend über Geräte oder Services darauf zu.

Die konkreten Beispiele stehen in den jeweiligen Schnittstellenkapiteln. Die gerätespezifischen Pegel und elektrischen Parameter stehen in der jeweiligen Systemreferenz.

Übersicht der Schnittstellen

Die folgende Tabelle gibt einen ersten Überblick über Signalrichtung und elektrische Pegel. Werte in eckigen Klammern müssen noch mit den freigegebenen Hardwaredaten ergänzt werden.

SchnittstelleRichtungSignal- oder EingangspegelZugriff aus dem Userspace
Digitale IOsEingang und Ausgang[GPIO-PEGEL], Active-Low/Active-High [FESTLEGEN]/dev/gpiochip* mit libgpiod
Analoge EingängeEingang[MESSBEREICH], [EINHEIT], [MAXIMALE-EINGANGSSPANNUNG]Linux IIO unter /sys/bus/iio/devices/ bzw. /dev/iio:deviceX
I2Cbidirektionaler Bus[I2C-LOGIKPEGEL]/dev/i2c-* oder freigegebener Service
SPIEingang und Ausgang[SPI-LOGIKPEGEL]/dev/spidev* oder freigegebener Service
RS485Eingang und Ausgangdifferentiell, [VERSORGUNGS-UND-SIGNALPEGEL][RS485-GERÄT] oder freigegebener Service
LTE-ModemEingang und Ausgang[MODEM-SCHNITTSTELLENPEGEL][MODEM-SERVICE] oder [MODEM-GERÄT]

Die Pegelangaben beschreiben die elektrische Schnittstelle und sind nicht mit dem logischen Zustand eines Signals gleichzusetzen. Für jede Schnittstelle sollten zusätzlich zulässige Spannungsbereiche, maximale Ströme, Richtungssteuerung, Terminierung und Schutzbeschaltung dokumentiert werden.