EZ-USB FX2开发教程:配置与驱动编程详解

5星 · 超过95%的资源 需积分: 9 11 下载量 129 浏览量 更新于2024-09-20 收藏 635KB PDF 举报
EZ-USB FX2开发笔记是一份详细记录了EZ-USB FX2芯片在嵌入式系统开发中的关键步骤和技术细节的文档。该笔记由吉林大学电子学院DSP实验室的王琦导师撰写,程德福于2005年4月18日更新。笔记主要关注EZ-USB FX2的启动配置流程,这是一个关键环节,因为正确的配置对于任何基于FX2的USB设备与Windows操作系统(如Win32)的有效交互至关重要。 首先,开发过程涉及以下几个步骤: 1. **设备接入与上电**: 将EZ-USB FX2插入USB集线器并开机,这会触发USB系统软件的初始化过程。 2. **缺省配置信息读取**: 系统软件通过缺省管道获取FX2的PID(产品ID)和VID(供应商ID),这是驱动程序识别设备的重要标识符。 3. **驱动程序定位与加载**: PNP(Plug and Play)管理器依据PID和VID找到对应的INF(设备描述文件)并加载驱动程序1,这个阶段主要是为了下载固件程序。 4. **固件下载与设备重启**: 主机通过驱动程序1下载固件,使得FX2脱离复位,开始执行固件程序。 5. **设备重枚举**: 固件运行后,模拟断开与连接的动作,以便USB设备根据RENUM设置响应标准请求,进行重新枚举。 6. **再次配置**: 系统软件通过控制端点0读取配置信息,获取制造商自定义的PID和VID。 7. **驱动程序2加载与厂商配置**: 使用PID和VID定位并加载驱动程序2,这个驱动程序负责实现设备的特定功能。 8. **配置结束与应用程序交互**: 驱动程序加载完毕,设备配置过程完成,Win32应用程序可以与FX2设备进行数据交换。 9. **驱动程序编程思想与步骤**: 作者还分享了USB驱动程序的基本编程思路,包括创建URB(USB Request Block)、构造IRP(Interrupt Request Packet)、调用IoCallDriver函数以及与USB总线驱动程序交互的细节。 这份笔记不仅展示了硬件操作和驱动程序的底层原理,还突出了实际应用中可能遇到的关键步骤,对于开发者理解和调试基于EZ-USB FX2的USB设备具有很高的实用价值。