第 2 特集 第 2章 ご購入はこちら 第 2 章 第 2 特集ハード操作超入門 ステップ・バイ・ステップでメカニズムを確認! シェルからの ハード操作超入門 中村 和敬 ①/sys/class/gpio/exportに使用するGPIOポート番号を 書き込む 書き込み gpio/export シェル HDMI ディスプレイ ネットワーク (インターネット) ラズベリー・パイ gpio/gpio17 作 成 イーサ ネット カーネル USB ②カーネルが書き込みを検知して,操作用のデバイス・ファイル 群を作成 USB HDMI プロセッサ GPIO (a) ステップ1:デバイスファイルを作成する ③/sys/class/gpio/gpio17/valueに値を書き込み 書き込み シェル gpio17/value キーボード マウス チカ LED 図 2 シェルを使ったハードウェア操作のメカニズムをステップ・ バイ・ステップで確かめてみる 4107044_ME05 GPIO17番ピン 操 作 カーネル ④カーネルが書き込みを検知して,対応する操作を実行 (b) ステップ2:デバイス・ファイルを操作 (=ハードウェアを操作)する 図 1 デバイス・ファイルを通じた GPIO ポート制御の仕組み 汎用 OS ボード・コンピュータの特徴 ●マイコンと比べてソフト開発の比率が高い Linux が動作する代表的なボード・コンピュータと して,ラズベリー・パイがあります.GPIO や I2C と いった組み込み向けのインターフェースから,イーサ ネットや USB といった PC 向けのインターフェースま でそろっていて,ちょっとしたガジェットを作る際の ベースとして,定番になった感があります. ラズベリー・パイのような Linux ベースのボード・ コンピュータを利用する場合,マイコンを用いた機器 開発と比べてソフトウェア開発の比率が格段に高まり ます. ● ムダにたくさん書く必要はない… ハードの操作はむしろ簡単 OS が載っているためにできることが制限されたよ 2016 年 10 月号 うに思うことがあるかもしれません. しかし,ラズベリー・パイの標準の OS,Raspbian は,ちょっと気の利いた小物を開発する際に便利なさ まざまな機能を提供しています.シェルを通じてそれ らを組み合わせることで,初心者でも簡単にさまざま な機能を持った機器を作ることができます. また,Raspbian 上からも,簡単な手順で GPIO など の低レベル・ポートを直接操作することができます. こういった操作はシェルを通じて行うことができるの で,対話的に周辺機器を操作して動作を確認しながら 開発を進めることができます. つまりシェルの使い方を学ぶことで,一からプログ ラムを書かなければならない場合と比べてはるかに簡 単に開発を進めることができます. UNIX ハード制御の基本メカニズム ●ファイルの読み書きでデバイスを制御できる UNIX では仮想ファイルにデータを書き込むことに よって,さまざまなデバイスの制御を行うことができ ます.UNIX は仮想ファイルへの書き込みをデバイス の操作と解釈し,内部でファイルに対応するデバイ ス・ドライバを呼び出し,対応する操作を行います (図 1) .今回は LED の点滅ということで,出力の例を 示します.入力についても同じようにファイルを読み 75
© Copyright 2024 ExpyDoc