阅读:1471回复:10
救救我,还有就是怎么给分!
救救我啊!
我的INF总是写不进去。 我用的是Cypress的64613,我用keil自带的inf也不行啊,这块片子的VID/PID是不是0547/2131啊! 有没有那位大虾给个example? yiji |
|
沙发#
发布于:2003-11-10 15:21
斑竹,大虾们,我都快失望了,怎么总是没人回帖子呢,好郁闷啊,今天头又催我了,快疯了
|
|
板凳#
发布于:2003-11-10 15:46
这种问题好像应该问,cypress的代理商寻求技术支持。
给分很简单,看看你第一贴的下面有一排:回复 。。。。给分,好好看看就找到了,只有自己发的贴子才能给分。 |
|
地板#
发布于:2003-11-10 16:26
你用usb总线monitor软件如bushound看数据,并分析一下数据,可以看到VID和PID。另外看看USB芯片枚举是否正确。
|
|
地下室#
发布于:2003-11-10 16:39
lioniamhero说得对啊,你可以看到的。
你说INF写不进去?你可以换个操作系统试试,或者如果上面有EEPROM的话,将其禁止后再驱动试试! |
|
5楼#
发布于:2003-11-10 17:29
大虾们能不能看看我下面的电路图有没有什么问题,我只是想看看能不能下载固件进去?
|
|
6楼#
发布于:2003-11-11 09:50
肯定是设备描述符没有正确设置VID和PID。
CYPRESS制造商VID是0x04b4h PID是根据生产商指定的。 例如: 我自己做一设备,自定义的设备,使用Cy63000芯片,我可以这么设定: VID=0x04b4h,PID=0x5678h,其中PID就是我对该设备的任意命名(编号)。 还可以设定成:VID=0x1234h,PID=0x5678h,其中VID和PID都是我任意指定的。 关键在于固件程序使用厂商的VID和PID的话,一定要有对应于这两个ID的驱动程序,而这个驱动程序一般都被包括进了操作系统。这样当插上USB设备时,系统通过检测设备VID和PID来寻找对应的INF文件,找到后才会进行安装设备。 如果VID和PID是自定义的,系统肯定是找不到对应的INF文件的。必须自己编写驱动程序,生成一个对应与自定义ID的INF文件和*.sys文件。 所以你要检查固件程序中的VID、PID,比较INF文件中VID、PID是否一致,如果不一致的话,这个INF就不可能安装正确。 do you understand? |
|
7楼#
发布于:2003-11-11 15:57
我的片子是FX-128NC,64613,技术文档上VID/PID好像是0547/2235,我的系统是XP,你能不能帮我看看我的INF文件,其实是自带的,我现在急切的想看看到底能不能下点东西进去!
谢谢诸位大虾们的帮助 [Version] Signature=\"$CHICAGO$\" Class=USB provider=%Anchor% LayoutFile=lAYOUT.INF [Manufacturer] %Anchor%=Anchor [Anchor] ; ; This is the VID/PID for the EZ-USB development board. This device ; is bound to a version of the general purpose driver that will ; automatically download the Keil 8051 monitor to external RAM. ; Do not use this VID/PID for your own device or the monitor will ; wipe out your firmware. ; ; This VID/PID is used by several of the EZ-USB development kit ; samples. This device is bound to the general purpose driver. ; ; ; The folowing PIDs are for all of the devices in the EZ-USB family. ; These are the hardcoded PIDs that will be reported by an EZ-USB ; device with no external EEPROM. Bound to the general purpose driver. ; ; EZ-USB FX %USB\\VID_0547&PID_2235.DeviceDesc%=EZUSB.Dev, USB\\VID_0547&PID_2235 [PreCopySection] HKR,,NoSetupUI,,1 [DestinationDirs] EZUSB.Files.Ext = 10,System32\\Drivers dEZUSB.Files.Inf = 10,INF [EZUSB.Dev] CopyFiles=EZUSB.Files.Ext, EZUSB.Files.Inf AddReg=EZUSB.AddReg [EZUSB.Dev.NT] ; copyfiles commented out for Win2K to avoid user intervention during install CopyFiles=EZUSB.Files.Ext, EZUSB.Files.Inf AddReg=EZUSB.AddReg [EZUSB.AddReg] HKR,,DevLoader,,*ntkern HKR,,NTMPDriver,,dev_io.sys [EZUSB.Files.Ext] deb_io.sys [EZUSB.Files.Inf] dev_io.inf ;---------------------------------------------------------------; [Strings] Cypress=\"Cypress Semiconductor\" USB\\VID_0547&PID_2235.DeviceDesc=\"Cypress EZ-USB (2235) - EEPROM missing\" |
|
8楼#
发布于:2003-11-11 16:35
别着急,我对你用的芯片一点都不懂,我使用开发板CY3650,芯片63000。
以下是我自己的非标准设备启动过程。将自己的固件编译完后装入开发板,插上USB接头。系统发现新硬件,搜索驱动,没找到,提示指定驱动程序位置,指定自己写的驱动程序(xxx.inf,xxx.sys),发现驱动程序,开始安装。如果安装失败或者安装完成后该设备没有正常启动,在设备管理器中查看USB接口之类的设备会发现错误的“X”或者“!”符号。这样的话我就重新启动,重复安装直到设备安装正常为止。 如果设备的固件程序中使用的描述符定义成标准类别或系统自动可以识别的类型,那么将不再需要驱动(xxx.inf,xxx.sys),系统会自动识别并且启动该设备;也可能只需要一个与该设备配套的xxx.inf而不需要xxx.sys,系统需要安装xxx.inf 即可启动设备。 不知道你的INF文件是如何加载的,以及加载后的结果如何? |
|
9楼#
发布于:2003-11-12 14:28
我没有开发板,我的固件好像也是要一起通过INF文件找到后重新枚举下载,我的问题是不知道这种情况INF文件该怎么写?
谢谢您 |
|
10楼#
发布于:2003-11-13 09:44
我明白了,你的芯片与我的芯片不一样,我的低级,你的高级,我的固件就在芯片中,你的需要列举后下载到芯片中使用。这种芯片我没有用过,这样的INF文件如何启动芯片我就不知道了,爱莫能助!
|
|