Comments
Description
Transcript
汎用USBドライバLibusbで移植 性の高いアプリケーションを作る
第 4 章 第 2 部 ドライバ & アプリケーション作成編 1 本のソースで Windows,Linux,Mac OS X の 3 環境で動く 汎用 USB ドライバ Libusb で移植 性の高いアプリケーションを作る 三好 健文 オープン・ソースの汎用 USB ドライバ Libusb は,Windows や Mac OS X,Linux などのさまざまな OS から API を呼び出すだけで USB デバイスにアクセスできる.Libusb 自体は C または C++ 用のライブラリだが,Ruby, Python,Java,C# のほか,Google Go や OCaml などの言語に対応するバインディングも多数用意されている. 本章では,Libusb の概要と,Windows,Mac OS X,Linux での開発を解説する. (編集部) Libusb は,Windows はもちろん Linux や Mac OS X でも 利用可能なオープン・ソースの汎用 USBドライバです.OS を気にすることなく,USB にアクセスするプログラムを書 1.こんな人にお勧めです!! くことができます.また各種プログラミング言語から呼び 今回紹介する Libusb は,USB デバイスを操作するパソ 出せるバインディングも多数開発されているので,お気に コン側のアプリケーション・ソフトウェアを簡単に書くた 入りの言語から USB デバイスへのアクセスも簡単です. めのライブラリです.こんな人に,ぜひお勧めです. 本稿では,Windows や Mac OS X,Linux(Ubuntu 11.4) ★自分で作った USB デバイスにデータの読み書きだけ 向けに Libusb での開発が可能な環境を構築する方法を紹 ができればいいんだけど,ドライバ書くの面倒だなぁ. 介します.さらに,Libusb の Java ラッパを使用して,Java → Libusb を使えば,面倒なドライバ開発は不要です.い を使った USB アクセス可能なデバイス向けの GUI プログ つも通り C プログラムを書くだけです. ラムの開発も解説します. ★でも,お高いんでしょう?お金はかけられません. なお,ターゲットとする USB 機器は,第 1 章で解説され → Libusb は無償で公開されています.しかもオープン・ ている RX62N マイコン基板+拡張ベース・ボード CQBB- ソースなので,ソース・コードを読むこともできます. EL(以下 RX マイコン+ CQBB-EL)を使います.USB ター ★私,Mac OS X 使ってるんですけど,Windows マ ゲットとしての仕様(ベンダ ID やプロダクト ID,各エン シンを用意しないとだめですか? ドポイントの割り当てなど)は,第 1 章をもう一度参照し → Libusb は各種 OS 用に移植されているため,Windows, てください. Mac OS X,Linux,FreeBSD といった,いろいろな OS で 利用できます.本稿では,Windows,Mac OS X,Linux 向けに Libusb 開発環境を構築する方法を紹介します. アプリケーション・ プログラム Libusb API Libusb FreeBSD OSごとの違いを吸収 OpenBSD NetBSD column1 Libusb は,こんな人にはお勧めしない ! Linux Mac OS X Windows 図 1 Libusb を使うアプリケーションはいろいろな OS で USB デバ イスにアクセスできる 90 KEYWORD Libusb,Windows,Mac OS X,Linux,Java 次のような人には Libusb はお勧めしません. オープン・ソースなライブラリなんて使えない ドライバを書くことこそ USB 開発の醍醐味だ 自分で作った USB 機器とアプリケーションが Windows 以 外で利用されるなんて許せない! っとまぁ∼冗談のようですが,それだけ Libusb を使わない理由 がないということです. Aug. 2011