1个不稳定版本
使用旧的Rust 2015
0.3.1 | 2020年6月30日 |
---|
#1834 在 硬件支持
155KB
3K SLoC
Libusb
此包提供了对原生 libusb
库的安全包装。它应用RAII模式和Rust生命周期来确保所有 libusb
功能的安全性。RAII模式确保在不再需要时释放所有获取的资源,而Rust生命周期确保以正确的顺序释放资源。
依赖项
为了使用 libusb
包,您必须安装原生 libusb
库,使其可通过 pkg-config
找到。
原生 libusb
库支持的系统也支持 libusb
包。它已在Linux、OS X和Windows上进行了测试。
交叉编译
当交叉编译到外国目标时,可以使用 libusb
包。如何交叉编译 libusb
的详细信息请参阅 libusb-sys
包的README。
使用方法
将 libusb
添加到 Cargo.toml
中的依赖项
[dependencies]
libusb = "0.3"
导入 libusb
包。几乎所有 libusb
功能的起点是创建一个上下文对象。使用上下文对象,您可以列出设备、读取它们的描述符、打开它们并与它们的端点通信
extern crate libusb;
fn main() {
let mut context = libusb::Context::new().unwrap();
for mut device in context.devices().unwrap().iter() {
let device_desc = device.device_descriptor().unwrap();
println!("Bus {:03} Device {:03} ID {:04x}:{:04x}",
device.bus_number(),
device.address(),
device_desc.vendor_id(),
device_desc.product_id());
}
}
贡献者
许可证
版权所有 © 2015 David Cuddeback
根据 MIT 许可证分发。
依赖项
~2MB
~47K SLoC