所以我在Processing中编写了一个脚本,它可以将任何给定图像的每个像素的HEX值输出到数组中。我试图让这个FastLED库读取数组和我得到这么多不同的错误。我试着将HEX的字符串改为FF和0x头的字符串。似乎没有任何工作。现在它一直说十六进制值没有在范围内声明。如果我将字符串更改为字符串,我会收到一个函数错误,告诉我他们不是叮咬。我在智慧结束。这是代码。用Arduino在LED矩阵上显示HEX值数组
#include <FastLED.h>
#include <LEDMatrix.h>
#include <string.h>
// Change the next 6 defines to match your matrix type and size
#define LED_PIN 7
#define COLOR_ORDER GRB
#define CHIPSET WS2811
#define MATRIX_WIDTH 32 // Set this negative if physical led 0 is opposite to where you want logical 0
#define MATRIX_HEIGHT 8 // Set this negative if physical led 0 is opposite to where you want logical 0
#define MATRIX_TYPE VERTICAL_ZIGZAG_MATRIX // See top of LEDMatrix.h for matrix wiring types
cLEDMatrix<MATRIX_WIDTH, MATRIX_HEIGHT, MATRIX_TYPE> leds;
char pixs [] = {{FFCE2131},
{FFCE1929},
{FFCE1929},
{FFCE1929},
{FFCE1929},
{FFCE1929},
{FFCE1929},
{FFCE2131},
{FFC50821},
{FFC50821},
{FFC50821},
{FFC50821},
{FFC50821},
{FFC50821},
{FFC50821},
{FFC50821},
{FFCE1929},
{FFC50821},
{FFC50821},
{FFC50821},
{FFC50821},
{FFC50821},
{FFC50821},
{FFCE1929},
{FFCE1929},
{FFC50821},
{FFC50821},
{FFC50821},
{FFC50821},
{FFC50821},
{FFC50821},
{FFCE1929},
{FFCE1929},
{FFC50821},
{FFC50821},
{FFC50821},
{FFC50821},
{FFC50821},
{FFC50821},
{FFCE1929},
{FFCE1929},
{FFC50821},
{FFC50821},
{FFC50821},
{FFC50821},
{FFC50821},
{FFC50821},
{FFCE1929},
{FFCE1929}};
void setup()
{
FastLED.addLeds<CHIPSET, LED_PIN, COLOR_ORDER>(leds[0], leds.Size());
FastLED.setBrightness(15);
FastLED.clear(true);
delay(500);
FastLED.clear(true);
Serial.begin(9600);
}
void loop() {
leds(0,0) = 0xCE2131;
leds(31,0) = CRGB::White;
leds(0,7) = CRGB::Green;
leds(31,7) = CRGB::Yellow;
FastLED.show();
delay(2000);
FastLED.clear(true);
delay(1000);
int i;
for (i = 0; i < length.pixs ; i ++){
leds(0,0) = pixs[i];
FastLED.show();
}
}
欢迎来到Stack Overflow。请尽快阅读[关于]和[问]页面。通过用C和C++标签标记您的问题,您正在进入微妙的领域。选择你想要使用的语言,并坚持使用该标签 - C或C++,但不能同时使用。适用于一种语言的答案通常不适用于另一种语言。 –
删除C语言标签。 C语言不支持模板,例如'cLEDMatrix leds;'。尝试使用C语言编译器进行编译,该语句应该会产生一些错误。同样使用范围解析运算符'::'。 –
请注意,行char'[] = {{FFCE2131},'显示多个问题。您有一个一维数组,但双花括号只能用于更复杂的结构(二维数组或实际的C结构)。值“FFCE2131”是一个不是十六进制数字的标识符。你需要'0xFFCE2131'来使它成为十六进制。通常不能将4个字节的数据放入单个字节对象中。 –