我已经使用Arduino,移位寄存器和TLC5940s制作了24 x 15 LED矩阵。寻找不需要阵列的炫酷LED图形例程
Arduino Uno只有32 KB的内存,因此图形不会事先存储到阵列中。相反,我使用数学方程编写算法来生成艺术动画。用于彩虹正弦波
实施例的代码是:
for (int iterations = 0; iterations < times; iterations++)
{
val += PI/500;
for (int col = 0; col < NUM_COLS; col++)
{
digitalWrite(layerLatchPin, LOW);
shiftOut(layerDataPin, layerClockPin, MSBFIRST, colMasks[col] >> 16);
shiftOut(layerDataPin, layerClockPin, MSBFIRST, colMasks[col] >> 8);
shiftOut(layerDataPin, layerClockPin, MSBFIRST, colMasks[col]);
digitalWrite(layerLatchPin, HIGH);
Tlc.clear();
int rainbow1 = 7 + 7*sin(2*PI*col/NUM_COLS_TOTAL + val);
setRainbowSinkValue(rainbow1, k);
Tlc.update();
}
}
凡setRainbowSinkValue设定从1 LED以15到一定的颜色之一,val
偏移波向右每次迭代。
因此,我正在寻找这样简单的图形例程,以获得很酷的动画,而不必将所有内容都存储在阵列中,因为15 x 24 x RGB快速使用了所有32 KB的RAM。
我会尝试获得Arduino Mega,但让我们假设现在不是一个选项。
我该怎么办?
我在沙漠中的汽车电池上运行它,所以很不幸我不能使用电脑。但是,如果我想出特别好的东西,我会在某处发布代码。 – djb 2013-04-04 13:56:20
燃烧的男人风格? – zaf 2013-04-04 14:09:32
确实,Afrika Burn :)这就像燃烧的人,但尺寸的1/10 – djb 2013-04-04 14:35:06