#blink #led #execution #light #notify #notifier #error

transition

允许使用 LED 闪烁可视化代码的执行和结果(1)

3 个版本

0.1.2 2023 年 9 月 14 日
0.1.1 2021 年 2 月 16 日
0.1.0 2020 年 10 月 24 日

可视化 中排名 #99

Download history 20/week @ 2024-04-13

每月下载量 83
cargo-blinc 中使用

MIT/Apache

3MB
445

transition

轻松实现 LED 通知

CI status badge Crates.io version Code coverage License

关于 | 演示 | 安装 | 许可 | 贡献

使用 🦀 构建

关于

此库允许您使用 blink(1) LED 通知器控制代码执行的状态。

您只需使用 transition 库包装要跟踪的代码

use std::error::Error;
use std::thread;
use std::time::Duration;
use transition::Transition;

fn main() -> Result<(), Box<dyn Error>> {
    // start transition
    let notification = Transition::default().start()?;

    // our example code
    thread::sleep(Duration::from_secs(5));

    // task finished with success
    notification.notify_success()?;

    Ok(())
}

它做什么?

  1. 调用 start() 后,blink(1) 开始以蓝色闪烁。这是在单独的线程中完成的。
  2. 然后执行我们的代码。
  3. 最后我们调用 notification.notify_success()(或 notification.notify_failure()),这将 LED 的颜色变为绿色(或红色)。

支持的颜色

use transition::Led;

let color = Led::Blue;
match color {
  Led::Red => println!("red"),
  Led::Green => println!("green"),
  Led::Blue => println!("blue"),
  Led::Yellow => println!("yellow"),
  Led::Orange => println!("orange"),
  Led::Pink => println!("pink"),
  Led::Cyan => println!("cyan"),
  Led::White => println!("white"),
  Led::Blank => println!("turn off the led"),
}

请参阅 示例 以获取更多信息

演示

Demo GIF

安装

将其作为依赖项添加到您的 Cargo.toml

[dependencies]
transition = "0.1.1"

其中一个依赖项需要安装 libusb-1.0。在 Linux 上,您可以通过运行

sudo apt install libusb-1.0

确保您有权访问 blink(1) 设备。请参阅 udev 规则 此处

许可

此项目根据您选择以下任一项进行许可:

任选其一。

贡献

除非您明确声明,否则您有意提交的任何贡献,根据 Apache-2.0 许可证定义,应按照上述方式双许可,而无需任何附加条款或条件。

依赖项