2个版本
0.1.1 | 2020年12月22日 |
---|---|
0.1.0 | 2020年12月22日 |
#25 in #i2c-bus
23 每月下载次数
用于 usbsdmux
11KB
210 行
usb2642-i2c
使用linux sg3 SCSI接口与USB2642 I2C总线交互的Rust库。
使用方法
const I2C_ADDRESS: I2CAddress = 0x12;
let mut usb2642 = USB2642I2C::open("/dev/sg0").unwrap();
// Write-Only
let mut write_data = [0x01u8, 0x02u8];
usb2642.write(I2C_ADDRESS, &mut data).unwrap();
// Write-Read
let write_data = [register.to_u8().unwrap()];
let read_data = usb2642.write_read(I2C_ADDRESS, &data, 1).unwrap();
lib.rs
:
使用linux sg3 SCSI接口与USB2642 I2C总线交互的Rust库。
使用示例
use usb2642_i2c::{USB2642I2C, I2CAddress};
const I2C_ADDRESS: I2CAddress = 0x12;
if let Ok(mut usb2642) = USB2642I2C::open("/dev/sg0") {
// Write-Only
let mut write_data = [0x01, 0x02];
usb2642.write(I2C_ADDRESS, &mut write_data).unwrap();
// Write-Read
let write_data = [0x02];
let read_data = usb2642.write_read(I2C_ADDRESS, &write_data, 1).unwrap();
}
依赖项
~3.5MB
~84K SLoC