第2部 第 9章 ステップ 3:12 ビット A-D 変換器でアナログ入力を試す ダウンロード・データあります ハードの違いに対応するための最新 Linux のしくみ デバイス・ツリー初体験! ステップ 3:12 ビット A-D 変換器でアナログ入力を試す 永原 柊 基板A パソコン1 基板A専用Linux パソコン2 単一のLinux サーバ BIOSなどを参照することで ハードウェアの構成情報を得て, 対応した設定を行える 基板B 全部ARM プロセッサ 内蔵だが… 基板B専用Linux 基板C ハードウェアの構成情報を得る しくみがないので個々の Linuxが必要 基板C専用Linux (a)パソコンの世界 (b)ARMプロセッサを使った組み込みの世界 図 1 ARM × Linux で大問題! ハードウェア構成を知るしくみがないので基板ごとに Linux が必要になる GPIO が使えるようになれば,次はやはりアナログ 入力でしょう.BeagleBone Black は 12 ビットの逐次 比較型 A-D 変換器が用意されています.しかし,そ れを使えるようにするには少しだけ操作が必要です. ここでは,少し長くなりますが,なぜそのような操 作が必要なのかについて書いたあと,A-D 変換器を使 うための具体的な操作方法を説明します. プロセッサごとに Linux を 作らないで済ませるためのしくみ ● 問題になること Linux が動くコンピュータには多くのバリエーショ ンがあります.例えばパソコンだけを考えても,メモ リやディスクの容量,周辺機能の種類や数,拡張ボー ドの有無などさまざまです. ARM プロセッサの場合はプロセッサ単独ではな く,それを組み込んだ IC(SoC)が数多く作られ,そ のバリエーションがどれだけあるのかわかりません (Appendix7). しかもパソコンの場合は BIOS などコンピュータの 構成を把握するしくみが用意されていますが,ARM プロセッサを使ったコンピュータには通常そういうし 2014 年 7 月号 くみはありません. Linux が起動するとき,パソコンであれば BIOS な どを参照することでコンピュータの構成を把握し,そ の構成に応じた設定を行うことができます.こうする ことで,一つの Linux でさまざまな構成のパソコンに 対応できます. ARMプロセッサを使ったコンピュータでは,Linux 起動時にコンピュータの構成を把握する方法がありませ ん.臨機応変に対応することができず,コンピュータの 構成ごとにそれぞれ Linuxが必要になります(図1) . Linux をバージョンアップする場合を考えても,一 つの Linux でさまざまな構成のコンピュータに対応で きれば,一つだけをバージョンアップすれば済みま す.コンピュータの構成ごとに無数の Linux があると, バージョンアップするだけでたいへんです. このような状況を避けるために,デバイス・ツリー (Device Tree)と呼ばれるしくみが用いられています. ● ハードウェア構成を示すデータ構造のデバイ ス・ツリー 問題点は,コンピュータの構成を知る手だてがない ということでした.もしその手だてがあればパソコン 89
© Copyright 2024 ExpyDoc