91ming
驱动小牛
驱动小牛
  • 注册日期2001-12-03
  • 最后登录2005-06-04
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
特别幸运楼层#
发布于:2003-10-20 17:47
太好了,我正要做USB的驱动,真是及时雨
不断挖掘、开拓希望
zss113
驱动牛犊
驱动牛犊
  • 注册日期2003-10-13
  • 最后登录2004-05-09
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
1000中奖楼层#
发布于:2003-10-22 23:10
请问楼主可不可以用FPGA来做USB的控制器芯片啊,我现在有一个项目要用FPGA做所有的事,不过苦于没有找到这方面的资料。拜托了!! :) :(
frank_wang
驱动牛犊
驱动牛犊
  • 注册日期2002-09-28
  • 最后登录2005-10-17
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
102楼#
发布于:2003-10-22 23:27
我也考虑过用FPGA来实现USB1.1协议的内容,不过我想工作量很大,可以一起探讨。
huangzqy
驱动牛犊
驱动牛犊
  • 注册日期2003-05-21
  • 最后登录2005-02-24
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
103楼#
发布于:2003-10-23 19:26
frank_wang  你好!

我想自己开发U盘,请问你能否发一点原代码给我,让我学一学。

谢谢
RogueRabbit
驱动牛犊
驱动牛犊
  • 注册日期2003-03-30
  • 最后登录2005-11-17
  • 粉丝0
  • 关注0
  • 积分1分
  • 威望1点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
104楼#
发布于:2003-10-25 17:12
顶一下。我是菜鸟看也看不太懂。不过这个方法不错。所有的问题集中在一起讨论。。最好有点实际的代码啊sch什么的。好快速上手啊
GomeNasai
驱动牛犊
驱动牛犊
  • 注册日期2003-06-18
  • 最后登录2006-06-01
  • 粉丝0
  • 关注0
  • 积分70分
  • 威望7点
  • 贡献值0点
  • 好评度7点
  • 原创分0分
  • 专家分0分
105楼#
发布于:2003-10-28 10:43
新手上路,对USB还不十分清楚,想有些感性的认识。我的机器上有USB设备,感谢这里的大侠给出了USBCheck,现在想用它看一下,但不会用,点击USBCheck后出现了\"Once USBDiag.sys is loaded for ......\"的PLUG IN DEVICE(S) TO TEST的对话框,下步该怎么做就不会了,请问那位大侠能否给出使用方法的简单说明。
谢谢了。
Allenli
驱动牛犊
驱动牛犊
  • 注册日期2002-11-18
  • 最后登录2004-03-06
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
106楼#
发布于:2003-10-29 11:49
请教frank_wang等大侠们:
我现在就是在用FPGA开发一个U盘,主要用的是IP core。目前问题是主机发完复位信号后,没有发送setup包。不知道为什么,U盘对于复位还要给主机什么回应吗?协议上好像没提吧?  
wangzg1
驱动牛犊
驱动牛犊
  • 注册日期2003-10-28
  • 最后登录2003-11-28
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
107楼#
发布于:2003-10-29 12:33
我也考虑过用FPGA来实现USB1.1协议的内容,不过我想工作量很大,可以一起探讨。

如果接口用philips d12实现,其余的可以用fpga实现吗?
我想要实现尽可能快的传输数据
frank_wang
驱动牛犊
驱动牛犊
  • 注册日期2002-09-28
  • 最后登录2005-10-17
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
108楼#
发布于:2003-10-29 12:55
Allenli及各位要用FPGA来做USB相关工作的朋友:

    我觉得FPGA要实现两个工作,一是USB接口芯片的工作,即实现USB协议的内容。使用IP core;另外一个工作是MCU所需要的功能。如果你仅做一个USB接口芯片,则自己需要另找一个MCU,如果把MCU功能也做在FPGA里,则还需要一个IP Core,或51或DSP,我的理解是这样的。

    很希望能和大家一起继续做这样一些工作,希望可以一起多交流。
Allenli
驱动牛犊
驱动牛犊
  • 注册日期2002-11-18
  • 最后登录2004-03-06
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
109楼#
发布于:2003-10-29 23:02
frank_wang,你说的不错。我正是这么做的,用的还有一个51的核。基本上是usb核实现SIE的功能,51核及其固件实现符合bulk_only协议的控制。transceiver是用的philips的D11A。现在的问题令我很困惑,希望多提提建议!
wangzg1
驱动牛犊
驱动牛犊
  • 注册日期2003-10-28
  • 最后登录2003-11-28
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
110楼#
发布于:2003-10-29 23:39
frank_wang,你说的不错。我正是这么做的,用的还有一个51的核。基本上是usb核实现SIE的功能,51核及其固件实现符合bulk_only协议的控制。transceiver是用的philips的D11A。现在的问题令我很困惑,希望多提提建议!
 

如果用D12的话,就不用USB CORE了吧,只要51核就行?
通过51来传输是不是达不到全速啊。感觉可能会差很远
如果再要实现DMA 传输怎么办呢?
Allenli
驱动牛犊
驱动牛犊
  • 注册日期2002-11-18
  • 最后登录2004-03-06
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
111楼#
发布于:2003-11-03 19:11
我用的USB core 就是实现SIE的功能,D12我看的不是很仔细,但核心功能也就是SIE。有D12当然也就不需要USB核了。51实现全速也没有问题的!
  我的关于配置的问题,没有高手指点一二?是说的不够详细,还是太简单了?谢谢先
lxhpt
驱动牛犊
驱动牛犊
  • 注册日期2002-10-17
  • 最后登录2006-08-08
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
112楼#
发布于:2003-11-04 18:11
其实USB协议很简单,大家不要把它看的太难.它只是一种框架试的东西,我们只是需要把你要实现的工作套在它的框架上.其实真的要掌握USB这个东西,只要把把几个概念性的东西掌握好就行.以前我对USB也一点多不清楚,通过做项目,真正动手,就对USB比较了解了.就象frank_wang 说的,你只要知道USB HOST是怎样对U盘丛SetHubAddr,SetDiskAddr,SetConfig,GetDevDescriptor,GetConfigDescriptor后,主机就能知道USB device的IN端点和OUT端点,以及通讯包的大小,主机知道了设备的能力后,会根据各自的端点能力进行相应的通讯.那通讯中就会应用到8070i协议和scsi命令.
至于FAT12/FAT16/FAT32文件系统,可以找一份
Microsoft Extensible Firmware Initiative
FAT32 File System Specification 看看.文件系统最主要要了解文件在U盘中的存储格式,一般的U盘分为以下几个区:MBR,Reserved Region,FAT1,FAT2,ROOT,DATA.
turok
驱动牛犊
驱动牛犊
  • 注册日期2003-10-05
  • 最后登录2005-01-17
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
113楼#
发布于:2003-11-04 23:12
问两个问题:
1.sl811的device和host到底能不能同时使用?好多朋友说能,但是datasheet上明明说是“或者”,而且,我看了2.0 OTG的文档,2.0 OTG是有2个SIE的,而SL811只有一个,是不是由于这个才造成了sl811的device和host不能同时使用?我的理解对吗?
2.format命令到底怎样实现?有人说是读写的组合,但具体过程怎样呢?
lxhpt
驱动牛犊
驱动牛犊
  • 注册日期2002-10-17
  • 最后登录2006-08-08
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
114楼#
发布于:2003-11-05 09:24
sl811只能实现假的OTG功能,只有靠MCU的I/O口来控制主/从选择.你是指FORMAT U盘吗? 其实也可以做到,只要通过BPB区找到ROOT区,FAT区,写成0.
turok
驱动牛犊
驱动牛犊
  • 注册日期2003-10-05
  • 最后登录2005-01-17
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
115楼#
发布于:2003-11-06 14:05
sl811只能实现假的OTG功能,只有靠MCU的I/O口来控制主/从选择.


不太理解,为什么sl811只能实现假的OTG功能,真的OTG是怎么做的?
frank_wang
驱动牛犊
驱动牛犊
  • 注册日期2002-09-28
  • 最后登录2005-10-17
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
116楼#
发布于:2003-11-09 10:08
其实OTG只是个换汤不换药的东西,他对USB的主从结构的通讯模式并没有改变,只不过,这加回,在一个设备上既有HOST,也有DEVICE,可以自动实现两者的切换和选择。于是,看上去两个设备(比如打印机和数码相机)之间可以直接相连通讯。

对于SL811HS,他需要你选择到底是工作在硬件HOST模式还是DEVICE模式,一旦选择完毕,就不能改变了,可能这就是大家所说的假OTG吧。而真正的OTG,我想应该可以不重启也可以选择自己的身份的。
turok
驱动牛犊
驱动牛犊
  • 注册日期2003-10-05
  • 最后登录2005-01-17
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
117楼#
发布于:2003-11-09 11:18
既然这样,我有一个想法:我能够用一片51+sl811+d12做一个双片的otg,sl811实现host,d12实现device?
zouyingmyfriend
驱动牛犊
驱动牛犊
  • 注册日期2003-11-09
  • 最后登录2007-09-14
  • 粉丝0
  • 关注0
  • 积分83分
  • 威望12点
  • 贡献值0点
  • 好评度3点
  • 原创分0分
  • 专家分0分
118楼#
发布于:2003-11-09 23:21
第一次登陆这个论坛,呵呵,鼎力支持frank!
wumengyun
驱动牛犊
驱动牛犊
  • 注册日期2003-11-06
  • 最后登录2003-12-20
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
119楼#
发布于:2003-11-10 10:59
对阿 ,现在是学的技术,不是想的利润
游客

返回顶部