#!/bin/bash ### GPIO auf input setzen ### gpio mode 0 in gpio mode 1 in gpio mode 2 in gpio mode 3 in ######################################### auswahl() { clear echo "" echo "" echo "Folgende Programme stehen zur Ausahl:" echo "(1): Dualzahl mittels Lichtsensoren eingebenund umrechnen lassen in Dezimalzahl " echo "(2): Gegebene Dezimalzahl als Dualzahl auf den Sensoren eingeben " echo "" echo "Bitte Programmnummer als Binärzahl/Dualzahl eingeben (0000 bis 1111):" while true; do bin0=$(gpio read 0) ### PIN 11 bin1=$(gpio read 1) ### PIN 12 bin2=$(gpio read 2) ### PIN 13 bin3=$(gpio read 3) ### PIN 15 progauswahl="$bin3$bin2$bin1$bin0" if [ $progauswahl = "0000" ]; then sleep 0.1s elif [ $progauswahl = "0001" ]; then prog1 elif [ $progauswahl = "0010" ]; then prog2 ##elif [ $progauswahl = "0011" ]; then ##prog3 else echo "leider nichts passendes eingegeben" sleep 1.0s auswahl fi done } ########################################## prog2() { clear echo "Programm 2 (Abbruch mit 1111):" echo "" zufall=`echo $(($RANDOM % 14 + 1))` echo "Folgende Zahl in Dualcode umwandeln:" echo "$zufall" echo "" sleep 1s while true; do bin0=$(gpio read 0) ### PIN 11 bin1=$(gpio read 1) ### PIN 12 bin2=$(gpio read 2) ### PIN 13 bin3=$(gpio read 3) ### PIN 15 binaer="$bin3$bin2$bin1$bin0" dezi=`echo 2 i $binaer p | dc` if [ $binaer = "0000" ]; then sleep 0.1s elif [ $binaer = "1111" ]; then echo "Ende Programm 2" echo "" echo "" sleep 2s auswahl elif [ $dezi == $zufall ]; then echo "Richtig! $binaer entspricht $zufall " sleep 2s echo "" echo "" echo "" prog2 else echo "$binaer ist leider falsch !! " sleep 1s fi done } #################################################### prog1() { clear echo "Programm 1: Binärzahlen umrechnen lassen in Dezimalzahl, Abbruch mit 1111" echo "" echo "Lichtsensor abdecken = 1, Lichtsensor offen = 0" echo "" echo "" sleep 2s while true; do bin0=$(gpio read 0) ### PIN 11 bin1=$(gpio read 1) ### PIN 12 bin2=$(gpio read 2) ### PIN 13 bin3=$(gpio read 3) ### PIN 15 binaer="$bin3$bin2$bin1$bin0" if [ $binaer = "0000" ]; then sleep 0.1s elif [ $binaer = "1111" ]; then echo "Ende Programm 1" sleep 2s auswahl #else #echo "$binaer entpricht:" # #echo 2 i $binaer p | dc #echo 2 i $binaer p | dc #echo "" #sleep 1s else dezimal=`echo 2 i $binaer p | dc` echo "$binaer entpricht $dezimal:" echo "" sleep 1s fi done } ############# auswahl done