请问各位,小弟有个问题关于USB Printer类协议需要向大家请教一下
- UID
- 136821
- 性别
- 男
|
请问各位,小弟有个问题关于USB Printer类协议需要向大家请教一下
[问题]: 在USB Printer 设备类的协议中,定义三个类描述符和BULK IN/OUT传输,分别是GET_DEVICE_ID, GET_PORT_STATUS, SOFT_RESET。 而并口25针的传输中有分三个寄存器分别为DATA、STATUS、CONTROL寄存器。 其中,BULK IN/OUT传输对应操作的是并口的DATA寄存器,而通过类描述符对应的操作的是STATUS寄存器;现在我不明白的就是USB转并口之后USB通讯是如何操作CONTROL寄存器,比如其中控制寄存器中有个nSelect用来选择哪个打印机,在USB的传输里是怎样实现控制nSelect的呢。 是通过BULK OUT还是通过控制传输还是其他?肯请各位可以给个详细点的解答,不胜感激! |
|
|
|
|
|
- UID
- 136211
- 性别
- 男
|
你的USB转并口是如何实现的?呵呵,我没有看懂!不知道这里面有没有那位老大对OS 下的Driver比较懂! |
But I think don\'t favor of this very much ,but do this job,do as your best!
So I come here to learn more, make some experts as friends in this area. |
|
|
|
|
|
- UID
- 136821
- 性别
- 男
|
这个USB转并口我还没有实现,我是想按照USB Printing Deivce类协议实现,这只是我的一个初步的想法。因为并口25针实现了三个寄存器分别是DATA、STATUS、CONTROL,按照协议所述,并口打印机的状态可以由打印机USB类协议中的GET_STATUS请求实现打印机状态的传输,而打印的数据都是通过USB BULK IN/OUT传输到并口打印机的DATA寄存器中,但是它唯独没有提到的就是如何通过USB传输控制信息到CONTROL寄存器,从而实现对并口打印机的控制,比如选择打印机等等
|
|
|
|
|
|
- UID
- 30051
- 性别
- 男
|
有USB转并口的芯片啊,好像叫ft245,你用什么实现呢 |
|
|
|
|
|
- UID
- 155704
- 性别
- 男
|
这种具体的控制有两个途径可以得到. 一种就是标准规范,例如U盘,数据读写,盘状态,等等信息都规范好了,照着做就好. 另一个途径就是自己定义,在已经有的协议基础上增加自己需要的内容.你可以通过BOT定义几条打印机协议之外的命令来实现.但是这样做了你必须要考虑设备驱动的问题。 我没有研究过"USB Printing Deivce类协议",但是如果有这类比较权威的标准的话,就肯定把相关的所有问题都解决了的.你可以看看自己的控制是不是可以去掉,或者研究协议不够深刻. 如果不喜欢研究协议就自己做好了,做出来能做USB打印机,没有人管你到底通信规范不规范!Good Luck! |
|
|
|
|
|