「PIAST スクリプト」の版間の差分

提供: VoIP-Info.jp
ナビゲーションに移動 検索に移動
編集の要約なし
 
(同じ利用者による、間の4版が非表示)
1行目: 1行目:
[[カテゴリ:PIAST]]
PIASTの各種周辺機器を使用するためのスクリプト類<br>
PIASTの各種周辺機器を使用するためのスクリプト類<br>
注意:GPIOの番号は"物理"です。wiringpiを使う場合の番号ではありません。<br>
注意:GPIOの番号は"物理"です。wiringpiを使う場合の番号ではありません。<br>
17行目: 19行目:
         echo "out" > $GPIOPATH/$GPORT/direction
         echo "out" > $GPIOPATH/$GPORT/direction
     fi
     fi
done
*pinctrlバージョン
#!/bin/sh
PINNS="4 6 13 19 26"
for i in $PINNS
do
    pinctrl set $i op dl
  done
  done
*GPIO解放(gpiounconfig.sh)
*GPIO解放(gpiounconfig.sh)
33行目: 44行目:
     fi
     fi
  done
  done
===リレー制御用===
===リレー制御用===
*リレーオン(relayon.sh)
*リレーオン(relayon.sh)
62行目: 74行目:
   
   
  echo "0" > $GPIOPATH/$RELAYPORT/valu
  echo "0" > $GPIOPATH/$RELAYPORT/valu
*リレーON/OFF pinctrlバージョン
pinctrlを使う場合、リレーON/OFFは簡単です<br>
ONにするなら
pinctrl set 4 dh
OFFにするなら
pinctrl set 4 dl
===LED制御===
===LED制御===
*LED点灯(ledon.sh)
*LED点灯(ledon.sh)
96行目: 115行目:
  if [ "$PINNO" = "" ]
  if [ "$PINNO" = "" ]
  then
  then
     echo "Usage: ledon.sh [LED](1-4)"
     echo "Usage: ledoff.sh [LED](1-4)"
     exit
     exit
  fi
  fi
109行目: 128行目:
   
   
  echo "0" > $GPIOPATH/$LEDPORT/value
  echo "0" > $GPIOPATH/$LEDPORT/value
*LEDのON/OFFもpinctrlバージョン
LEDのON/OFFもpinctrlでは簡単です
pinctrl set 6 dh
pinctrl set 6 dl

2024年11月13日 (水) 14:55時点における最新版


PIASTの各種周辺機器を使用するためのスクリプト類
注意:GPIOの番号は"物理"です。wiringpiを使う場合の番号ではありません。

GPIO初期化

  • GPIO設定(gpioinit.sh)
#!/bin/sh

PINNS="4 6 13 19 26"
GPIOPATH="/sys/class/gpio"

for i in $PINNS
do
    GPORT=gpio$i

    if [ ! -d $GPIOPATH/$GPORT ]
    then
        echo $i > $GPIOPATH/export
        echo "out" > $GPIOPATH/$GPORT/direction
    fi
done
  • pinctrlバージョン
#!/bin/sh

PINNS="4 6 13 19 26"

for i in $PINNS
do
    pinctrl set $i op dl
done
  • GPIO解放(gpiounconfig.sh)
#!/bin/sh

PINNS="4 6 13 19 26"
GPIOPATH="/sys/class/gpio"

for i in $PINNS
do
    GPORT=gpio$i
 
    if [ -d $GPIOPATH/$GPORT ]
    then
        echo $i > $GPIOPATH/unexport
    fi
done

リレー制御用

  • リレーオン(relayon.sh)
#!/bin/sh

PINNO=4
RELAYPORT=gpio$PINNO
GPIOPATH="/sys/class/gpio"

if [ ! -d $GPIOPATH/$RELAYPORT ]
then
    echo $PINNO > $GPIOPATH/export
    echo "out" > $GPIOPATH/$RELAYPORT/direction
fi

echo "1" > $GPIOPATH/$RELAYPORT/value
  • リレーオフ(relayoff.sh)
#!/bin/sh

PINNO=4
RELAYPORT=gpio$PINNO
GPIOPATH="/sys/class/gpio"

if [ ! -d $GPIOPATH/$RELAYPORT ]
then
    echo $PINNO > $GPIOPATH/export
    echo "out" > $GPIOPATH/$RELAYPORT/direction
fi

echo "0" > $GPIOPATH/$RELAYPORT/valu
  • リレーON/OFF pinctrlバージョン

pinctrlを使う場合、リレーON/OFFは簡単です
ONにするなら

pinctrl set 4 dh

OFFにするなら

pinctrl set 4 dl

LED制御

  • LED点灯(ledon.sh)
#!/bin/sh

PINNOS="6 13 19 26"
GPIOPATH="/sys/class/gpio"

PINNO=`echo $PINNOS | cut -f$1 -d' '`

if [ "$PINNO" = "" ]
then
    echo "Usage: ledon.sh [LED](1-4)"
    exit
fi

LEDPORT=gpio$PINNO

if [ ! -d $GPIOPATH/$LEDPORT ]
then
    echo $PINNO > $GPIOPATH/export
    echo "out" > $GPIOPATH/$LEDPORT/direction
fi

echo "1" > $GPIOPATH/$LEDPORT/value
  • LED消灯(ledoff.sh)
#!/bin/sh

PINNOS="6 13 19 26"
GPIOPATH="/sys/class/gpio"

PINNO=`echo $PINNOS | cut -f$1 -d' '`

if [ "$PINNO" = "" ]
then
    echo "Usage: ledoff.sh [LED](1-4)"
    exit
fi

LEDPORT=gpio$PINNO

if [ ! -d $GPIOPATH/$LEDPORT ]
then
    echo $PINNO > $GPIOPATH/export
    echo "out" > $GPIOPATH/$LEDPORT/direction
fi

echo "0" > $GPIOPATH/$LEDPORT/value
  • LEDのON/OFFもpinctrlバージョン

LEDのON/OFFもpinctrlでは簡単です

pinctrl set 6 dh
pinctrl set 6 dl