USBプログラミング入門
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
2006/11/07(火) 21:07:23駄目なんですが、良い参考文献はないでしょうか?
現在ネックになっているのは同一IDを同時に制御する
方法です。どうやって振り分けるのかが分かりません。
0002デフォルトの名無しさん
2006/11/07(火) 21:09:07死ねよ
0003デフォルトの名無しさん
2006/11/07(火) 21:09:57掲示板のルールくらい守れ、ネット初心者のオタク君
0004デフォルトの名無しさん
2006/11/07(火) 21:10:17もう自殺するがいいわ!
0005デフォルトの名無しさん
2006/11/07(火) 21:10:52糞スレ立てすぎ
0006デフォルトの名無しさん
2006/11/07(火) 21:11:40いちごびびえすに帰れ
0007デフォルトの名無しさん
2006/11/07(火) 21:12:34神保町に行けば買えるよ
明日買いに行ってき名よ
0008デフォルトの名無しさん
2006/11/08(水) 00:13:090009デフォルトの名無しさん
2006/11/08(水) 14:59:03マジで?
0010デフォルトの名無しさん
2006/11/09(木) 21:49:03でらえもん調査局は死ね
0011死ねはやめろ
2006/12/17(日) 23:36:45なんで死ねが絶えないんだ!死ねはやめろ!!なんで死ねが絶えないんだ!死ねはやめろ!!死ねはやめろ!!
なんで死ねが絶えないんだ!死ねはやめろ!!なんで死ねが絶えないんだ!死ねはやめろ!!死ねはやめろ!!
なんで死ねが絶えないんだ!死ねはやめろ!!なんで死ねが絶えないんだ!死ねはやめろ!!死ねはやめろ!!
なんで死ねが絶えないんだ!死ねはやめろ!!なんで死ねが絶えないんだ!死ねはやめろ!!死ねはやめろ!!
なんで死ねが絶えないんだ!死ねはやめろ!!なんで死ねが絶えないんだ!死ねはやめろ!!死ねはやめろ!!
なんで死ねが絶えないんだ!死ねはやめろ!!なんで死ねが絶えないんだ!死ねはやめろ!!死ねはやめろ!!
なんで死ねが絶えないんだ!死ねはやめろ!!なんで死ねが絶えないんだ!死ねはやめろ!!死ねはやめろ!!
なんで死ねが絶えないんだ!死ねはやめろ!!なんで死ねが絶えないんだ!死ねはやめろ!!死ねはやめろ!!
なんで死ねが絶えないんだ!死ねはやめろ!!なんで死ねが絶えないんだ!死ねはやめろ!!死ねはやめろ!!
0012デフォルトの名無しさん
2007/02/17(土) 11:19:160013デフォルトの名無しさん
2007/02/19(月) 21:45:50でらえもん調査局は死ね
0014デフォルトの名無しさん
2007/05/24(木) 23:39:39Windows XP デバイスドライバプログラミング [入門と実践]
Interface 2007年1月号 USBターゲット&ホスト 機器設計の完全理解
この2冊はUSBデバイスドライバを作るときに読んでおいたほうがよい。
0015デフォルトの名無しさん
2007/06/13(水) 01:52:39複数のポートを指定して同時出力するにはどうしたら良いのでしょう?
PD0とPD1に2個のLEDのアノードをそれぞれ繋ぎ、カソードはそれぞれGNDに
繋いでいます
setportconfigを使って出力したいポートのビットを立てればおkなんでしょうか?
0016デフォルトの名無しさん
2007/10/13(土) 21:08:55PCと携帯電話(au)をUSB接続して、アドレス帳やスケジュールの
データなどをやり取りするアプリケーションを作成したいと
思っています。
データ通信の仕様を調べるために、市販のアプリと携帯を
繋いでデータをモニタリングしたいと思うのですが、モニタ用
ソフトなどありましたら教えてください(できればフリーがいいです)。
それから、上記の通信をアプリで行うためには、シリアル
通信ができればよいのでしょうか?
どなたか教えてください。よろしくお願い致します。
0017デフォルトの名無しさん
2007/10/17(水) 23:24:360018デフォルトの名無しさん
2007/10/18(木) 00:31:560019デフォルトの名無しさん
2007/10/18(木) 03:43:58http://www.otto.to/~kasiwano/newpage17.htm
0020デフォルトの名無しさん
2007/11/23(金) 10:01:19。+ +。。。。。 |l|FFFFFFF|。 。 .。 +|l≡≡≡|ミ|EEEEEEEEEEE|lll| .。+
* o o. |l|FFFFFFF / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
。。oo |l|FFFFFF | 職も彼女も見つからないうちにもう12月か…
/| ̄ ̄ ̄l ::|FFFFFFF \
|ミ|:」」:」」:」| ::|FFFFFF  ̄|/ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
|ミ|:」」:」」:」| 〇 FF.。 ∧_∧ |l≡o + +! + 。 〇 +
lミl.」」.」〇 ++ + (´・ω・) o 〇 。 o + 〇 。 +
__〇___。_゚__/ ~つと)____o______〇__o___。
二Il二Il二Il二Il二Il二Il二Il二Il二Il二Il二Il二Il二Il二Il二Il二Il二Il二Il二
0021デフォルトの名無しさん
2007/11/30(金) 13:24:18を使えば理解も早い。
ボードを実装しなくてもいいってのはでかい。
0022デフォルトの名無しさん
2008/02/17(日) 03:37:13ReadFile() 使って USB デバイスから到着するデータパケット (で良いのかな? 用語不詳) を
読み込んでるんですが、まぁ具体的には読み込みを別スレッド化してキュー経由で取り出せる
ようにしてみたんですけどね。読み込みが I/O ブロックに入ってしまうと同じハンドルの WriteFile()
もブロックされてしまうようになって転送中断も終了も出来なくなります。
I/O ブロックに入らないよう WaitForSingle/MultiObject() で確認しようと思ったのですが、USB デバ
イスのハンドルだとシグナル状態がないのか、うまく機能してくれないようで。何かオプションとか
間違ってるんでしょうか?
// オープン
CreateFile(device_path, GENERIC_READ | GENERIC_WRITE, 0, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL);
// 読み込み (2種類)
#define IOCTL_ASYNC_IN CTL_CODE (FILE_DEVICE_UNKNOWN, 0x850, METHOD_BUFFERED, FILE_ANY_ACCESS)
ReadFile(handle, temp, MAX_BUFFER_SIZE, &length, NULL);
DeviceIoControl(handle, IOCTL_ASYNC_IN, 0, 0, temp, sizeof(temp), &length, NULL);
// 書き込み
WriteFile(handle, buffer_array, length, &dummy, NULL);
0023デフォルトの名無しさん
2008/02/17(日) 12:11:19デバドラのスレッドで質問した方がいいとは思うが、
それ以前に君ってWin32APIレベルの理解がかなり怪しいんじゃないの?
その調子で質問したらどこ行っても「まず勉強しろ」と一蹴される気がするよ。
0024デフォルトの名無しさん
2008/02/17(日) 12:22:23オプション確認してもらいたかったんだが知らない人には丸投げしてるようにも見えるかな。
0025デフォルトの名無しさん
2008/02/28(木) 01:26:28オーバーラップ
0026デフォルトの名無しさん
2008/08/19(火) 09:25:07これって、アプリにlibUSBのlibをリンクしたら、アプリのソース公開でつか?
0027デフォルトの名無しさん
2008/08/19(火) 14:33:00002826
2008/08/19(火) 14:39:42じゃ、使いまつ。
0029デフォルトの名無しさん
2008/11/15(土) 12:20:32内部ではCPU等が標準で持っているシリアルインターフェースに
USB-シリアル変換器を組み合わせているというタイプも多い。
この場合パソコンとの接続は仮想COMポート経由ということになるため
この部分で自動的に区別がつくことになる(1台目はCOM3、2台目はCOM4のように)
ただしコールドスタート時から接続しておく場合は
どちらがどちらに割り当てられるかケースバイケースということになりかねないため
接続を確認する処理の中で個々の識別ができるような仕掛けが必要となる。
0030デフォルトの名無しさん
2009/04/19(日) 05:39:05コンフィギュレーションの指定のところで失敗します。元の差し込み口に差し直して
再実行すればうまく行くんですけど。
(*dev)->SetConfiguration(dev, confDesc->bConfigurationValue);
これが kIOReturnNotOpen を返しますが USBDeviceOpen() から GetNumberOfConfigurations(),
GetConfigurationDescriptorPtr() まで kIOReturnSuccess が戻るのは確認しています。
http://developer.apple.com/DOCUMENTATION/DARWIN/Reference/IOKit/IOUSBLib_h/Classes/IOUSBDeviceInterface/index.html#//apple_ref/doc/com/intfm/IOUSBDeviceInterface/SetConfiguration
今書いているのは MacOS X 10.5 ですが、Win98 の頃から差し込み口を変えただけで
ドライバの再インストールが始まったり認識できなくなったりするデバイスをたまに
見るんですけど、これってそもそも USB の特性なんでしょうか?
0031デフォルトの名無しさん
2009/04/19(日) 13:10:29ものすごい遅レスだけど、デバイス内部のCPUとUSBコントローラの接続が
UARTだからといってデバドラがVCPとは限らないだろw
その2つのインターフェイスは全然無関係だし。
具体例を言うとFTDIのFT232系統を見れば分かるけど
0032デフォルトの名無しさん
2009/04/19(日) 22:17:10ドライバとは限らんわけだが。
そんなこといちいち指摘したい年頃なのか?
0033デフォルトの名無しさん
2009/04/19(日) 22:43:32それ自分で言ってる意味わかって言ってる?
ていうか生のUARTって何のことよ?w
それはともかく、「そんなこと」どころではなくて、
>>29の言ってることは大間違いなんだけど。
>>29本人かどうか知らんけど、「間違いを犯す」ことより「自分の間違いを認められない」
ことの方を恥ずかしいと思うべきだと思うぞ。
0034デフォルトの名無しさん
2009/04/19(日) 23:49:37わからんのなら ROM ってろよ。
そもそも5ヵ月も前のレスに間抜けな指摘してる方が恥ずかしいと思うぞ。
0035デフォルトの名無しさん
2009/04/20(月) 00:22:39まあこういう可愛くない馬鹿を見ると追い込みを掛けたくなる俺も病気だなw
>>34
まあ罵倒はいいから、弁解なり反論なりをしてくれない?
生のuartって何?commドライバって何?
既に示したとおり、理屈上も現に存在する製品としても[CPU]⇔[USB コントローラ]
間のインターフェイスと[USBデバイス]⇔[PC]間のインターフェイスに直接の関連はなく、
前者がUARTだからといって後者がVCPである必要は何もない事実と、>>29のレスが
どう整合するの?
もちろんできないならいいよ無理しなくても。
0037デフォルトの名無しさん
2009/04/20(月) 03:54:460038デフォルトの名無しさん
2009/04/20(月) 06:28:21別にそれが間違ってるなんて書いてないだろ。
わざわざ指摘するほどのことかって言ってるだけ。
ちょっと冷静になった方がいいぞ。
0039デフォルトの名無しさん
2009/04/20(月) 06:36:550040a36 ◆K0BqlCB3.k
2009/04/20(月) 11:25:23ここは神経質なスレだな
0041デフォルトの名無しさん
2009/04/25(土) 15:39:27インターフェース、エンドポイントなんかのディスクリプタ情報を取りたいんですけど、
SP_DEVINFO_DATA からどうすればそれらを取得できますか?
HDEVINFO hDevInfo = SetupDiGetClassDevs(
NULL, "USB", NULL, DIGCF_ALLCLASSES | DIGCF_PRESENT);
while(SetupDiEnumDeviceInfo(hDevInfo, i, &devInfoData)){
/* ??? */
}
0042デフォルトの名無しさん
2009/05/02(土) 10:30:300043デフォルトの名無しさん
2009/05/06(水) 15:45:220044デフォルトの名無しさん
2009/10/13(火) 17:31:53のinfファイルって、
何で
>Class = LibUsbDevices
なの?
0045デフォルトの名無しさん
2009/10/14(水) 19:32:09ってどうやって番号発行するの?
0046デフォルトの名無しさん
2009/10/14(水) 19:58:290047デフォルトの名無しさん
2009/10/15(木) 14:53:390048デフォルトの名無しさん
2010/05/09(日) 00:24:10自作のHIDキーボードをPCに繋いで、
Windowsのデバイスマネージャの該当プロパティを見ると、
電源管理タブが表示されず
「このデバイスで、コンピュータのスタンバイ状態を解除できるようにする」
のチェックができないんだけど、
何が足りないのかな。
一応、デスクリプタのattributesの
remote wakeupフラグは立ててるんだけど。
0049デフォルトの名無しさん
2010/05/09(日) 00:39:27PC側のBIOS設定で禁止されてるとかね。
あるいは、デバイスがバスパワーで(キーボードだからたぶんそうだと思うけど)、
かつBIOSの設定で省電力モード時USBに給電しない設定になっている(というより、
デフォルトでそうなってるマシンが多い気がする)とか。
まあ電気・電子板で聞いた方がいいのかもね。
半年以上休眠してるスレで質問してもw
0050デフォルトの名無しさん
2010/05/09(日) 01:18:39とりあえず会社のマシンとかで試してみます。
0051デフォルトの名無しさん
2010/05/09(日) 03:31:51試しに他のPCでやってみたら出てきました。
デスクリプタの設定自体は正しかったようです。
ただ、実際に復帰するにはホストデバイス間の通信と、
デバイスの信号や電源周りを含め処理しないとだめらしく、
想像より敷居が高いと判りました。
まともなデバッグ環境がないと実装は無理そうです。
0052ぷれ
2010/05/13(木) 10:10:05マスストレージに対応しているかのように見せるようなドライバを作成したい
と思っています。(USBを接続するとドライブのように見えるイメージです)
何か参考になりそうなサンプル、
ドキュメント等ご存知でしたら教えてくれませんか?
0053デフォルトの名無しさん
2010/05/13(木) 14:11:110054ぷれ
2010/05/14(金) 14:08:31もしかしてLinuxのドライバですよね。
環境書いていなくてすいません。
Windows WDMで書きたいのです。。。。
0055デフォルトの名無しさん
2010/05/14(金) 14:17:200056ぷれ
2010/05/14(金) 15:38:590057デフォルトの名無しさん
2010/05/25(火) 08:56:35LANケーブルを使用した延長器でトライしたのですが線長が長くなり通信が安定しません。
アイオーデータのETG-DS/US+無線LANを使用してnet.USB経由にしようかと思いましたが、
最終的な接続先がマイコンのため、net.USBが使用できません。
パソコンでUSBの中継をするようなツールご存知ないでしょうか?
ETG-DS/US → Ethernet → PC(net.USB) → マイコンのUSB I/F
-----------
仮想USBであるnet.USBからUSB物理ポートへデータを吐き出す…。
いわば、USBのブリッジみたいなツールがほしいのですが。
0058デフォルトの名無しさん
2010/05/25(火) 09:14:16多分LAN対応したマイコン同士を繋いだ方が早い
USB → マイコン1→ 無線LAN → マイコン2
005957
2010/05/25(火) 09:26:58ありがとうございます。
やはり、ないですかぁ。
今回、図でいうとマイコン2が、購入品のため手を加えられません。
0060デフォルトの名無しさん
2010/05/25(火) 09:32:020061sage
2010/05/25(火) 09:57:58> LANケーブルを使用した延長器でトライしたのですが線長が長くなり通信が安定しません。
コレガの安っちいのじゃなくてBlackBoxの奴なら行けるかも。
006257
2010/05/25(火) 10:00:43PCに戻す装置なので、ハードが必要となります。なので、PC上に載せられないのです。
0063デフォルトの名無しさん
2010/05/25(火) 10:00:53マイコン2がいじれないなら
USB → マイコン3 → 無線 → マイコン1 → USB → マイコン2
とか
0064デフォルトの名無しさん
2010/05/25(火) 10:03:56006557
2010/05/25(火) 10:08:31ありがとうございます。
0066デフォルトの名無しさん
2010/05/25(火) 10:34:17最終的な接続先がマイコンとか矢印の向きで、マイコンがデバイス側なのかと思ってた。
0067デフォルトの名無しさん
2010/05/25(火) 11:40:16長さと金額にもよるだろうけど
0068デフォルトの名無しさん
2010/05/25(火) 19:04:39- USBはルートハブを入れて6段まで接続可能
- USBハブはレピータでもある
- ノード間のケーブル長は規格上は5mまで(実際は高品質のケーブルならもっといける)
以上は知ってるんだよね?
つまり、ごく普通に30mは引き回せるってことだけど。
あと、まんまUSBの物理層を無線にするものも売ってるよ。
0069デフォルトの名無しさん
2010/05/26(水) 08:00:030070デフォルトの名無しさん
2010/05/27(木) 10:46:19劣化して見えるのかな
D+D-両端にバッファ(74VHCU04とか)付けるとかで改善しない?
0071デフォルトの名無しさん
2010/05/27(木) 17:27:040072デフォルトの名無しさん
2010/05/27(木) 20:45:15USBの周波数に追従するバッファってどんだけーって気はする。
差動だけにタイミング余計シビアだよな
というか、だから普通にハブを使っとけと。
0073デフォルトの名無しさん
2010/05/27(木) 23:11:440074デフォルトの名無しさん
2010/05/28(金) 06:08:200075デフォルトの名無しさん
2010/05/28(金) 20:58:110076デフォルトの名無しさん
2010/05/29(土) 00:09:31無知すぎw
0077デフォルトの名無しさん
2010/05/29(土) 00:17:00じゃあ仮に意味があるとして、どうやって電圧上げるんだよ。
0078デフォルトの名無しさん
2010/05/29(土) 15:54:200079デフォルトの名無しさん
2010/05/31(月) 22:44:100080デフォルトの名無しさん
2010/09/26(日) 10:09:39PCの電力供給能力が低いからじゃない?
ハブ多段につなげる場合でも、
電力供給用にセルフパワーハブ入れるのは必須な感じ。
0081デフォルトの名無しさん
2010/09/26(日) 16:34:520082デフォルトの名無しさん
2011/02/28(月) 22:18:01.850083デフォルトの名無しさん
2011/03/07(月) 01:57:43.36どっかにusbの規格書とか、分かりやすいusbドライバのソースとか落ちてない?
0084デフォルトの名無しさん
2011/03/07(月) 08:41:40.68WindowsならWDK落としてくればサンプルソースついてる
0085デフォルトの名無しさん
2011/03/08(火) 19:15:09.67サンクス
ちょっと調べてみる
■ このスレッドは過去ログ倉庫に格納されています