tested on hardware.
This commit is contained in:
@@ -1,19 +1,60 @@
|
|||||||
#! /usr/bin/bash
|
#! /usr/bin/bash
|
||||||
|
|
||||||
|
pin_rot=17 # z.B. Pin 11 (BCM 17)
|
||||||
|
pin_gelb=27 # z.B. Pin 13 (BCM 27)
|
||||||
|
pin_gruen=22 # z.B. Pin 15 (BCM 22)
|
||||||
|
|
||||||
|
state_rot=0
|
||||||
|
state_gelb=0
|
||||||
|
state_gruen=0
|
||||||
|
|
||||||
|
gpiochip="gpiochip0"
|
||||||
|
|
||||||
|
function resetPins() {
|
||||||
|
echo "Ampel aus"
|
||||||
|
gpioset "${gpiochip}" ${pin_rot}=0 ${pin_gelb}=0 ${pin_gruen}=0
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
function setPins() {
|
||||||
|
gpioset "${gpiochip}" ${pin_rot}=${state_rot}
|
||||||
|
gpioset "${gpiochip}" ${pin_gelb}=${state_gelb}
|
||||||
|
gpioset "${gpiochip}" ${pin_gruen}=${state_gruen}
|
||||||
|
}
|
||||||
|
|
||||||
function ampel() {
|
function ampel() {
|
||||||
case ${1} in
|
case ${1} in
|
||||||
1)
|
1)
|
||||||
echo "Ampelphase rot"
|
echo "Ampelphase rot"
|
||||||
|
state_rot=1
|
||||||
|
state_gelb=0
|
||||||
|
state_gruen=0
|
||||||
|
setPins
|
||||||
|
sleep 5
|
||||||
;;
|
;;
|
||||||
2)
|
2)
|
||||||
echo "Ampelphase rot/gelb"
|
echo "Ampelphase rot/gelb"
|
||||||
|
state_rot=1
|
||||||
|
state_gelb=1
|
||||||
|
state_gruen=0
|
||||||
|
setPins
|
||||||
|
sleep 1
|
||||||
;;
|
;;
|
||||||
3)
|
3)
|
||||||
echo "Ampelphase grün"
|
echo "Ampelphase grün"
|
||||||
|
state_rot=0
|
||||||
|
state_gelb=0
|
||||||
|
state_gruen=1
|
||||||
|
setPins
|
||||||
|
sleep 3
|
||||||
;;
|
;;
|
||||||
4)
|
4)
|
||||||
echo "Ampelphase gelb"
|
echo "Ampelphase gelb"
|
||||||
|
state_rot=0
|
||||||
|
state_gelb=1
|
||||||
|
state_gruen=0
|
||||||
|
setPins
|
||||||
|
sleep 2
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
}
|
}
|
||||||
@@ -22,3 +63,5 @@ for i in 1 2 3 4; do
|
|||||||
ampel "${i}"
|
ampel "${i}"
|
||||||
done
|
done
|
||||||
|
|
||||||
|
resetPins
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user