注:转载请注明出处
作者:雪天鱼,,
记录下学习过程,个人水平有限,可能理解有误,后续若发现错误之处,会及时更新。
Version | Date |
---|---|
1.0 | 2021.12.24 |
FTDI 为其驱动程序提供 DLL 和虚拟 COM 端口 (VCP) 应用程序接口,现主要学习 FTD2XX 驱动。
一、 简介
FTDI的 D2XX 驱动下载链接:D2XX
可以选择直接使用 CDM 驱动安装程序进行安装,CDM驱动包含了D2XX 和 VCP两种驱动。
- VCP:在系统设备管理器中显示为COM端口,提供了交互API。
- D2XX:通过FTD2XX.DLL实现,提供 COM端口 API不具备的一些功能,例如将设备设置为不同的模式或将数据写入设备EEPROM。
其中 D2XX 是针对FTDI设备设计的专用驱动,不支持其他设备。
windows下CDM驱动架构如图1所示:
可以看到D2XX驱动和VCP驱动都是在 USB Host Controller 驱动基础上建立的。
二、常用的D2XX 函数
D2XX驱动程序能够通过DLL直接访问USB设备。 应用程序可以通过一系列的DLL函数调用访问USB设备。D2XX 驱动的函数库提供了很多API,其中常用的函数如图2所示:
这些函数基本能满足绝大部分的用户需求了。
简单例举几个函数的功能,不做深入研究,为后续写USB设备驱动程序做准备:
- FT_SetVIDPID
- FT_GetVIDPID
- FT_CreateDeviceInfoList
参考文献
【1】D2XX Programmer’s Guide