![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-10-31 15:55 |
共 47,815 主题排行 / 349,930 发帖 / 今日 0 篇 / 48,290 会员排行 |
| DOS开发编程 & 发展交流 (开发室) » 求 DOS USB 编程 帮助 ! |
| 可打印版本 2,101 / 10 |
| 第1楼 yuanchengjun | 发表于 2007-04-17 04:57 |
| 新手上路 发帖 3 积分 8 | |
|
求 DOS USB 编程 帮助 ! 求DOS USB设备 驱动源码,或者例子,或者教程,……
不用完整的驱动,例子就可以,比如:一次收发数据包过程。 |
|
| 第2楼 yuanchengjun | 发表于 2007-04-17 04:59 |
| 新手上路 发帖 3 积分 8 | |
|
自己顶一下 DOS、C语言不会USB,估计要用汇编。
大侠不吝赐教! |
|
| 第3楼 heling | 发表于 2007-06-07 13:02 |
| 新手上路 发帖 9 积分 18 | |
|
请高手赐教
|
|
| 第4楼 kinglin | 发表于 2007-07-03 14:33 |
| 初级用户 发帖 28 积分 62 | |
|
关注ing
|
|
| 第5楼 windowsvesta | 发表于 2007-07-04 11:04 |
| 初级用户 发帖 67 积分 138 来自 云南 | |
|
我也想知道!
|
|
| 第6楼 johnsonlam | 发表于 2007-07-04 12:59 |
| 银牌会员 发帖 497 积分 1,410 来自 九龍,香港 | |
|
有 :
http://www.georgpotthast.de/usb/dosusb.htm 這 是 USB 標 準 文 件 : http://www.usb.org/developers/docs/usb_20_040907.zip [ Last edited by johnsonlam on 2007-7-4 at 01:03 PM ] |
|
| 第7楼 wzsunlight | 发表于 2007-09-11 20:15 |
| 初级用户 发帖 52 积分 107 | |
|
???
|
|
| 第8楼 dsysps | 发表于 2007-10-23 17:15 |
| 初级用户 发帖 34 积分 98 | |
|
我也想知道,正在努力。现在EHCI的基本配置过程理解了
//通过PCI配置空间检测EHCI BYTE SearchEHCI(void) { union REGS regs; int bus, dev, func; //WORD Did,Vid; WORD ClassCod,SubClass; for(bus = 0; bus <= PDI_BUS_MAX; ++bus) { for(dev = 0; dev <= PDI_DEVICE_MAX; ++dev) { for(func = 0; func <= PDI_FUNCTION_MAX; ++func) { UsbHostPciAddr = MK_PDI(bus, dev, func);/* 计算地址 */ /* 获取厂商ID */ regs.x.ax = 0xB109; // READ CONFIGURATION WORD regs.x.bx = UsbHostPciAddr; regs.x.di = 0; // Vendor ID regs.x.cx = 0xFFFF; // 非法的Vendor ID int86(0x1A, ®s, ®s); /* 判断设备是否存在。FFFFh是非法厂商ID */ if (regs.x.cx != 0xFFFF) { /* Class Code */ regs.x.ax = 0xB109; // READ CONFIGURATION WORD regs.x.bx = UsbHostPciAddr; regs.x.di = 0xA; // Class int86(0x1A, ®s, ®s); ClassCod=regs.x.cx; if(ClassCod==0x0c03) //usb host { regs.x.ax = 0xB109; // READ CONFIGURATION WORD regs.x.bx = UsbHostPciAddr; regs.x.di = 8; //SubClass int86(0x1A, ®s, ®s); SubClass=regs.x.cx; if((SubClass&0xff00)==0x2000) return USB_EHCI_CONTROLLER; } } } } } return USB_NULL_CONTROLLER; } ///*设置基地址为0X000D0000*/ void CfgBaseAddr(void) { union REGS regs; regs.x.ax = 0xB10c; //WRITE CONFIGURATION WORD regs.x.bx = UsbHostPciAddr; regs.x.di = 0X10; regs.x.cx = 0; int86(0x1A, ®s, ®s); regs.x.ax = 0xB10c; // WRITE CONFIGURATION WORD regs.x.bx = UsbHostPciAddr; regs.x.di = 0X12; regs.x.cx = 0X000D; int86(0x1A, ®s, ®s); } ......... |
|
| 第9楼 phtsai63 | 发表于 2007-10-24 11:13 |
| 新手上路 发帖 3 积分 6 | |
|
Dos USB 用 Basic 寫的, 而且只 support OHCI and UHCI.
希望樓上的能造福大眾. |
|
| 第10楼 winson4829 | 发表于 2008-03-06 14:34 |
| 初级用户 发帖 17 积分 68 | |
|
開發環境使用 DJGPP + FreeDOS + DPMI + DOSUSB 的驅動程式 (http://www.dosusb.net)
請參考 http://www.dosusb.net 內的論壇內容, 不同的 USB CHIP 不保證一定成功, 但我的環境下列我寫的 SOURCE CODE 是 OK 的 檔案名稱 : W6USBCOM.h 檔案名稱 : W6USBCOM.C |
|
| 第11楼 happe | 发表于 2008-03-11 05:01 |
| 新手上路 发帖 6 积分 12 | |
|
还在学习 这里的东西太多了...
DOS USB 编程是怎么回事? 看了还是不明白 |
|
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |