Dies ist eine alte Version des Dokuments!


Raspberry Pi / GPIO

  • Die GPIOs müssen Initialisiert werden
  • Im Unterverzeichnis des jeweiligen GPIOs kann in der direction Datei definiert werden ob der Pin als Ein- (in) oder Ausgang (out) fungieren soll.
  • Aus der Datei value kann im Modus Eingang der aktuelle Wert (High (1) oder Low (0)) ausgelesen werden. Im Modus Ausgang kann hier eine 1 oder 0 hineingeschrieben werden um den Pegel des Pins zu beeinflussen.

Umsetzung als Bashscript

raspi_-_get_gpio_demo.bash
#!/bin/bash
 
# RasPi I/O-Ports (GPIO) einfach auslesen mit BASH, ein simples Beispiel-Script
 
# Kompletter Pfad/File zum jeweiligen I/O-Port. (!) Muss vorher initialisiert werden.
ports="/sys/class/gpio/gpio21/value /sys/class/gpio/gpio22/value"
 
# Schleife
while [ true ] ; do 
	for port in ${ports} ; do
		v=$(< ${port})
		#echo "Debug: ${port} = ${v}"
		if [ ${v} = 1 ] ; then 
			echo "Pin an"
		else
			echo "Pin aus"
		fi
	done
	sleep 1s
done
  • Zukünftig: Eventuell über Cron abfragen um die Stabilität zu erhöhen
  • Zukünftig: Eventuell über Systemd?
  • Zuletzt geändert: 2016-10-28 10:43