KONTROLL 8 LED använder ARDUINO:- (3 / 3 steg)
Steg 3: Kodning:-
LED Pin variabler
int ledPins [] = {2,3,4,5,6,7,8,9}. En matris att hålla PIN-koden varje LED är ansluten till / / dvs LED #0 är ansluten till stift 2, LED #1, 3 och så vidare //to ta itu med en rad användning ledPins [0] Detta skulle lika 2 //and ledPins [7] skulle motsvara 9
/ * * setup() - funktionen körs en gång när du slår din Arduino på * vi tre kontroll stiften till utgångarna * /
void setup() {
Ange varje pin ansluten till ledde till produktionen läge (dra hög (på) eller låg (off)
för (int jag = 0; jag < 8; i ++) {
Detta är en loop och upprepar åtta gånger
pinMode(ledPins[i],OUTPUT); Vi används för att ange varje LED stift till utgång} //the kod ersätter understiger
/* *
loop() - denna funktion startar när installationen är klar och sedan upprepa * vi anropa en funktion som kallas oneAfterAnother(). Om du vill ha ett annorlunda beteende * avkommentera (ta bort två snedstreck) en av de andra raderna * /
void loop() / / kör om och om igen {
oneAfterAnotherNoLoop(); Detta kommer att vända på varje LED ett sedan stänga varje}
void oneAfterAnotherNoLoop()
{int fördröjningstid = 100; //the tid (i millisekunder) ska gå mellan lysdioder //make mindre för snabbare växling och större för långsammare
digitalWrite (ledPins [0], hög); Vänder på LED #0 (ansluten till stift 2)
Delay(delayTime); Waits fördröjningstid millisekunder
digitalWrite (ledPins [1], hög); Vänder på LED #1 (ansluten till stift 3)
Delay(delayTime); Waits fördröjningstid millisekunder
digitalWrite (ledPins [2], hög); Vänder på LED #2 (ansluten till stift 4)
Delay(delayTime); Waits fördröjningstid millisekunder
digitalWrite (ledPins [3], hög); Tänds lysdiod #3 (ansluten till stift 5)
Delay(delayTime); Waits fördröjningstid millisekunder
digitalWrite (ledPins [4], hög); Vänder på LED #4 (ansluten till stift 6)
Delay(delayTime); Waits fördröjningstid millisekunder
digitalWrite (ledPins [5], hög); Vänder på LED #5 (ansluten till stift 7)
Delay(delayTime); Waits fördröjningstid millisekunder
digitalWrite (ledPins [6], hög); Vänder på LED #6 (ansluten till stift 8)
Delay(delayTime); Waits fördröjningstid millisekunder
digitalWrite (ledPins [7], hög); Vänder på LED #7 (ansluten till pin 9)
Delay(delayTime); Waits fördröjningstid millisekunder
Släcks varje LED
digitalWrite (ledPins [7], låg); Vänder på LED #0 (ansluten till stift 2)
Delay(delayTime); Waits
Fördröjningstid millisekunder
digitalWrite (ledPins [6], låg); Vänder på LED #1 (ansluten till stift 3)
Delay(delayTime); Waits fördröjningstid millisekunder
digitalWrite (ledPins [5], låg); Vänder på LED #2 (ansluten till stift 4)
Delay(delayTime); Waits fördröjningstid millisekunder
digitalWrite (ledPins [4], låg); Tänds lysdiod #3 (ansluten till stift 5)
Delay(delayTime); Waits fördröjningstid millisekunder
digitalWrite (ledPins [3], låg); Vänder på LED #4 (ansluten till stift 6)
Delay(delayTime); Waits fördröjningstid millisekunder
digitalWrite (ledPins [2], låg); Vänder på LED #5 (ansluten till stift 7)
Delay(delayTime); Waits fördröjningstid millisekunder
digitalWrite (ledPins [1], låg); Vänder på LED #6 (ansluten till stift 8)
Delay(delayTime); Waits fördröjningstid millisekunder
digitalWrite (ledPins [0], låg); Vänder på LED #7 (ansluten till pin 9)
Delay(delayTime); Waits fördröjningstid millisekunder}
void oneAfterAnotherLoop() {
int fördröjningstid = 100; tid (i millisekunder) ska gå mellan lysdioder //make mindre för snabbare växling och större för långsammare
Aktivera varje LED en efter den andra
för (int jag = 0; jag < = 7; i ++) {
digitalWrite (ledPins [i], hög); Vänder på LED #i varje gång detta kör jag
Delay(delayTime); får en läggas till det så upprepas} //8 gånger första gången jag kommer = 0 den sista //time jag kommer att motsvara 7.
Inaktivera en efter en annan varje LED
för (int jag = 7; jag > = 0; i--) {//same som ovan men snarare än början på 0 och räknar upp //we börja vid sju och räkna ner
digitalWrite (ledPins [i], låg); Släcks LED #i varje gång detta kör jag
Delay(delayTime); får en subtraheras från det så upprepas} //8 gånger första gången jag kommer = 7 den slutliga //time det kommer lika med 0}
/ * * oneOnAtATime() - kommer att lätta ledde sedan nästa stänga av alla andra * /
void oneOnAtATime() {
int fördröjningstid = 100; tid (i millisekunder) ska gå mellan lysdioder //make mindre för snabbare växling och större för långsammare
för (int jag = 0; jag < = 7; i ++) {
int offLED = i - 1. Beräkna som LED vändes senaste tiden genom
IF(i == 0) {//for jag = 1 till 7 detta är jag minus 1 (dvs. om jag = 2 kommer vi att offLED = 7, //turn av LED 2 och på LED 1)} //however om jag = 0 vi inte vill vända på led -1 (inte finns) //instead vi stänga av LED
7, (looping runt)
digitalWrite (ledPins [i], hög); slå på LED #i
digitalWrite (ledPins [offLED], låg); stänga av lampan vi vände på förra gången
Delay(delayTime); } }
/ * * inAndOut() - Detta kommer att slå på de två mellersta lysdioderna då två ut * att göra en in och ut ser * /
void inAndOut() {
int fördröjningstid = 100; tid (i millisekunder) ska gå mellan lysdioder //make mindre för snabbare växling och större för långsammare //runs LEDs ut från mitten
för (int jag = 0; jag < = 3; i ++) {
int offLED = i - 1. Beräkna som LED vändes senaste tiden genom
IF(i == 0) {//for jag = 1 till 7 detta är jag minus 1 (dvs. om jag = 2 kommer vi att
offLED = 3; Vänd på LED 2 och av LED 1)} //however om jag = 0 vi inte vill vända på led -1 (inte finns) //instead vi stänga av LED 7, (looping runt)
int onLED1 = 3 - i. Detta är den första lysdioden gå på dvs. Lysdiod #3 när jag = 0 och ledde //#0 när jag = 3 int onLED2 = 4 + i. Detta är den första lysdioden gå på dvs.
Laddningslysdiod #4 när jag = 0 och ledde //#7 när jag = 3
int offLED1 = 3 - offLED; släcks LED vi vände på förra gången
int offLED2 = 4 + offLED; släcks LED vi vände på förra gången
digitalWrite (ledPins [onLED1], hög);
digitalWrite (ledPins [onLED2], hög);
digitalWrite (ledPins [offLED1], låg);
digitalWrite (ledPins [offLED2], låg);
Delay(delayTime); }
kör lamporna i mitten
för (int jag = 3; jag > = 0; i--) {
int offLED = i + 1. Beräkna som LED vändes senaste tiden genom
IF(i == 3) {//for jag = 1 till 7 detta är jag minus 1 (dvs.
om jag = 2 kommer vi att
offLED = 0; Vänd på LED 2 och av LED 1)} //however om jag = 0 vi inte vill vända på led -1 (inte finns) //instead vi stänga av LED 7, (looping runt)
int onLED1 = 3 - i. Detta är den första lysdioden gå på dvs. Lysdiod #3 när jag = 0 och ledde //#0 när jag = 3 int onLED2 = 4 + i. Detta är den första lysdioden gå på dvs. Laddningslysdiod #4 när jag = 0 och ledde //#7 när jag = 3 jag
NT offLED1 = 3 - offLED; släcks LED vi vände på förra gången
int offLED2 = 4 + offLED; släcks LED vi vände på förra gången
digitalWrite (ledPins [onLED1], hög);
digitalWrite (ledPins [onLED2], hög);
digitalWrite (ledPins [offLED1], låg);
digitalWrite (ledPins [offLED2], låg);
Delay(delayTime); }
}