Stáhnout prezentaci
Prezentace se nahrává, počkejte prosím
1
OVLÁDÁNÍ LED
2
Připojení LED k Arduinu a ovládání
3
Řada LED Vytvořit efekt prodleva 0,5s
4
voidSetup() { pinMode(8, OUTPUT); pinMode(9, OUTPUT); pinMode(10, OUTPUT); pinMode(11, OUTPUT); pinMode(12, OUTPUT); pinMode(13, OUTPUT); } voidLoop() { digitalWrite(8, HIGH); digitalWrite(9, LOW); digitalWrite(10, LOW); digitalWrite(11, LOW); digitalWrite(12, LOW); digitalWrite(13,LOW); delay(500);
5
digitalWrite(8, LOW); digitalWrite(9, HIGH); digitalWrite(10, LOW); digitalWrite(11, LOW); digitalWrite(12, LOW); digitalWrite(13,LOW); delay(500); digitalWrite(8, LOW); digitalWrite(9, LOW); digitalWrite(10, HIGH); digitalWrite(11, LOW); digitalWrite(12, LOW); digitalWrite(13,LOW); delay(500);
6
digitalWrite(8, LOW); digitalWrite(9, LOW); digitalWrite(10, LOW); digitalWrite(11, HIGH); digitalWrite(12, LOW); digitalWrite(13,LOW); delay(500); digitalWrite(8, LOW); digitalWrite(9, LOW); digitalWrite(10, LOW); digitalWrite(11, LOW); digitalWrite(12, HIGH); digitalWrite(13,LOW); delay(500);
7
digitalWrite(8, LOW); digitalWrite(9, LOW); digitalWrite(10, LOW); digitalWrite(11, HIGH); digitalWrite(12, LOW); digitalWrite(13,HIGH); delay(500); digitalWrite(8, LOW); digitalWrite(9, LOW); digitalWrite(10, LOW); digitalWrite(11, LOW); digitalWrite(12, HIGH); digitalWrite(13,LOW); delay(500);
8
digitalWrite(8, LOW); digitalWrite(9, LOW); digitalWrite(10, LOW); digitalWrite(11, HIGH); digitalWrite(12, LOW); digitalWrite(13,LOW); delay(500); digitalWrite(8, LOW); digitalWrite(9, LOW); digitalWrite(10, HIGH); digitalWrite(11, LOW); digitalWrite(12, LOW); digitalWrite(13,LOW); delay(500);
9
digitalWrite(8, LOW); digitalWrite(9, HIGH); digitalWrite(10, LOW); digitalWrite(11, LOW); digitalWrite(12, LOW); digitalWrite(13,LOW); delay(500); } Ač by tento program pracoval – tak takto NE!!!!!!!!!!!!!! Představme si jednotlivě sled efektu jako tabulku 0 a 1 a převeďme jí do pole a nalezněme vztah pro polohu prvku v tabulce a v poli.
10
Sloupec řádek 012345 0100000 1010000 2001000 3000100 4000010 5000001 6000010 7000100 8001000 9010000
11
r - řádka v tabulce s - sloupec v tabulce i - index pole i = r. 6 + s Př.: r = 2 s = 4 i = 2. 6 + 4 = 16
12
int Index; int LedPole[] = {1,0,0,0,0,0,// naplnění pole efektem 0,1,0,0,0,0, 0,0,1,0,0,0, 0,0,0,1,0,0, 0,0,0,0,1,0, 0,0,0,0,0,1, 0,0,0,0,1,0, 0,0,0,1,0,0, 0,0,1,0,0,0, 0,1,0,0,0,0}; void setup() { for ( int Pin =8 ; Pin < 14; Pin++)// nastavení pinů s LED jako výstupní {pinMode(Pin, OUTPUT); } }
13
void loop { for ( int Radek =0 ; Radek < 10; Radek++)// postupný průchod tabulkou {for ( int Sloupec =0 ; Sloupec < 6; Sloupec++)//po řádcích { Index = Radek * 6 + Sloupec ;//převod na pozici v poli if (LedPole [Index]==1) {digitalWrite(Sloupec + 8, HIGH); }//zobrazení else {digitalWrite(Sloupec + 8, LOW; } } delay(500); }
Podobné prezentace
© 2024 SlidePlayer.cz Inc.
All rights reserved.