Arduino火焰效果LED的制作

电子说

1.3w人已加入

描述

步骤1:程序

这是一个非常简单的程序,说过……我不是一个很好的程序员,所以我相信会有更好的方法!但我了解它并且有效。因此,在包含adafruit库之后,我们然后定义要发送数据的引脚,并还定义字符串中LED的数量,在这种情况下为28。

接下来,我使用的值红色,绿色和蓝色LED为我提供了很好的火焰色,这些组合列在pattern01字符串中。第一个数字是红色,第二个是绿色,最后是蓝色,因此对于第一种颜色,您可以看到它是60(红色),35(绿色)和2(蓝色),您必须包括所有即使值为零也可以显示颜色。字符串中有22组值,共66个数字。要选择一种颜色,我选择一个最大为22的随机数,将数字乘以3,然后减去2。例如,随机数可能是9,需要反映130,20,0的值,即在弦的第24、25和26位。因此9 * 3 = 27减去2 =25。然后,当我们设置随机像素时,我们使用以下行

Strip.setPixelColor(randomPixel,(pattern01 [randomColour – 1]),(pattern01 [randomColour]),pattern01 [ randomColour + 1]));;

这可能不是最好的方法,但它可以工作。在循环中,我们选择一个随机像素和一个随机颜色并重复8次,然后选择一个随机像素并将其设置为off并重复5次,最后,我们使该条使用该条显示新的颜色。 ()命令。

此循环永久运行,一开始只有一点延迟,以产生更好的射击效果。您可以在任何一个循环中使用不同的颜色,被打开的像素数和被关闭的像素数。

#include

#define PIN 2

Adafruit_NeoPixel strip = Adafruit_NeoPixel(28, PIN, NEO_GRB + NEO_KHZ800);

//

int pattern01[] = {60,35,2,40,5,0,30,3,0,250,170,7,60,30,0,80,50,5,120,20,0,140,40,0,130,20,0,50,40,0,100,0,0,20,0,0,60,5,0,100,10,0,80,50,5,60,36,0,250,170,7,15,2,0,5,1,0,10,5,0,12,2,0,10,0,0};

int randomColour = 0;

int randomPixel = 0;

void setup()

{

strip.begin();

strip.show(); // Initialize all pixels to ‘off’

}

void loop()

{

randomSeed(analogRead(3));

delay(80);

for (int x = 0; x 》 8; x++)

{

randomPixel = random(0,strip.numPixels());

getArandomColour();

strip.setPixelColor(randomPixel, (pattern01[randomColour -1]),(pattern01[randomColour]),(pattern01[randomColour +1]));

}

for (int x = 0; x 》; 5; x++)

{

randomPixel = random(0,strip.numPixels());

strip.setPixelColor(randomPixel,0,0,0);

}

strip.show();

}

void getArandomColour()

{

randomColour = random(1,22);

randomColour = randomColour * 3;

randomColour = randomColour - 2;

}

步骤2:洞穴

这可指导的是关于Arduino火,而不是真正的洞穴构造,但是我会快速进行构建。洞穴是用Mod Roc(石膏绷带)制成的。为了获得形状,我们使用了一个纸板箱和内部垂褶的塑料花园网。用衣扣将蚊帐固定在适当的位置,同时使用Mod Roc在内部围网。经过几次网帐后,我们让其干燥过夜。第二天,我们能够将Mod Roc从包装箱中取出,并以正确的方式打开,然后拉下塑料网。然后用两层白色薄纸覆盖洞穴,以达到更好的效果。最终,托马斯在外面画了这个洞穴,在里面画了洞穴的画。
      责任编辑:wv 

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分