EZ-USB上位机驱动开发(一)

最近需要给Cypress的CY7C68013芯片写windows驱动。CY7C68013的驱动程序分两部分,一个固件驱动,一个usb驱动。首次连接EZ-USB设备,首先需要安装“固件下载驱动”,这个驱动的作用为:当EZ-USB硬件连接时,自动将固件程序烧写到CY7C68013的RAM中,并修改设备PID(本例中将100A修改为1003)。当PID被修改后,加载USB驱动(ezusb.sys或cyusb.sys),这个驱动使得上位机可以通过标准WinAPI对硬件进行操作。固件驱动需要根据需要自己编写,而USB驱动由Cypress提供。

一、固件驱动的生成

这里需要用到的软件包括Cypress的EZ-USB开发套件,Windows最新的DDK,VC6.0,以及keil uvision。

下载地址为:

Windows Driver Kit Version 7.1.0:

      http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=36a2630f-5d56-43b5-b996-7633f2ec14ff

CY3684 EZ-USB FX2LP Development Kit:

      http://www.cypress.com/?rID=14321

1. 编写固件程序

CY7C68013芯片中有一个8051单片机,固件程序烧写在在RAM上被单片机执行。利用keil uvision软件和Cypress提供的开发框架,根据要实现的功能,编译生成*.hex文件。这里为loader.hex。

2. Hex文件转换

利用hex2c软件将.hex文件转为.c文件。将hex2c.exe和loader.c拷贝到无中文目录下,在CMD下进入该目录,运行hex2c  loader.hex  loader.c即可,得到c文件。

 

3. ezloader文件准备

将ezloader文件夹下的文件全部拷贝到一个新的文件夹(或者只拷贝图片显示的部分,其中AFXRES.H可以在VC6.0的安装目录下找到),将第二步生成的loader.c文件内的数组内容代替掉firmware内的数组内容, 将sources文件用记事本打开将“TARGETNAME=ezloader”更改为你想生成的系统文件名“TARGETNAME=myLoader”。

修改TARGETLIBS的指向为DDK相应的lib文件。如DDK安装在D盘下,生成xp 32位驱动调用:

TARGETLIBS=D:\WinDDK\7600.16385.1\lib\wxp\i386\Usbd.lib

生成win7 64位驱动调用:

TARGETLIBS=D:\WinDDK\7600.16385.1\lib\win7\amd64\Usbd.lib

4. 利用WinDDK生成.sys文件

这里以xp 32位为例,示意生成.sys文件的过程。首先打开DDK下Build Environment。这里的check和free模式的区别就像debug和release模式类似,一般选择check。

打开后出现命令行,将目录进入ezloader一步中新建立的文件夹,运行build -c。若出现错误则需进行调试,若无错误,则生成.sys文件在lib\i386\目录下。

至此,固件驱动程序编写完毕。

转载于:https://www.cnblogs.com/fawkes/archive/2013/03/03/2941305.html

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值