gpt4 book ai didi

graphics - 寻找不需要阵列的酷 LED 图形例程

转载 作者:行者123 更新时间:2023-12-05 00:30:50 26 4
gpt4 key购买 nike

我使用 Arduino、移位寄存器和 TLC5940s 制作了一个 24 x 15 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 将 LED 之一从 1 到 15 设置为某种颜色,以及 val每次迭代都将波形向右移动。

因此,我正在寻找像这样的简单图形例程,以便获得酷炫的动画,而不必将所有内容存储在数组中,因为 15 x 24 x RGB 很快就用完了所有 32 KB 的 RAM。

我会尝试购买一个 Arduino Mega,但让我们假设现在这不是一个选择。

我该怎么做?

最佳答案

如果您开始叠加 sin 或 cos 等简单函数,您可以获得许多效果。 This guy创造了“等 ionic ”效果,我认为这总是一件很酷的事情:)

另一种方法是使用噪声函数来计算像素的颜色。如果你在谷歌上搜索“Arduino Perlin 噪声”,你会得到很多例子(根据你的 Arduino 型号,你可能无法获得高帧率,因为 Perlin 噪声需要一些 CPU 能力)。

关于graphics - 寻找不需要阵列的酷 LED 图形例程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15811175/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com