fwzfwz1
驱动中牛
驱动中牛
  • 注册日期2002-11-01
  • 最后登录2007-06-01
  • 粉丝0
  • 关注0
  • 积分80分
  • 威望8点
  • 贡献值0点
  • 好评度8点
  • 原创分0分
  • 专家分0分
阅读:1699回复:13

50分放送(回帖就有分)

楼主#
更多 发布于:2003-12-26 12:17
本人刚刚接触USB,对很多概念还不清楚。请高手赐教:
假设我的USB设备连了一个RAM,那么如何读取这个RAM的内容?
对于PCI设备可以将这个RAM映射到计算机的存储器或I/O空间,但是USB表示没有进行空间映射,在这种情况下,如何读取RAM呢?
好像是通过管道实现的,但是具体怎么实现呢,其次有读取几个字节呢,读取的数据又放到那里呢?

最新喜欢:

bearsammibearsa...
有了驱动,人才有了力量。
fwzfwz1
驱动中牛
驱动中牛
  • 注册日期2002-11-01
  • 最后登录2007-06-01
  • 粉丝0
  • 关注0
  • 积分80分
  • 威望8点
  • 贡献值0点
  • 好评度8点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2003-12-26 15:41
我就是想知道RAM-CPU-主机之间数据传输的机制?
是不是CPU将读取的RAM数据放到端点的FIFO上,并在相应的寄存器中设置数据的长度就可以了。然后,主机驱动程序从端点的FIFO中读取一定该长度的数据。
不知理解的对不对,请高手赐教!
有了驱动,人才有了力量。
fwzfwz1
驱动中牛
驱动中牛
  • 注册日期2002-11-01
  • 最后登录2007-06-01
  • 粉丝0
  • 关注0
  • 积分80分
  • 威望8点
  • 贡献值0点
  • 好评度8点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2003-12-29 12:07
那么驱动程序又是如何将设备端传来的数据放到主机的RAM中呢,是不是驱动程序中有读写USB设备的函数?
有了驱动,人才有了力量。
fwzfwz1
驱动中牛
驱动中牛
  • 注册日期2002-11-01
  • 最后登录2007-06-01
  • 粉丝0
  • 关注0
  • 积分80分
  • 威望8点
  • 贡献值0点
  • 好评度8点
  • 原创分0分
  • 专家分0分
地板#
发布于:2003-12-30 19:44
整个通路应该是PC应用程序<――>驱动程序<――>Host Controller<――>电缆<――>Device Controller(也就是usb接口器件)<――>MCU<――>外围电路(比如你说的ram)。

也就是说设备方主控的是MCU,你的外围设备如ram、flash要连到mcu上,如果里面有数据,mcu把数据读出放到usb的端点fifo里,再通usb内的收发器传走。

我说明白了吗?

3x,说得很明白!看了你的几个回帖,水平很高呀!
有了驱动,人才有了力量。
游客

返回顶部