配線
回路図とか描けないので、文章で・・
LEDと抵抗を直列につないで、Jestson の GND と GPIO16(Pin番号19)を接続します。
コマンドでLチカ
以下、シェルによるGPIOの操作になります。各行で何をしているか解説してみます。
$ sudo su
# echo 16 > /sys/class/gpio/export
# echo out > /sys/class/gpio/gpio16/direction
# echo 1 > /sys/class/gpio/gpio16/value
# echo 0 > /sys/class/gpio/gpio16/value
# echo 1 > /sys/class/gpio/gpio16/value
# echo 16 > /sys/class/gpio/unexport
1行目:root になります。/sys/class/gpio/export 等にアクセス権がないためです。
2行目:GPIO16を使用するため、/sys/class/gpio/export に "16" を書き込んでいます。
3行目:GPIO16を出力用にするために、/sys/class/gpio/gpio16/direction に "out" を書き込んでいます。
4行目:GPIO16の値に 1を設定しています。
5行目:GPIO16の値に 0を設定しています。
6行目:GPIO16の値に 1を設定しています。
7行目:GPIO16の使用をやめます。
GPIOの権限変更
root でしか使用できないのは、不便なのでデバイスの権限を変更します。
$ wget https://github.com/NVIDIA/jetson-gpio/archive/master.zip
$ unzip master.zip
$ cd jetson-gpio-master/
$ sudo cp etc/99-gpio.rules /etc/udev/rules.d/
$ sudo groupadd -f -r gpio
$ sudo usermod -a -G gpio ユーザ
1行目:NVIDIA さんから、gpio のファイル関係を取得
2行目:アーカイブファイルの展開
3行目:ディレクトリ移動
4行目:udev 用のファイルを配置
5行目:グループに gpio を追加
6行目:グループ gpio にユーザ(任意)を追加
再起動後、以下のパスの group がgpio になっていれば成功です。上記のシェルも gpio へ追加したユーザで実行できます。
ls -l /sys/class/gpio/export
0 件のコメント:
コメントを投稿