阅读:2146回复:7
cypress63001a的firmware枚举问题!
各位,我的63001使用的是3650开发环境,cyasm是1。96v的,开发的是hid,使用的firmware是lvr上down的例程和“USB外围设备设计与应用”书的附书源码(我自己写的枚举过程,无法通过,只好借鉴下^_^)。现在问题如下:
1,第一次plug上系统时,都会出现发现新硬件,usb device的名称,安装驱动等,以后plug就没有了,是不是系统记住了,还是我的firmware有问题? 2,最好的安装结果就是发现硬件->device name->安装成功->请重启系统(我用的是2k,以前用xp但没有成功过:(,这时使用usbview软件查看usb的hid的描述符,config value =0,usb speed = full,device addr = 0,open pipes = 0,然后restart,ok了,新硬件成功安装,在usbview里再看,config value = 0x01,usb speed = low,device addr = 0x02,open pipes = 1,使用vb的上位机软件hid test和他通信,也是基本正常的。 现在已经是ok的了,但是如果将usb 拔下,再plug in,系统又是像开始一样,无法正确安装,不能使用,ft, 3,为什么是lvr的example的code,在我这里就不能正常枚举呢?郁闷ing!这是lvr的code 的网址: http://www.lvr.com/hidpage.htm#MyExampleCode 我用的是hid example里面的firmware for 63000的。 请遇到过这种情况的和知道原因的同仁帮帮忙,谢谢! 我仔细的看过他的source code,枚举过程应该没有什么问题的把^_^,真是技穷人窘啊555 |
|
沙发#
发布于:2004-05-20 10:48
我怀疑是主机驱动的AddDevice有问题,很可能是连接符没删,所以无法再使用该连接符。
|
|
|
板凳#
发布于:2004-05-20 11:36
谢谢aha_here,可是我在别的pc上xp环境下,还是一样枚举不成功啊,ft
还请大家多提宝贵意见和方法啊,我搞了好长时间了,系统都rebuild了好几次了,555,郁闷啊,原来以为down个example,ok了,改改就ok了,我就作其他的程序了,现在这个枚举都搞不定,ft,失败啊。 |
|
地板#
发布于:2004-05-20 11:56
装的是通用驱动程序还是cypress的驱动?
[编辑 - 5/20/04 by aha_here] |
|
|
地下室#
发布于:2004-05-20 11:58
给我发个原理图,看看硬件是不是有问题!
aha_here@sohu.com |
|
|
5楼#
发布于:2004-05-24 10:36
aha_here,不好意思,公司最近网络出了点问题。
是这样的。hid好像不需要driver吧,其实也有个driver,是我load的firmware的作者自己写的。调试程序用的是通用的hid程序,vc和vb的都有。在我的hid device枚举成功后,使用通用调试程序,都是ok的。usbview也是ok的。 不好意思,原理图找不到了。我原来有个同事,他用这个dev board调试的hid firmware,成功了。我想硬件有问题可能性不大吧。 我是很奇怪,为什么plug device第一次不行,不作任何改动,拔下,再次plug,就ok了呢?ft,郁闷啊, |
|
6楼#
发布于:2004-06-12 16:06
Hid类设备第一次插上去系统都会找到新的Device,然后系统会安装相应的Driver,以后就不会这样了,因为在注册表中已经记下了它的PID/VID。但如果第一次设备有问题,那么下一次可能会再重来一次。你的情况可能是你的枚举有问题,设备的Driver没有完全装载好。
|
|
|
7楼#
发布于:2004-11-27 01:29
我也遇到了同样的问题,直到看到你的帖子也没有能够想明白。不过有一点引起了我的注意,那就是不同的版本的ddk还是有差别的。建议你在WINXP系统下重新编译所有的源程序,包括固件程序,主机程序和端机程序。毫无疑问,在开发用的计算机上还是可以成功的。不过在其他的计算机上就不敢保证了。试试吧 :cool:
|
|