2007年09月25日

10.4でのHID Utilities Source @ Mac

Mac OS X 10.3の時と10.4でHID Utilities Sourceを使ったプログラミングのやり方が若干違うようなので、そのメモです。

以下に手順を書いておきます。あくまでも自分用のメモなので、端折っている部分も有るかも。

先ずはADCからHID Utilities Sourceをダウンロードして、Xcodeで開き、ビルドします。

HID Utilities Source
>>関連リンク

次は、作業用のディレクトリーを何処かに作って、その中にFrameworksとbuildと言う名前でディレクトリーを作っておきます。ココでは以下の説明のため、作業用ディレクトリーはMyProjとしておきます。

今度は、ビルドして作ったlibHIDUtilities.aとlibHIDUtilities.dylibをMyProj/Frameworksへ入れておきます。それから、HID Utilities Sourceに入っているHID_Utilities_External.hをMyProjにコピーします。

例として、実験に使ったソースコードを書いておきます。以下のソースをhello_hid.cという名前でMyProjに保存します。

---8<---キリトリ---8<---キリトリ---8<---キリトリ---8<---

#include "HID_Utilities_External.h"
#include <Kernel/IOKit/hidsystem/IOHIDUsageTables.h>
#include <stdio.h>

int main(int argc,char **argv){
UInt32 num_devices;

printf("hello world\n");

UInt32 usagePage = kHIDPage_GenericDesktop;
UInt32 usage = kHIDUsage_GD_Joystick;

HIDBuildDeviceList(usagePage, usage);
//HIDBuildDeviceList( 0, 0 );

if (! HIDHaveDeviceList() ){
printf("error!!");
return 0;
}

num_devices = HIDCountDevices();

printf("Number of Devices = %d\n",num_devices);

return 0;
}

---8<---キリトリ---8<---キリトリ---8<---キリトリ---8<---

で、以下のコマンドを実行。

gcc -lHIDUtilities -o build/hello_hid hello_hid.c -L./Frameworks

これで、buildディレクトリーにhello_hidが出来ているはずなので、

./build/hello_hid

とすれば実行できます。

以上、10.4でのHID Utilities Sourceを使った開発のメモです。

どの程度参考になるかは分かりませんが、Macに対応していないUSB 機器でHID対応したモノを使いたい場合に多少参考になるかなと思います。例えば、USB-IOもHID対応なので、Macで使おうと思えば、使えます。Macの場合、情報が少ないので使っている人は少ないようですが・・・。


2007年9月28日修正
上のソースで一部具合悪いところがあったので修正しました。HIDBuildDeviceListの部分に関しては、IOHIDUsageTables.hを見て、それぞれ必要な値を渡してください。上記のソースではジョイスティックを想定して書いてあります。

閲覧数: 3829 / はてなブックマークusers

blog comments powered by Disqus

関連日記

アマゾン広告

この日記ページは閲覧数などの条件に応じて、閲覧制限を行っています。他からリンクしていただいても、そのリンクから辿った閲覧者が当ページの内容をご覧頂けない場合があります。ご了承下さい。

▼日記検索

Mac

Shade

3D

Flash

ゲーム

ウェブ

音楽

映画

デジカメ

Windows

Linux

携帯電話

テレビ

広島

電子工作

iOS

▼ 最近のトラックバック

▼ランキング

▼関連サイト