1 个不稳定版本
0.0.1 | 2023年5月30日 |
---|
#23 in #ftdi
6KB
libftd3xx
Rust 对 FTDI D3XX 驱动程序的封装。
该库将 libftd3xx-ffi 的 C 绑定库封装为 Rust 安全封装。
使用方法
只需将此包作为依赖项添加到您的 Cargo.toml
文件中。
[dependencies.libftd3xx]
version = "0.0.1"
# statically link the vendor library, defaults to dynamic if not set
# this will make things "just work" on Linux and Windows
features = ["static"]
这是一个基本的示例,以帮助您入门。请参阅源代码或文档以获取更多示例。
use libftd3xx::{Ftdi, FtdiCommon};
let mut ft = Ftdi::new()?;
let info = ft.device_info()?;
println!("Device information: {:?}", info);
此包只是 FTD3XX 驱动程序的封装;使用 embedded-hal
特性的 I2C、SPI 和 GPIO 示例可以在 ftdi-embedded-hal
中找到。
udev 规则
要在 Linux 上以普通用户身份访问 FTDI USB 设备,您需要更新 udev 规则。
创建一个名为 /etc/udev/rules.d/99-ftdi.rules
的文件,并包含以下内容:
SUBSYSTEM=="usb", ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6001", MODE="0666"
SUBSYSTEM=="usb", ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6010", MODE="0666"
SUBSYSTEM=="usb", ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6011", MODE="0666"
SUBSYSTEM=="usb", ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6014", MODE="0666"
SUBSYSTEM=="usb", ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6015", MODE="0666"
然后,重新加载规则
sudo udevadm control --reload-rules
sudo udevadm trigger
链接
默认情况下,此包将使用动态链接到供应商库。使用 static
功能标志以启用静态链接。
Linux 上的动态链接
系统上必须存在共享对象 libftd3xx.so
。有关说明,请参阅 FTDI 驱动程序 Linux 安装指南。
Windows 上的动态链接
FTD3XX DLL 必须存在于您的系统 PATH 中。安装此 DLL 最简单的方法是使用供应商提供的 [设置可执行文件]。
Linux 或 Windows 上的静态链接
不需要特殊考虑,静态库随 libftd3xx-ffi 包一起分发,并已获得 FTDI 的许可。
参考
故障排除
Linux 上的未知设备
删除 VCP FTDI 驱动程序。
sudo rmmod ftdi_sio
sudo rmmod usbserial
有关更多详细信息,请参阅 FTDI 驱动程序 Linux 安装指南。
依赖项
~36MB