1个不稳定版本
0.1.0 | 2021年11月1日 |
---|
#1778 在 嵌入式开发
25KB
226 行
Rust Akafugu TWIDisplay驱动程序
基于embedded-hal
traits的平台无关Rust驱动程序,用于Akafugu TWIDisplay。
此驱动程序允许您
- 显示单个数字或字符,也可以在选定的位置显示
- 显示文本,尽管某些字符可能不可用(请参阅显示文档)
- 清除显示
- 显示当前的I2C地址
- 更改I2C地址(实验功能)
- 以HH.MM格式显示时间
- 显示温度或湿度,带有可设置的上下限阈值
待办事项
- 与其他MCU/Raspberry Pi进行测试
- 添加一个良好的示例
- 读取固件版本和数字数量(诊断功能)
- 在选定的位置显示点
设备
该TWI 7段显示屏是一个易于使用的4位7段显示屏,使用TWI(I2C兼容)协议进行控制。它基于ATMega4313 MCU,作为外围I2C设备。
用法
要使用此驱动程序,请导入此crate和embedded_hal
实现,然后实例化设备。
请在此存储库中找到使用硬件的附加示例:示例
#![no_main]
#![no_std]
use akafugu_twidisplay::*:
#[entry]
fn main() -> ! {
// initialize all the necessary peripherals
// create an instance of I2C bus
let mut akafugu = TWIDisplay::new(i2c, DEFAULT_ADDRESS);
akafugu.clear_display().unwrap();
akafugu.set_brightness(127).unwrap();
loop {
let (hours, minutes, seconds) = some_rtc_reading();
// display time in HH.MM format, dot is on when number of seconds is even
if seconds % 2 == 0 {
akafugu.display_time(hours, minutes, true).unwrap();
} else {
akafugu.display_time(hours, minutes, false).unwrap();
}
}
}
支持
有关问题、问题、功能请求和其他更改,请在github项目中提出问题。
许可
根据您的选择,许可如下
- Apache License,版本2.0 (LICENSE-APACHE 或 http://apache.ac.cn/licenses/LICENSE-2.0)
- MIT许可 (LICENSE-MIT 或 http://opensource.org/licenses/MIT)
贡献
除非您明确声明,否则您提交给工作的任何贡献,根据Apache-2.0许可证的定义,都应按上述方式双重许可,不附加任何额外条款或条件。
依赖关系
~71KB