Raspberry pi版のHello Worldでは、コンソールからbashのみを利用してLEDチカチカを行う。
追加で必要なライブラリもないため、一番簡単に実施できる。
- Raspberry : Raspberry pi 3 2023-10-10(bookworm)
- 環境 : Mac
- デフォルトユーザー : pi
概要
sysfsのgpioはdeprecatedとなった。
詳細はsysfsのgpioはdeprecatedを参照。
以下のようにGPIO4にLEDを接続する。

pinout
GPIOの番号と基板の場所を知りたければ、pinoutコマンドで調べることができる。
以下はその例。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
| $ pinout
...
3V3 (1) (2) 5V
GPIO2 (3) (4) 5V
GPIO3 (5) (6) GND
GPIO4 (7) (8) GPIO14
GND (9) (10) GPIO15
GPIO17 (11) (12) GPIO18
GPIO27 (13) (14) GND
GPIO22 (15) (16) GPIO23
3V3 (17) (18) GPIO24
GPIO10 (19) (20) GND
GPIO9 (21) (22) GPIO25
GPIO11 (23) (24) GPIO8
GND (25) (26) GPIO7
GPIO0 (27) (28) GPIO1
GPIO5 (29) (30) GND
GPIO6 (31) (32) GPIO12
GPIO13 (33) (34) GND
GPIO19 (35) (36) GPIO16
GPIO26 (37) (38) GPIO20
GND (39) (40) GPIO21
|
gpioグループに追加(OSインストール後、1回だけ実施)
GPIOを操作するには、gpio権限が必要となる。
そのため、デフォルトユーザーであるpiをgpioグループに所属させることで上記を満たす。
1
| $ sudo usermod -aG gpio pi
|
pin設定(OS起動後、1回だけ実施)
1
2
3
4
| # GPIO4を使用する
$ echo 4 > /sys/class/gpio/export
# GPIOを出力ピンとして利用する
$ echo out > /sys/class/gpio/gpio4/direction
|
LED変更
ON
1
| $ echo 1 > /sys/class/gpio/gpio4/value
|
OFF
1
| $ echo 0 > /sys/class/gpio/gpio4/value
|
サンプル
ON/OFF切り替え
1秒ごとにON, OFFを切り替えます
1
| $ while true; do echo 1 > /sys/class/gpio/gpio4/value; sleep 1; echo 0 > /sys/class/gpio/gpio4/value; sleep 1; done
|