3 个版本
使用旧的 Rust 2015
0.1.11 | 2022年6月25日 |
---|---|
0.1.1 | 2021年10月13日 |
0.1.0 | 2021年10月13日 |
#3 in #screens
13KB
252 行代码(不含注释)
适用于 Rust 的 QwiicLCD I2C 屏幕库
描述
本库旨在通过 Linux 使用 I2C 控制 QwiicLCD 屏幕。其主要目标是 ARM 设备,如 RaspberryPi 或 FriendlyARM 的 NanoPi Neo。不过,在可以访问 I2C 总线的其他 Linux 发行版上应该也能工作。
目前我只有 20x4 LCD 用于测试。如果您遇到其他 Qwiic LCD 的问题,请提交问题或拉取请求。
如何使用库
将以下行添加到您的 cargo.toml
qwiic-lcd-rs = "0.1.11"
或者对于 master 分支上的最新提交使用
qwiic-lcd-rs = { git = "https://github.com/PixelCoda/QwiicLCD-Rust.git", version = "*" }
示例
extern crate qwiic_lcd_rs;
use qwiic_lcd_rs::*;
use std::thread;
use std::time::Duration;
fn main() {
// Default LCDSize is 4x20
let mut config = ScreenConfig::default();
// Uncomment and modify the values below to use different screen sizes
// config.max_rows = 2;
// config.max_columns = 16;
// Default Qwiic address is 0x72
let mut screen = Screen::new(config, "/dev/i2c-1", 0x72).expect("Could not init device");
// Set backlight to green and wait 1 second
screen.change_backlight(0, 255, 0).unwrap();
thread::sleep(Duration::from_secs(1));
// Set backlight to bright white
screen.change_backlight(255, 255, 255).unwrap();
// Clear the screen
screen.clear().unwrap();
// Move the cursor to 0,0
screen.move_cursor(0,0).unwrap();
// Print text
screen.print("Hello from Rust!").unwrap();
// Move to the next line
screen.move_cursor(1,0).unwrap();
// Print text
screen.print("It works! :)").unwrap();
}
参考
- https://github.com/sparkfun/Qwiic_SerLCD_Py/blob/main/qwiic_serlcd.py
- https://github.com/MicroJoe/rust-i2c-16x2/blob/master/src/lib.rs
许可证
Apache 2.0 许可下发布。
通过以下方式支持并关注我的工作
购买我的 NTFs
查看我的 Github
关注我的 Facebook 页面
订阅我的 Patreon
或者捐赠加密货币
- ADA: addr1qyp299a45tgvveh83tcxlf7ds3yaeh969yt3v882lvxfkkv4e0f46qvr4wzj8ty5c05jyffzq8a9pfwz9dl6m0raac7s4rac48
- ALGO: VQ5EK4GA3IUTGSPNGV64UANBUVFAIVBXVL5UUCNZSDH544XIMF7BAHEDM4
- ATOM: cosmos1wm7lummcealk0fxn3x9tm8hg7xsyuz06ul5fw9
- BTC: bc1qh5p3rff4vxnv23vg0hw8pf3gmz3qgc029cekxz
- ETH: 0x7A66beaebF7D0d17598d37525e63f524CfD23452
- ERC20: 0x7A66beaebF7D0d17598d37525e63f524CfD23452
- XLM: GCJAUMCO2L7PTYMXELQ6GHBTF25MCQKEBNSND2C4QMUPTSVCPEN3LCOG
- XTZ: tz1SgJppPn56whprsDDGcqR4fxqCr2PXvg1R
依赖项
~2MB
~42K SLoC