|
666黑币
各位大佬你们好:
受B站up主启发,想要制作一面LED点阵屏。我现有的硬件为Wemos D1 mini和ESP8266 NodeMCU开发板,WS2811灯带。我使用FastLED和Adafruit_NeoMatrix这两种库均成功创建了一个横向逆序的矩阵。
现在的需求是要把横向的每两个LED变成一组,当作一个像素点显示。
本人愚钝,尝试了多种方法,均未成功。
我想到了绘制图像时将X轴横向移动一位重复绘制,但是这种方式在显示文字时会有重叠,显示效果不佳。
并且在使用darwBitMap方法绘制图像时需要大量手动修改图像的x轴。
- void printText(String text, int x, int y)
- {
- matrix->setCursor(x, y);
- matrix->print(text);
- matrix->setCursor(x + 1, y);
- matrix->print(text);
- }
复制代码
我还尝试了Fast LED开发文档中的setRemapFunction,但是网上的示例都是关于创建异形屏幕的。
在一个QQ群中有个朋友发了一个截图给我,提到了可以在remap函数中将x和y的值向下取整。
可库中remap方法是需要返回一个16位参数的,我没想到要怎么一下返回两个坐标点,或者怎么把两个坐标放一起返回。
- void Framebuffer_GFX::setRemapFunction(uint16_t (*fn)(uint16_t, uint16_t)) {
- remapFn = fn;
- }
复制代码 研究了好久了,希望各位大佬们能指导一下,给点修改意见。
|
|