#joystick #evdev #raspberry-pi #hardware #sensehat

sensehat-stick

用于Raspberry Pi Sense HAT Joystick的Rust库

1个不稳定版本

使用旧的Rust 2015

0.1.0 2018年4月23日

#14#joystick

MIT 许可证

9KB
133

用于Raspberry Pi Sense HAT Joystick的Rust库。

crates.io docs

集成在Raspberry Pi Sense HAT上的摇杆与Linux系统良好集成。Sense HAT硬件提供了Linux内核中evdev事件设备接口的驱动程序。

因此,摇杆的evdev文件描述符可以读取由某人推动摇杆发出的事件。

此库为摇杆提供线程安全、强类型、高级API,将其视为使用evdev的任何其他输入设备。

使用方法

要使用此crate的默认功能,请将以下内容添加到您的Cargo.toml

[dependencies]
sensehat-stick = "0.1"

或者,手动指定功能:

[dependencies]
sensehat-stick = { version = "0.1", default-features = false, features = ["poll"] }

功能

default

默认情况下,包括linux-evdevpoll功能。

linux-evdev

default中。使用evdev接口。

poll

default中。通过实现mio::EventedJoyStick提供高效的轮询功能。

示例

//! Prints out the events received from the joystick, in a
//! blocking fashion.
extern crate sensehat_stick;

use sensehat_stick::JoyStick;

fn main() {
    let mut stick = JoyStick::open().unwrap();
    loop {
        // This call will block the current thread until
        // an event is triggered on the joystick.
        for ev in &stick.events().unwrap() {
            println!("{:?}", ev);
        }
    }
}

更多内容,请参阅单个示例

依赖项

~115–790KB
~13K SLoC