NanoにはGPIOポートがJ41というピンヘッダに用意されている(図1)。33にLEDを取り付けてみることにする。NanoのJ41の内訳。NanoでGPIOを扱うためのパッケージとして、NVIDIAはJetson-gpioを提供している。Piと同じ様に記述可能である。このパッケージ、GitHubからダウンロードしても構わないのだが、確認したところ/opt/nvidia/jetson-gpio/の下に既にインストール済であった。インストールされていなければ、以下のコマンドでインストールできる。NanoとLEDの回路接続図(クリックで拡大)さて、この状態で動作するかどうかをちょっと確認してみよう。図2は回路図、というにはおこがましいほどだが、今回の回路である。OSYL3133AとOSNG3133Aは筆者の手持ちのLED(URLで分かる通り秋月電子商会でまとめ買いしたもの)で、おおむね2Vで20mAほどの消費電流となる。NanoのGPIOは3.3V出力なので、プルダウン抵抗は65Ωほどになる計算だが、手持ちがなく100Ωを利用している。39からGNDを取る形である(図3)。回路そのものはブレッドボード上に実装した。別にピンはどれを使っても良かったのだが、分かりやすさを優先(クリックで拡大)さて、図1にもちょっとあるが、rootになって直接「/sys/class/gpio」をたたくことが可能である。33はgpio38に相当するので以下のコマンドを実施したところ、きちんと両方のLEDが点灯した(図4)。緑のLEDはかなり弱々しい。/sys/class/gpio/gpio200/valueさて、次はこれをPythonの中から操作する方法だ。アプリケーションからGPIOポートを操作する権限を与える必要がある。このために、gpioというグループを作り、ユーザーをこのgpioというグループに所属させた上で、gpioのグループにGPIOポートを操作する権限を付加するという手順を取る。your_user_name(←ここに自分のユーザー名を入れる)次のグループへの権限付加だ。以下のコマンドを入力すればよい。/etc/udev/rules.d/続けて以下のコマンドを入力する。triggerこれで登録できるはずなのだが、筆者の環境では再起動が必要だった。再起動後には、GPIOポートへの操作の権限が付加されている。SNSfacebooktwitterITmediaはアイティメディア株式会社の登録商標です。