4个版本 (2个重大更新)
0.3.0 | 2022年11月14日 |
---|---|
0.2.0 | 2022年9月13日 |
0.1.1 | 2022年9月3日 |
0.1.0 | 2022年9月3日 |
在 硬件支持 中排名 1629
18KB
223 行
sharp-memory-display
摘要
sharp-memory-display
为 SHARP 内存像素显示屏(如LS027B7DH01和类似型号)提供嵌入式图形驱动程序。该库依赖于 embedded-hal
并且兼容 #![no_std]
。
使用方法
只需在Cargo清单中依赖该库,通过 features
指定您的显示屏型号
[dependencies]
sharp-memory-display = { version: "0.1", features: ["ls027b7dh01"] }
现在可以将该库引入作用域
use sharp_memory_display::*
然后简单地从SPI结构体、芯片选择引脚和显示屏引脚构建一个新的 MemoryDisplay
,如下所示
let cs = pins.pa14.into_push_pull_output();
let disp = pins.pa16.into_push_pull_output();
let spi = spi::Config::new(&peripherals.MCLK, spi_sercom, pads, freq)
.baud(Hertz(500_000u32))
.spi_mode(sharp_memory_display::MODE)
.enable();
// Create display
let mut disp = MemoryDisplay::new(spi, cs, disp)
disp.enable();
disp.clear();
请注意您显示屏支持的SPI波特率上限。您可以在相应的 数据手册 中找到它。
现在您可以将显示屏用作 DrawTarget
。要写入屏幕上的更改,必须调用 flush_buffer
函数。请参阅文档以了解使用说明。
注意:您必须通过 features
指定您的显示屏。目前支持的显示屏型号包括
ls027b7dh01
(已测试)ls013b7dh05
ls012b7dd06
ls010b7dh04
ls011b7dh03
(已测试)
可以轻松添加对其他显示屏型号的支持。欢迎合并请求 :)
错误报告和功能请求
欢迎为该项目做出贡献。您可以在sourcehut找到问题跟踪器和代码仓库。您也可以通过电子邮件发送错误报告或功能请求至~doesnotcompete/[email protected]。
依赖关系
~5MB
~82K SLoC