返回该小组首页 回复主题
MF35

MF35

小组等级:     E币:62  (E币换礼)

#1楼主:圈圈你好,我刚开始做USB开发,想问你几个简单的问题

文章发表于:2008-05-20 06:04


1.如果上位机想要免驱动,是不是必须把设备做成一个HID设备,而如果这样做的话我必须自己写一个
2.HID设备如果使用中断传输是不是在每个frame只能传输一笔事务,而且这笔事务的最大传输量不能超过64字节
3.HID设备是否可以做成自定义类型(非鼠标,键盘等协议),使用自己的传输协议
4.我的应用要求设备每秒大概发送10k字节的数据到主机(不是一次性的,但是每秒的传输量是一定的),主机不定期一次性传输大约2k字节的数据到设备,如果用HID的方法来实现,传输速率是否可以满足要求(查了好多资料,都说的很模糊)
5.如果我用自定义设备是否在实现上可以更灵活,而且效率更高(不过不考虑驱动开发的话)

以上,谢谢

      【回复】

chaoren_baobao

   小组等级:    E币:385  (E币换礼)

#2

文章发表于:2008-05-20 19:42

我可以回答一些。
1,其实不只有HID设备可以免驱动,大容量存储类(Mass Storage)也免驱动,其实是因为xp系统已经自带了这些类的驱动。
2,不太明白
3,如果是自定义类型,那就不叫HID设备了啊。
。。。我也不知道该怎么回答了,还是让圈圈来说吧。。。

shaojihu

   小组等级:    E币:249  (E币换礼)

#3

文章发表于:2008-05-20 19:46

       我觉得第二和第三个问题,你可以到书上看看,依据不同的传输速度和不同的传输类型,传输的最大字节数是不一样的,好像对于HID设备来说推荐使用中断传输,呵呵,好多都忘了,一直做的是批量传输

computer00

   小组等级:    E币:9591  (E币换礼)

#4

文章发表于:2008-05-20 20:37

HID只支持中断传输。可以定义为自定义的HID设备。对于全速设备,中断传输最大包长可到64字节,每frame最多可传输19笔事务,每秒传输字节数最大为1216000字节,这个在USB协议里面有规定的。所以你要求每秒10K,用HID的中断传输应该是完全没问题的。用自定义的设备也可以,就是需要自己开发一个驱动程序。当然,如果只是做来玩玩,可以直接使用我提供的那个驱动。支持端点2的64字节批量传输。

MF35

   小组等级:    E币:62  (E币换礼)

#5

文章发表于:2008-05-20 22:07

谢谢圈圈,usb规范上中断传输确实是说每个frame可以传19笔事务,我是在一篇叫<用人机接口类型开发USB设备>文章上看到一句话说"全速设备每毫秒不能有超过一笔事务",而根据规范,一般是1ms一个frame,所以我才有以上的疑问,看来国内某些文章还是有些问题的

如果我把我的设备做成标准的HID设备,比如鼠标键盘或者U盘,那么传输的过程就一定要遵守这些通用标准设备的协议啦,如果我作成自定义的HID设备,那么通信的协议就是通过设置自己的报告描述符来体现(报告描述符规定报告内容的含义),不知道这么理解是否正确.

还有就是关于报告描述符的理解,我觉得报告内容所代表的含义越单一(比如一个报告内所有的数据都代表同一种含义),报告描述符的定义就会越简单,比如键盘的描述符就比鼠标的复杂.这样理解是否正确.

呵呵,搞了好多年嵌入式了,不过才刚开始学USB,属于落伍那种,看了两天协议,头都晕了,大致明白是怎么回事了,就是一些细节不太清楚,准备边做实验边学习,理论+实践嘛^_^,问题罗嗦了些,还请圈圈老大以后多指教

也谢谢2,3楼的兄弟,呵呵

computer00

   小组等级:    E币:9591  (E币换礼)

#6

文章发表于:2008-05-21 02:06

你的理解基本上是对的。U盘不是HID设备,是大容量存储设备。关于如何做自己的HID设备,你可以看我们小组里的“VC++读写HID设备”那个帖子,里面有固件和应用程序的源代码。报告描述符方面的,你可以看看我以前写的报告描述符的文章,以及HID协议。

MF35

   小组等级:    E币:62  (E币换礼)

#7

文章发表于:2008-05-21 17:00

呵呵,太感谢了

iron05

   小组等级:    E币:335  (E币换礼)

#8

文章发表于:2008-07-19 11:02

00说过不能只看,要说话,但刚接触这方面的东西,说不出什么只能打写无用的字符来增加点人气呵呵

总共 , 当前 /

快速回复主题--如果想加入编辑器功能,建议使用 [高级回复]

您目前还不是小组成员,请先加入

回复贴子区

用户名:    您没有注册?

密码:    忘记了密码?

内容:

  • DesignDesign
  • HTMLHTML

浏览该小组的用户还看过...

设计资源与分销