Lijst van minimale onderdelen:
(1) de Arduino Duemilanove (of gelijkwaardig / compatibel)
(8) LED's van uw keuze. Ik gebruikte 5mm T1-3/4 120-180 graden water schoon 1500mcd pure groene LCD's.
(8) 100 ohm 1/8 watt (minimaal) weerstanden. Ik gebruikte (4) 330 ohm 1/4 watt, en (4) 450 ohm 1/4 watt, gewoon omdat dat is wat ik had liggen. Ik zie geen verschil in helderheid tussen de twee.
(1) 10 k potentiometer van uw keuze.
(1) project breadboard, solderless "push-in:" stijl.
(11) 4 inch lengtes van hookup draad , bij voorkeur vaste kern met geconserveerde tips. Gestrande draad zal werken, maar is net zo vervelend. Ik gebruikte de voorgemonteerde breadboardinging draden die kwam in een kit.
Ik heb niet schrijven de schets persoonlijk, maar eerder bewerkt iemand anders is aan mijn behoeften. Het biedt de mogelijkheid tot het toevoegen van een knop, die ik niet gebruik.
De schets voor de Arduino is als volgt:
Const int buttonPin = 2;
Const int ledPin1 = 13;
int buttonState = 0;
int leds [] = {3, 4, 6, 7, 8, 9, 10, 11};
#define NUMBER_OF_LEDS (sizeof(leds)/sizeof(int))
Booleaanse larson [] [NUMBER_OF_LEDS] = {}
{HOOG, LAAG, LAAG, LAAG, LAAG, LAAG, LAAG, LAAG},
{LAAG, HOOG, LAAG, LAAG, LAAG, LAAG, LAAG, LAAG},
{LAAG, LAAG, HOOG, LAAG, LAAG, LAAG, LAAG, LAAG},
{LAAG, LAAG, LAAG, HOOG, LAAG, LAAG, LAAG, LAAG},
{LAAG, LAAG, LAAG, LAAG, HOOG, LAAG, LAAG, LAAG},
{LAAG, LAAG, LAAG, LAAG, LAAG, HOOG, LAAG, LAAG},
{LAAG, LAAG, LAAG, LAAG, LAAG, LAAG, HOOG, LAAG},
{LAAG, LAAG, LAAG, LAAG, LAAG, LAAG, LAAG, HOOG},
{LAAG, LAAG, LAAG, LAAG, LAAG, LAAG, HOOG, LAAG},
{LAAG, LAAG, LAAG, LAAG, LAAG, HOOG, LAAG, LAAG},
{LAAG, LAAG, LAAG, LAAG, HOOG, LAAG, LAAG, LAAG},
{LAAG, LAAG, LAAG, HOOG, LAAG, LAAG, LAAG, LAAG},
{LAAG, LAAG, HOOG, LAAG, LAAG, LAAG, LAAG, LAAG},
{LAAG, HOOG, LAAG, LAAG, LAAG, LAAG, LAAG, LAAG},
};
#define FRAMES (sizeof(larson)/(sizeof(larson[0])))
int sensorPin = 0;
VOID Setup {}
pinMode (ledPin1, OUTPUT);
pinMode (buttonPin, INPUT);
voor (int geleid = 0; leidde < NUMBER_OF_LEDS; led ++) {}
pinMode (leds [led], OUTPUT);
}
}
void loop {}
buttonState = digitalRead(buttonPin);
Als (buttonState == HIGH) {}
digitalWrite (ledPin1, hoge);
}
else {}
lange tijd = millis();
voor (int frame = 0; frame < FRAMES; frame ++) {}
voor (int geleid = 0; leidde < NUMBER_OF_LEDS; led ++) {}
digitalWrite (leds [led], larson[frame][led]);
}
int sensorValue = map(analogRead(sensorPin), 0, 1023, 0, 1000);
terwijl (sensorValue > = (millis() - tijd)) {}
sensorValue = analogRead(sensorPin);
}
tijd = millis();
}
}
}