首次安装CY7C68013A驱动失败记(结果竟然是这样)

原文地址:首次安装CY7C68013A驱动失败记(结果竟然是这样)作者:孙茂多

今天把68013A-56焊接在CCD2的CPLD PCB上,配套的EEPROM存储器还没有焊接上,所以想用它试验一下Cypress的基础开发实例。研究了一上午,结果驱动都没装上。

我用一种我没想到的方式解决的这个问题,详见文章尾部叙述。

如果有人能给我一点提醒,非常感谢!Please contact "[email protected]"

插入设备(后文简称 FX2LP),显示Unknown Device如下图:

Figure 1

双击显示,代码43:

Figure 2

Figure 3

Figure 4

Figure 5

Figure 6

以上是插入设备时的反应。

Cypress提供的Vista(compatible with Windows 7)驱动文件包括cyusb.inf、cyusb.sys,根据TRM中的相关内容:

Figure 7

我修改了cyusb.inf文件中的相关项,现将cyusb.inf内容列出(大部分和Cypress Suite USB 3.4.7 附带的通用驱动配套inf文件相同,修改的地方我用红色标出了):

————————————————————————————————————————

; Installation INF for the Cypress Generic USB Driver for Windows Vista

; Processor support for OS unknown platforms.

;

; (c) Copyright 2011 Cypress Semiconductor Corporation

;

[Version]

Signature="$WINDOWS NT$"

Class=USB

ClassGUID={36FC9E60-C465-11CF-8056-444553540000}

provider=%CYUSB_Provider%

CatalogFile=CYUSB.cat

DriverVer=10/17/2011,3.4.7.000

[SourceDisksNames]

1=%CYUSB_Install%,,,

[SourceDisksFiles]

CYUSB.sys = 1

[DestinationDirs]

CYUSB.Files.Ext = 10,System32Drivers

[ControlFlags]

ExcludeFromSelect = *

[Manufacturer]

%CYUSB_Provider%=Device,NT,NTx86,NTamd64

;for all platforms

[Device]

%VID_04B4&PID_8613.DeviceDesc%=CyUsb, USBVID_04B4&PID_8613 ; 修改了VID、PID,下同

;for windows 2000 non intel platforms

[Device.NT]

%VID_04B4&PID_8613.DeviceDesc%=CyUsb, USBVID_04B4&PID_8613

;for x86 platforms

[Device.NTx86]

%VID_04B4&PID_8613.DeviceDesc%=CyUsb, USBVID_04B4&PID_8613

;for x64 platforms

[Device.NTamd64]

%VID_04B4&PID_8613.DeviceDesc%=CyUsb, USBVID_04B4&PID_8613

[CYUSB]

CopyFiles=CYUSB.Files.Ext

AddReg=CyUsb.AddReg

[CYUSB.HW]

AddReg=CYUSB.AddReg.Guid

[CYUSB.Services]

Addservice = CYUSB,2,CYUSB.AddService

[CYUSB.NT]

CopyFiles=CYUSB.Files.Ext

AddReg=CyUsb.AddReg

[CYUSB.NT.HW]

AddReg=CYUSB.AddReg.Guid

[CYUSB.NT.Services]

Addservice = CYUSB,2,CYUSB.AddService

[CYUSB.NTx86]

CopyFiles=CYUSB.Files.Ext

AddReg=CyUsb.AddReg

[CYUSB.NTx86.HW]

AddReg=CYUSB.AddReg.Guid

[CYUSB.NTx86.Services]

Addservice = CYUSB,2,CYUSB.AddService

[CYUSB.NTamd64]

CopyFiles=CYUSB.Files.Ext

AddReg=CyUsb.AddReg

[CYUSB.NTamd64.HW]

AddReg=CYUSB.AddReg.Guid

[CYUSB.NTamd64.Services]

Addservice = CYUSB,2,CYUSB.AddService

[CYUSB.AddReg]

; Deprecating - do not use in new apps to identify a CYUSB driver

HKR,,DevLoader,,*ntkern

HKR,,NTMPDriver,,CYUSB.sys

; You may optionally include a check for DriverBase in your application to check for a CYUSB driver

HKR,,DriverBase,,CYUSB.sys

HKR,"Parameters","MaximumTransferSize",0x10001,4096

HKR,"Parameters","DebugLevel",0x10001,2

HKR,,FriendlyName,,%CYUSB_Description%

[CYUSB.AddService]

DisplayName = %CYUSB_Description%

ServiceType = 1 ; SERVICE_KERNEL_DRIVER

StartType = 3 ; SERVICE_DEMAND_START

ErrorControl = 1 ; SERVICE_ERROR_NORMAL

ServiceBinary = %System32DriversCYUSB.sys

AddReg = CYUSB.AddReg

LoadOrderGroup = Base

[CYUSB.Files.Ext]

CYUSB.sys

[CYUSB.AddReg.Guid]

HKR,,DriverGUID,,%CYUSB.GUID%

[Strings]

CYUSB_Provider = "Cypress"

CYUSB_Company = "Cypress Semiconductor Corporation"

CYUSB_Description = "Cypress Generic USB Driver"

CYUSB_DisplayName = "Cypress USB Generic"

CYUSB_Install = "Cypress CYUSB Driver Installation Disk"

VID_04B4&PID_8613.DeviceDesc="Cypress USB Generic Driver (3.4.7.000)FRANK64" ; 修改成自定义的名字

CYUSB.GUID="{76C2F9FD-3238-48aa-A217-06A805FE4DC9}" ; 利用GUIDGEN.EXE生成了新的GUID

CYUSB_Unused = "."

————————————————————————————————————————

然后点击更新驱动程序,将目标文件夹指向我创建的.inf文件和对应的.sys文件所在的文件夹,确定,显示:

Figure 8

其实就是没有更新驱动…一切都没有变化(原因是没有成功识别设备的VID&PID):

Figure 9

Figure 10

回想一下,首次插入USB设备的时候,即便没有安装驱动,系统也应该能够通过标准请求得到USB设备默认的VID、PID吧,可是我插入USB设备后,VID、PID俱不显示,而没有VID&PID系统当然不知道安装什么驱动程序,也无法把我改好的.inf文件和设备捆绑起来。这是否说明问题出在硬件上,比如USB电缆?

Answer:不是硬件问题,也不是电缆问题!下面是次日上午,我发现的奇怪现象:

上午我把68013A without EEPROM(后文简称FX2LP)的板子拿到实验室,连接我的台式机(XP x86)和同学的笔记本电脑(Win7 x64),发现竟然都能识别出VID_04B4 & PID_8613,并且成功安装Cypress Suite USB 3.4.7提供的驱动(XP:wxp x86,7:wlh x64)。而我实验室和宿舍的两台笔记本(Win7 x64)的USB2.0接口均不能识别FX2LP的VID和PID。

当我决定把FX2LP插在USB3.0接口上试一试的时候,奇迹发生了(下列图中的Win7个性化效果不同于之前的截图,因为下列图截图于实验室笔记本win7,之前是宿舍笔记本win7):

这里有一个细节:
1、当首次用USB2.0接口连接FX2LP时,显示"unknown device"在"通用串行总线控制器",错误代码43,显然Windows给FX2LP安装了一个驱动(图4),不过驱动程序存在错误(43);
2、当首次用USB3.0接口连接FX2LP时,显示"未知设备"在"其它设备",而且没有安装任何驱动;

Figure 11

VID&PID均得到了识别

Figure 12

且成功安装了驱动(在启动计算机时,F8禁用了强制驱动签名)。

Figure 13

下图是安装完驱动的效果,名字上的FRANK64是我在inf文件中加的:

Figure 14

总结如下:

我比较一下成功识别和失败的计算机的不同:

1、失败的计算机除了带有USB2.0还带有USB3.0接口;

2、成功的计算机只带有USB2.0接口。

我想问题可能出在这个USB3.0接口上,我使用带有USB3.0接口的计算机的电脑时,当FX2LP连接在USB2.0接口上时,无法识别VIDPID,但是如果FX2LP连接在USB3.0接口时,可以成功显示VIDPID,并成功安装驱动。

时间: 2024-12-22 15:07:23

首次安装CY7C68013A驱动失败记(结果竟然是这样)的相关文章

cc2540 usbdongle 安装驱动失败的终极解决方法 【原创,多图】

安装说明参考openssl源码文件夹下INSTALL.W32 step1 环境搭建 安装perl,Visual Studio 2008 下载Openssl最新版源码.我下的版本为OpenSSL-1.0.0g. step2 启动Visual Studio 2008 Command Prompt 运行bin\vcvars32 设置 环境变量 注意: 如遇反馈"此处不应该有/Microsoft",参考错误1. step3 VS命令行窗口cd至openssl源码文件夹 执行以下命令 $perl

安装vmware tools失败解决方法

失败提示: reating a new initrd boot image for the kernel. update-initramfs: Generating /boot/initrd.img-3.11.0-12-generic vmware-tools-thinprint initctl: Job failed to start Unable to start services for VMware Tools Execution aborted. 解决方法一: 后来参照了这个网页 ht

[iOS] “是否允许“xxx”使用数据”,在iOS10之后,首次安装App会弹框让用户授权,问题解决方案。

一.为什么会弹 "是否允许使用数据"? 因为按照我们天朝的工信部要求,用户再使用应用的过程中,如果要使用移动数据必须要用户授权,其实这是好事,是为了保护用户的流量或者话费不会无端的被扣除.所以苹果在 iOS10 之后,在首次安装应用时会弹 "是否允许使用数据",然而只是在国行手机上才会弹,所以这也是为什么只是部分用户反馈会弹.而且这个弹框只会弹一次,即使卸载再安装也不会再弹,除非把手机系统重置.所以为了解决这个问题,我们技术的同学反复牺牲手机重置来测试这个问题.有可

使用linux mint 安装无线网卡驱动

新买了个笔记本Thinkpad E440,用了两天发现无线网非常不稳定,有时候能搜到wifi却连不上,有时候连上了却连不上互联网,于是决定重新安装个网卡驱动. 首先看看自己显卡的型号: lspci 04:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 10) 05:00.0 Network control

电脑连接到手机并安装手机驱动usb-driver

设置真机开发环境需要执行下面几个步骤: 1.在应用的Manifest文件中声明应用是可调试的: 2.打开应用的调试支持: 对于通过Eclipse创建的应用,可以省略步骤2,因为在Eclipse IDE启动应用时,会自动打开应用的调试支持. 注意:在应用开发过程中,要在manifest文件中手动启用调试支持,最好在应用发布前关闭调试支持,因为一个已发布的应用是不应该可以被调试的. 3.打开手机的“USB调试”功能. 4.用USB线连接电脑与手机,首次连接需要安装手机驱动.可以选择本地安装,则在An

CentOS 5.10安装无线网卡驱动全面总结

转载请注明出处:http://blog.csdn.net/bettarwang/article/details/41908987 这几天因为想尝试一下CentOS,所以就在笔记本上安装了一个CentOS 5.10,但是安装完之后问题来了:它不像Ubuntu那样安装后之后就有相应的无线网卡驱动.所以如果要使用YUM安装或更新软件的话,第一件事就是安装无线网卡驱动.这中间的过程实在异常曲折,因为网络上很多人的文章是在已经能上网(比如通过有线上网)的前提下来安装无线网卡驱动,那自然简单许多.为了让后来

第四篇:韦东山教程需安装的驱动和软件

目录 一.eop烧写器驱动安装 二.oflash烧写软件安装 三.串口工具(MobaXterm_Portable_v10.4.exe) 四.uboo通过USB烧写程序需安装的驱动和软件 五.hex文件编辑器安装 一.eop烧写器驱动安装 ? 1)使用教程中制作好的驱动 ? 工具与驱动-->eop裸板烧写器-->驱动-->OpenJTAG ? OpenJTAG里存放的文件就是驱动文件了 ? 2)设备管理器收到选择路径安装驱动 ? 3)韦老师自制eop烧写器需要进行多次(3次)安装驱动,对应

centos6.5安装无线网卡驱动并配置wifi

1.驱动下载地址: RTL8188无线网卡驱动下载 链接:https://pan.baidu.com/s/1ms-EbQCDxa76jPhYUPmr9Q 密码:r2vu 2.安装步骤: [[email protected] ~]# yum -y install wireless-tools pciutils make gcc gcc-c++ kernel-devel [[email protected] ~]# yum update [[email protected] ~]# tar -zxv

ubuntu16.04+Titan Xp安装显卡驱动+Cuda9.0+cudnn+其他软件

硬件环境 ubuntu 16.04LTS + windows10 双系统 NVIDIA TiTan XP 显卡(12G) 软件环境 搜狗输入法 显卡驱动:LINUX X64 (AMD64/EM64T) DISPLAY DRIVER (418.56)  https://www.nvidia.cn/Download/index.aspx? CUDA:Cuda9.0  https://developer.nvidia.com/cuda-90-download-archive?target_os=Lin