Raspberry Pi

9) První skript

Nemá cenu tady vysvětlovat, jak se píší skripty pro linux. 
Detailní návody jsou například tady v angličtině:
http://www.gnu.org/software/bash/manual/bashref.html

nebo tady v češtině:

http://www.root.cz/clanky/programovani-v-bash-shellu/

http://www.abclinuxu.cz/clanky/navody/bash-i

 

Já jsem si zkusil napsat skript pro jednoduchého světelného hada, který se rozběhne po stisku tlačítka na GPIO portu 21 a přeruší se při stisku tlačítka na portu GPIO22. Ledky mám postupně seřazené na portech 4, 18, 24 a 25.

Vytvořil jsem si soubor had ve složce /home/pi/skripty/  a vložil jsem do něj tenhle kód:

#!/bin/sh

#nastaveni portu s tlacitkama pro vstup
gpio-admin export 21
gpio-admin export 22

#nastaveni portu LEDkama pro vystup
gpio-admin export 4
echo out > /sys/devices/virtual/gpio/gpio4/direction
gpio-admin export 18
echo out > /sys/devices/virtual/gpio/gpio18/direction
gpio-admin export 24
echo out > /sys/devices/virtual/gpio/gpio24/direction
gpio-admin export 25
echo out > /sys/devices/virtual/gpio/gpio25/direction


stav21=1

while [ "$stav21" -eq "1" ]     # testovani startovaciho tlacitka 21
do
  stav21=`cat /sys/devices/virtual/gpio/gpio21/value`
  sleep 1
done


stav22=1
while [ "$stav22" -eq "1" ]     # testovani ukoncovaciho tlacitka 22
do

  # postupne rozsvecovani a zhasinani LEDek vzdycky se sekundovou pauzou mezi prechody
  echo 1 > /sys/devices/virtual/gpio/gpio4/value
  sleep 1
  echo 0 > /sys/devices/virtual/gpio/gpio4/value
  echo 1 > /sys/devices/virtual/gpio/gpio18/value
  sleep 1
  echo 0 > /sys/devices/virtual/gpio/gpio18/value
  echo 1 > /sys/devices/virtual/gpio/gpio24/value
  sleep 1
  echo 0 > /sys/devices/virtual/gpio/gpio24/value
  echo 1 > /sys/devices/virtual/gpio/gpio25/value
  sleep 1
  echo 0 > /sys/devices/virtual/gpio/gpio25/value
  stav22=`cat /sys/devices/virtual/gpio/gpio22/value`

done

# uvolneni vsech pouzitych portu
gpio-admin unexport 21
gpio-admin unexport 22
gpio-admin unexport 4
gpio-admin unexport 18
gpio-admin unexport 24
gpio-admin unexport 25

exit 0

... nastavil jsem mu atribut spustitelnosti:

sudo chmod 755 /home/pi/skripty/had

... a pak jsem ho v terminálu spustil:

/home/pi/skripty/had

Po stisku tlačítka 21 se LEDky rozblikaly a po stisku tlačítka 22 a doběhnutí cyklu do konce se had zastavil a skript ukončil.

Tady je video:

Odkaz na YouTube

 

 


úvodní strana webu AstroMiK.org

poslední úprava stránky 29.7.2012