Ihållande Vision småsak. POV dekoration. (5 / 5 steg)
Steg 5: Koden
Den kod lite!
int led1 = 2;
int led2 = 3;
int led3 = 4;
int led4 = 5;
int led5 = 6;
int led6 = 7.
int led7 = 8;
int led8 = 9;
int grön = 14.
int blå = 15.
int rött = 16.
void setup()
{
pinMode (led1, produktionen);
pinMode (led2, produktionen);
pinMode (led3, produktionen);
pinMode (led4, produktionen);
pinMode (led5, produktionen);
pinMode (led6, produktionen);
pinMode (led7, produktionen);
pinMode (led8, produktionen);
pinMode (grön, utgång);
pinMode (blå, OUTPUT);
pinMode (röd, produktionen);
}
void loop()
{
pattern01(200);
}
void pattern01(int loops3)
{
för (int j = 0; j < loops3; j ++)
{
turnOnLEDs(0,0,0);
delay1();
turnOnLEDs(1,0,0);
delay1();
turnOnLEDs(2,0,0);
delay1();
turnOnLEDs(4,0,0);
delay1();
turnOnLEDs(8,0,0);
delay1();
turnOnLEDs(16,0,0);
delay1();
turnOnLEDs(32,0,0);
delay1();
turnOnLEDs(64,0,0);
delay1();
turnOnLEDs(128,0,0);
delay1();
}
}
void turnOnLEDs (int LEDValue, int LEDValue2, int LEDValue3)
{
för (int j = 1; j < 4; j ++)
{
om (LEDValue > 127)
{
digitalWrite (led8, låg);
LEDValue = (LEDValue - 128);
}
annat
{
digitalWrite (led8, hög);
}
om (LEDValue > 63)
{
digitalWrite (led7, låg);
LEDValue = (LEDValue - 64);
}
annat
{
digitalWrite (led7, hög);
}
om (LEDValue > 31)
{
digitalWrite (led6, låg);
LEDValue = LEDValue - 32.
}
annat
{
digitalWrite (led6, hög);
}
om (LEDValue > 15)
{
digitalWrite (led5, låg);
LEDValue = LEDValue - 16.
}
annat
{
digitalWrite (led5, hög);
}
om (LEDValue > 7)
{
digitalWrite (led4, låg);
LEDValue = LEDValue - 8.
}
annat
{
digitalWrite (led4, hög);
}
om (LEDValue > 3)
{
digitalWrite (led3, låg);
LEDValue = LEDValue - 4.
}
annat
{
digitalWrite (led3, hög);
}
om (LEDValue > 1)
{
digitalWrite (led2, låg);
LEDValue = LEDValue - 2.
}
annat
{
digitalWrite (led2, hög);
}
om (LEDValue > 0)
{
digitalWrite (led1, låg);
}
annat
{
digitalWrite (led1, hög);
}
om (j == 1)
{
digitalWrite (grön, hög);
digitalWrite (grön, låg);
LEDValue = LEDValue2;
}
annars om (j == 2)
{
digitalWrite (blå, hög);
digitalWrite (blå, låg);
LEDValue = LEDValue3;
}
annars om (j == 3)
{
digitalWrite (röd, hög);
digitalWrite (röd, låg);
}
}
}
void delay1()
{
Delay(1);
}