11

Windows 用の USB デバイス ドライバーを実装するにはどうすればよいですか? Windows のさまざまなバージョンをどのように考慮する必要がありますか? - Windows XP - Windows Vista - Windows 7

出発点として使用できるオープンソース ソリューションはありますか? 私はWindowsドライバー開発の初心者です。

USB デバイス ポートを備えた組み込みデバイスがあり、データ スループットを犠牲にすることなく、アプリケーション レベルからデバイスへの通信のレイテンシをできるだけ低くしたいと考えています。転送される実際のデータは ADC/DAC データです。基本的に、できるだけ早く Windows マシンに転送する必要があるデータがたくさんあります。

4

4 に答える 4

12

正しい方向性を示すには、デバイスに関する詳細情報が必要ですが、開始するためのいくつかの手順を次に示します。

  • Windows Driver Kit をダウンロードできるように、Microsoft Connect に登録します。
  • osr-onlineに登録すると、優れた記事、豊富な情報、および Windows ドライバー専用のニュースグループが見つかります。ここは宝の山です。
  • 「 Developing Drivers with WDF 」を購入すると、Windows でのドライバー開発を理解するのに役立ち、OSR と Microsoft からの記事を読むための優れた基礎が得られます。
  • C++ を使用して COM コードを記述できるので、UMDF (ユーザーモード ドライバー) を使用できることを願っています。USB を使ってカーネル空間を必要とする何かをしているのなら、来年のためにたくさんの本を読み、学ぶ必要があります!

バージョンに関する質問に答えるために、ドライバー キットには、さまざまなドライバーの作成を管理するのに役立つツールが含まれています。適切なドライバーを作成すれば、3 つの OS すべてで問題なく動作し、違いは (バイナリではなく) 構成領域にあるだけです。

基本的に、デバイスの複雑さによって異なります。どのタイプのドライバーを作成しようとしていますか? ファイルシステム?MP3プレーヤー?カメラ?モデム?

カーネル モード ドライバーを作成する必要が生じた場合は、私にお知らせください。良い記事とそうでない記事を紹介します。

また、約 5,000 米ドルでWinDriverのライセンスを購入できることも追加しておく必要があります。これは、ドライバー開発からすべての難しい作業を取り除くツールです。C++ または C# ユーザー モード コードを使用して、デバイス用にカスタム生成されたドライバーと通信できます。締め切りが厳しい場合は、この方法をお勧めします。

于 2009-10-13T21:19:24.497 に答える
2

libusbの Windows 版は*ここ*で見ることができます。libusb の公式サイトと Web には、多くのプログラミング言語のラッパーがあります。

于 2012-11-08T13:48:10.977 に答える
1

デバイス側を何らかの形で制御できる場合は、Windows が既にドライバーを提供しているインターフェイスを実装します。たとえば、USB HID クラス (文字通り人間の入力デバイスですが、人間も入力も必須ではありません) には既に Windows ドライバーがあり、その上に妥当な Win32 API があります。ただし、データ レートが 480 Mbps 近くになることはありません。

于 2009-10-14T11:27:28.390 に答える
1

ここから始めましょう: Windows Driver Kit の紹介

于 2009-10-13T21:09:58.640 に答える