metalwing
驱动中牛
驱动中牛
  • 注册日期2003-10-13
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分178分
  • 威望58点
  • 贡献值0点
  • 好评度17点
  • 原创分0分
  • 专家分0分
阅读:1660回复:2

能帮我解释一下USB打印机USB端口传输的通常做法

楼主#
更多 发布于:2004-08-06 13:49
我做的是Usb打印机的USB部分的驱动。负责rip与打印机单片机的通信。我想问一下,这个驱动的通常做法是怎样的过程?比如:
1。 rip向打印机发送打印命令,usb驱动是否是通过厂商命令将该请求发送给设备,再由设备执行?还是通过InterruptOUT传输方式?
2。 rip像打印机发送数据,要使用USB的DMA传输方式,先通过DeviceIoControl向Usb发送要传输的数据量,Usb再将该数据发往设备。然后,rip在通过WriteFile函数向Usb发送打印数据。那如果数据量很大(超过USB的BulkPipe的MaxTransferSize)时,要将数据分包,应该在哪里实现?是在rip中通过循环WriteFile还是在Usb驱动中通过ReuseIrp?
3。 rip要获取设备状态,通过USB的InterruptIN传输方式完成。那么应该有谁完成对设备InterruptIN端点的轮询?是做在rip中通过循环方式还是在USB驱动中,再由USB驱动通过事件通知rip,还有,我看很多USB例程的事件通知方式也是通过循环等待方式实现的。那么这么做与直接在rip中使用循环来轮询设备有什么区别和好处?
4。 还有什么是应该注意的呢?
谢谢,能帮我解释一下吗?
新手上路,请多关照.
metalwing
驱动中牛
驱动中牛
  • 注册日期2003-10-13
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分178分
  • 威望58点
  • 贡献值0点
  • 好评度17点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2004-08-06 20:49
顶一下
新手上路,请多关照.
XR_WDM
驱动小牛
驱动小牛
  • 注册日期2002-06-28
  • 最后登录2013-03-01
  • 粉丝1
  • 关注0
  • 积分15分
  • 威望67点
  • 贡献值0点
  • 好评度5点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2004-09-16 11:20
小弟也在做相关方面的项目,想请教一下,这里指的RIP是什么意思?
后进而勃发
游客

返回顶部