阅读:1198回复:3
大家可能没有用过这款芯片,但是我非常想借鉴您的经验
我正在和同事开发一个USB应用,我开发Windows端的driver,同事负责底层监控,用的是西门子的C541。有四个终端,都用Bulk方式操作,现在有下面的疑惑:
1)对于OUT类型的终端,driver可以成功地发送少于一个包长度的数据, 比如我向一个OUT终端发送一个字节。但是我同事说在fireware里面能收到中断,但是不知道是一个字节,所以他每次都读取一个包长度(8个字节),请问这对吗? 2)对于IN类型的终端,如果我要从上面读取一个字节的数据,我同事说不可能,因为firware不能收到中断。请问这是否可能? 我觉得是同事没有处理C541的状态寄存器,不知哪位开发过USB的大侠有何高见?不胜感激!! [编辑 - 10/17/02 by yww] |
|
沙发#
发布于:2002-10-17 10:25
开发过USB fireware的大侠也可以说说别的芯片是如何控制的
|
|
板凳#
发布于:2002-10-17 10:54
我个人认为,你的同事对这个芯片还不是很了解,应该自己去看看。
因为,到底收到多大的包,应该又一个寄存器来指示的。 |
|
|
地板#
发布于:2002-10-17 11:10
我同意楼上老兄的意见,OUT的数据固件端应该判断一个寄存器的值来确定OUT的字节数。IN的数据请求是驱动发出,固件应该能够收到中断请求,否则怎么上传数据?
|
|
|