5个版本 (3个重大更新)
0.4.1 | 2024年7月24日 |
---|---|
0.4.0 | 2024年6月19日 |
0.3.0 | 2024年6月5日 |
0.2.0 | 2024年2月1日 |
0.1.0 | 2023年7月20日 |
#270 在 嵌入式开发
每月162次下载
65KB
1.5K SLoC
IT8951电子墨水显示屏驱动程序
此crate主要针对使用spi的waveshare 7.8英寸电子墨水显示屏进行开发: https://www.waveshare.com/wiki/7.8inch_e-Paper_HAT 驱动程序使用嵌入式_hal traits作为硬件抽象层。此驱动程序可以与嵌入式图形trait一起使用,目前仅支持Gray4(16位灰度)。
详细信息
- IT8951具有图像加载引擎,可以在将其存储在本地帧缓冲区之前转换像素数据。
- 可以在不使用图像加载引擎的情况下直接读取和写入内存
- 重要 数据必须始终以16位字对齐!
- 此crate使用alloc功能在堆上分配内存
- 从控制器读取固件和LUT版本字符串
- 为将像素写入控制器而创建暂存缓冲区。缓冲区按需分配,但每次只分配一个缓冲区,大小最多为1kByte。
- 读取控制器内存时,创建一个与请求数据大小相同的暂存缓冲区。
待办事项
- 支持与嵌入式-graphics一起使用的Gray2和Gray8
- 支持显示引擎填充区域
- 支持显示引擎每像素1位模式
- 支持静态缓冲区分配
变更日志
0.4.1
- 修复了fill_solid在零大小区域中的除以零错误
- fill_solid正确跳过限制区域到显示边界
0.4.0
- 公共API
new
期望一个Config
参数来设置超时和缓冲区大小。默认实现使用15秒的超时和1024字节的缓冲区大小。 - 缓冲区数据类型从u16更改为u8
- 公共API:
load_image_area
、load_image
和memory_burst_write
函数现在使用u8作为缓冲区类型 - 内存使用减少了一半(最大1kByte,而不是2kByte)
- 公共API:
- 行为 调用
init
现在不再清除eink显示屏。相反,直接调用reset
。
依赖项
~540KB