1 个不稳定版本

0.1.0 2023年11月7日

#1417 in 硬件支持

MIT 许可证

18KB
489

🍓 USBHID

Rust版本的USB HID协议库。基于zero-hid

🐛 兼容性

兼容 端口
⚠️ ESP32
⚠️ 树莓派Pico
树莓派Zero 2w 🎩

说明: ✅ 兼容,❌ 不兼容,⚠️ 未测试。 端口: 🎩 USB帽,📡 USB端口。

⚡ 功能

  • 键盘。
    • 按键按下。
    • 按键释放。
    • 输入字符串。
    • 修饰键。
  • 鼠标。
    • 移动到。
    • 相对移动。
    • 左键点击。
    • 右键点击。
    • 中键点击。
    • 滚轮。
  • 存储设备。
    • 写入文件。
    • 读取文件。
    • 删除文件。
  • 以太网。
    • 发送数据包。
    • 接收数据包。
  • 游戏手柄。
    • 按键按下。
    • 按键释放。
    • 摇杆移动。
  • 打印机。
    • 打印文本。
    • 打印图片。

⚙ 设置

在开始使用此库之前,您需要在您的板上安装虚拟USB HID设备。

# Clone the repository
git clone https://github.com/sammwyy/usbhid.git

# Go to the installer directory
cd usbhid/hid

# Install the virtual device
chmod +x install.sh && sudo ./install.sh

📚 使用方法

🖱️ 键盘

use usbhid::{keyboard:Keyboard, device::Device};

fn main() {
    // Install your virtual device before (See documentation)
    let mut device = Device::new("/dev/hidg0");
    let mut keyboard = Keyboard::new(device, "us");

    keyboard.type_string("Hello World!");
}

🖱️ 鼠标

use usbhid::{mouse:Mouse, device::Device};

fn main() {
    // Install your virtual device before (See documentation)
    let mut device = Device::new("/dev/hidg1");
    let mut mouse = Mouse::new(device);

    mouse.move_to(100, 100);
    mouse.left_click();
}

🤝 贡献

欢迎贡献、问题反馈和功能请求!请自由查看问题页面

❤️ 展示您的支持

如果此项目对您有帮助,请给一个⭐️!或者在我的Ko-fi上买我一杯咖啡🙌

📝 许可证

版权所有 © 2023 Sammwy。本项目采用MIT许可证。

依赖项

~0.8–1.7MB
~36K SLoC