2个版本
0.1.1 | 2019年12月21日 |
---|---|
0.1.0 | 2019年12月4日 |
#54 in #embedded-graphics
265KB
249 行
HUB75
使用embedded-graphics
和embedded-hal
在Rust中控制以Hub75接口著称的廉价RGB矩阵显示器的库。
目前仅支持64x32分辨率的面板(已在"P3-(2121)64*32-16S-D10"面板上测试)。
有关接线说明,请参阅rpi-rgb-led-matrix。
引脚分配
问题解决
-
闪烁
减少颜色输出的位数,更频繁地调用
output
方法或使用更快的微控制器 -
某些颜色显示不正确或根本不显示
如果伽玛校正后的RGB组件之一小于提供的位数,则不会显示。例如,使用3位颜色时,值小于124将导致不显示(因为此时伽玛校正到31,小于1<<5)。
提高性能
有许多方法可以进一步提高性能,甚至能够实现8位颜色深度,不幸的是,这似乎无法通过当前的嵌入式hal抽象实现。
-
使用二进制码调制,并使用单次定时器调整oe时间
有关二进制码调制的进一步解释,请参阅使用二进制码调制的LED调光。
-
预渲染数据,以便更快地移位数据
其想法是将GPIO状态预先计算,然后仅将其复制到GPIO输出寄存器。为此,r1、r2、g1、g2、b1、b2都需要连接到相同的端口。结合二进制码调制,这将占用更多的RAM,但速度会更快。然后可以替换输出循环为DMA,这将极大地降低CPU使用率,并实现非常高的刷新率。
许可证
根据您的选择,许可如下
- Apache许可证第2版(《LICENSE-APACHE》或https://apache.ac.cn/licenses/LICENSE-2.0》)
- MIT许可证(《LICENSE-MIT》或http://opensource.org/licenses/MIT》)
。
贡献
除非您明确声明,否则根据Apache-2.0许可证定义,您有意提交的任何旨在包含在作品中的贡献,均应按上述方式双许可,不附加任何额外条款或条件。
依赖项
~2.5MB
~20K SLoC