Skocz do zawartości

Dwa przyciski i 14 diod led


xirtt

Pomocna odpowiedź

11 minut temu, Zero napisał:

FlyingDutch, Twój post jest OK. Niestety szybko klika się, a na przemyślenie potrzeba więcej czasu. Jeszcze zanim zobaczyłem Twoją edycję zdążyłem wycofać - sorki.🙂

 

Spoko nie ma problemu 😉

  • Lubię! 1
Link do komentarza
Share on other sites

Proszę o pomoc Ciebie " FlyingDutch".

Zamieniłem jak kazałeś, chyba dobrze?, i co teraz?

 

 
   lcd.backlight();
  lcd.setCursor(0,0);
  lcd.print("  DIODA 1 ");
  lcd.setCursor(0,1);
  lcd.print("          ");
   lcd.setCursor(0,2);
  lcd.print("          ");
   lcd.setCursor(0,3);
  lcd.print("          ");
 for (int i=0; i < 12; i++) pinMode(i, OUTPUT);
  
  delay(500); //Zatrzymujemy program przed wejsciem do pętli na 1 sekunde
  while (digitalRead(A0) == HIGH) {}
 
 {
 
  lcd.backlight();
  lcd.setCursor(0,0);
  lcd.print("  DIODA 2 ");
  lcd.setCursor(0,1);
  lcd.print("          ");
   lcd.setCursor(0,2);
  lcd.print("          ");
   lcd.setCursor(0,3);
  lcd.print("          ");
  for (int i=0; i < 12; i++) pinMode(i, OUTPUT);
  
  delay(500); //Zatrzymujemy program przed wejsciem do pętli na 1 sekunde
   while (digitalRead(A0) == HIGH) {}
  
   lcd.backlight();
  lcd.setCursor(0,0);
  lcd.print("  DIODA 3 ");
  lcd.print("          ");
   lcd.setCursor(0,2);
  lcd.print("          ");
   lcd.setCursor(0,3);
  lcd.print("          ");
 for (int i=0; i < 12; i++) pinMode(i, OUTPUT);
 
  delay(500); //Zatrzymujemy program przed wejsciem do pętli na 1 sekunde
  while (digitalRead(A0) == HIGH) {} //Jeśli przycisk jest wciśnięty 

 
   lcd.backlight();
  lcd.setCursor(0,0);
  lcd.print("  DIODA 4 ");
  lcd.setCursor(0,1);
  lcd.print("          ");
   lcd.setCursor(0,2);
  lcd.print("          ");
   lcd.setCursor(0,3);
  lcd.print("          ");
for (int i=0; i < 12; i++) pinMode(i, OUTPUT);
 
  delay(500); //Zatrzymujemy program przed wejsciem do pętli na 1 sekunde
  while (digitalRead(A0) == HIGH) {} //Jeśli przycisk jest wciśnięty

   lcd.backlight();
  lcd.setCursor(0,0);
  lcd.print("  DIODA 5 ");
  lcd.setCursor(0,1);
  lcd.print("          ");
   lcd.setCursor(0,2);
  lcd.print("          ");
   lcd.setCursor(0,3);
  lcd.print("          ");
 for (int i=0; i < 12; i++) pinMode(i, OUTPUT);
 
  delay(500); //Zatrzymujemy program przed wejsciem do pętli na 1 sekunde
  while (digitalRead(A0) == HIGH) {} //Jeśli przycisk jest wciśnięty 

   lcd.backlight();
  lcd.setCursor(0,0);
  lcd.print("  DIODA 6 ");
  lcd.setCursor(0,1);
  lcd.print("          ");
   lcd.setCursor(0,2);
  lcd.print("          ");
   lcd.setCursor(0,3);
  lcd.print("          ");
for (int i=0; i < 12; i++) pinMode(i, OUTPUT);
 
  delay(500); //Zatrzymujemy program przed wejsciem do pętli na 1 sekunde
  while (digitalRead(A0) == HIGH) {} //Jeśli przycisk jest wciśnięty 

   lcd.backlight();
  lcd.setCursor(0,0);
  lcd.print("  DIODA 7 ");
  lcd.setCursor(0,1);
  lcd.print("          ");
   lcd.setCursor(0,2);
  lcd.print("          ");
   lcd.setCursor(0,3);
  lcd.print("          ");
for (int i=0; i < 12; i++) pinMode(i, OUTPUT);
 
  delay(500); //Zatrzymujemy program przed wejsciem do pętli na 1 sekunde
  while (digitalRead(A0) == HIGH) {} //Jeśli przycisk jest wciśnięty

 
   lcd.backlight();
  lcd.setCursor(0,0);
  lcd.print("  DIODA 8 ");
  lcd.setCursor(0,1);
  lcd.print("          ");
   lcd.setCursor(0,2);
  lcd.print("          ");
   lcd.setCursor(0,3);
  lcd.print("          ");
for (int i=0; i < 12; i++) pinMode(i, OUTPUT);

  delay(500); //Zatrzymujemy program przed wejsciem do pętli na 1 sekunde
  while (digitalRead(A0) == HIGH) {} //Jeśli przycisk jest wciśnięty

  
   lcd.backlight();
  lcd.setCursor(0,0);
  lcd.print("  DIODA 9 ");
  lcd.setCursor(0,1);
  lcd.print("          ");
   lcd.setCursor(0,2);
  lcd.print("          ");
   lcd.setCursor(0,3);
  lcd.print("          ");
for (int i=0; i < 12; i++) pinMode(i, OUTPUT);
 
  delay(500); //Zatrzymujemy program przed wejsciem do pętli na 1 sekunde
  while (digitalRead(A0) == HIGH) {} //Jeśli przycisk jest wciśnięty


   lcd.backlight();
  lcd.setCursor(0,0);
  lcd.print("  DIODA 10 ");
  lcd.setCursor(0,1);
  lcd.print("          ");
   lcd.setCursor(0,2);
  lcd.print("          ");
   lcd.setCursor(0,3);
  lcd.print("          ");
 for (int i=0; i < 12; i++) pinMode(i, OUTPUT);
 
  delay(500); //Zatrzymujemy program przed wejsciem do pętli na 1 sekunde
  while (digitalRead(A0) == HIGH) {} //Jeśli przycisk jest wciśnięty  


   lcd.backlight();
  lcd.setCursor(0,0);
  lcd.print("  DIODA 11 ");
  lcd.setCursor(0,1);
  lcd.print("          ");
   lcd.setCursor(0,2);
  lcd.print("          ");
   lcd.setCursor(0,3);
  lcd.print("          ");
 for (int i=0; i < 12; i++) pinMode(i, OUTPUT);
 
 
 delay(500); //Zatrzymujemy program przed wejsciem do pętli na 1 sekunde
  while (digitalRead(A0) == HIGH) {}
    
   lcd.backlight();
  lcd.setCursor(0,0);
  lcd.print("  DIODA 12 ");
  lcd.setCursor(0,1);
  lcd.print("          ");
   lcd.setCursor(0,2);
  lcd.print("          ");
   lcd.setCursor(0,3);
  lcd.print("          ");
for (int i=0; i < 12; i++) pinMode(i, OUTPUT);

 delay(500); //Zatrzymujemy program przed wejsciem do pętli na 1 sekunde
  while (digitalRead(A0) == HIGH) {}
  }

  

 

a gdzie mogę teraz konfigurować 12 sekwencji po 12 diod ?

Link do komentarza
Share on other sites

Zarejestruj się lub zaloguj, aby ukryć tę reklamę.
Zarejestruj się lub zaloguj, aby ukryć tę reklamę.

jlcpcb.jpg

jlcpcb.jpg

Produkcja i montaż PCB - wybierz sprawdzone PCBWay!
   • Darmowe płytki dla studentów i projektów non-profit
   • Tylko 5$ za 10 prototypów PCB w 24 godziny
   • Usługa projektowania PCB na zlecenie
   • Montaż PCB od 30$ + bezpłatna dostawa i szablony
   • Darmowe narzędzie do podglądu plików Gerber
Zobacz również » Film z fabryki PCBWay

32 minuty temu, xirtt napisał:

Proszę o pomoc Ciebie " FlyingDutch".

Zamieniłem jak kazałeś, chyba dobrze?, i co teraz?

a gdzie mogę teraz konfigurować 12 sekwencji po 12 diod ?

Cześć xirtt,

zrobiłeś krok w dobrym kierunku. Niestety wkradły się błędy przy użyciu pętli for. Np. ten fragment kodu w twoim pierwotnym kodzie:
 

  digitalWrite(2, LOW);
  digitalWrite(3, LOW);
  digitalWrite(4, LOW);
  digitalWrite(5, LOW);
  digitalWrite(6, LOW);
  digitalWrite(7, LOW);
  digitalWrite(8, LOW);
  digitalWrite(9, LOW);
  digitalWrite(10, LOW);
  digitalWrite(11, LOW);

powinieneś zamienić na taką pętlę for:

for(int i = 2; i <12;i++) digitalWrite(i, LOW);

Przeanalizuj ten fragment i postaraj się ze zrozumieniem w swoim pierwotnym programie zamienić tego typu fragmenty na pętle for modyfikując wartości poczatkowe i końcowe i (dla pętli), oraz wpisać właściwą instrukcję do wykonania w pętli.

BTW: czuję się zaszczycony wybraniem mojej osoby do poprawienia twojego programu 😉 Na forum jednak, gdy piszesz post to jest on adresowany do wszystkich użytkowników forum.

Pozdrawiam

  • Lubię! 1
Link do komentarza
Share on other sites

nie pisałem o szczegółach , ponieważ byłem pewny ,że wszyscy zobaczą 12 sekwencji po 12 diod i, że w każdej sekwencji mogę zapalać dowolną ilość diod led.

Prześle jeszcze raz te moje bzdurne wypociny, ale bardziej czytelne, wystarczy to wgrać do ARDUINO, i wszystko jasne . Ale potem zobaczyłem , że jednak lepszy jest tylko jeden przycisk, ułatwi i uprości mi obsługę tego mojego potwora . Jestem ciemny jak tabaka w rogu, dopiero zaczynam zabawę . Proszę i dziękuje  za zrozumienie .

Chciałbym pracować już na tym, co teraz przesyłam. jeżeli możesz to uruchom to i wszystko jasne , chce to udoskonalić. Proszę powoli i dokładni , co mam zamienić . " Jeżeli nie wejdzie mi łopatą to popraw szpadlem". Jeszcze raz dziękuje.

#include <Wire.h> 
#include <LiquidCrystal_I2C.h>

LiquidCrystal_I2C lcd(0x27,20,4);

void setup() 
{
  lcd.init();                      // initialize the lcd 
  lcd.init();
  // Print a message to the LCD.
  lcd.backlight();
  lcd.setCursor(0,0);
  lcd.print("   WELCOME TO!     ");
  lcd.setCursor(0,1);
  lcd.print("    Sterownik      ");
   lcd.setCursor(0,2);
  lcd.print("      diod         ");
   lcd.setCursor(0,3);
  lcd.print("      led          ");
  delay(2000);
  pinMode(0, OUTPUT);
  pinMode(1, OUTPUT); 
  pinMode(2, OUTPUT);
  pinMode(3, OUTPUT);
  pinMode(4, OUTPUT);
  pinMode(5, OUTPUT);
  pinMode(6, OUTPUT);
  pinMode(7, OUTPUT);
  pinMode(8, OUTPUT);
  pinMode(9, OUTPUT);
  pinMode(10, OUTPUT);
  pinMode(11, OUTPUT);

  pinMode(A0, INPUT_PULLUP);
  
  digitalWrite(0, LOW);
  digitalWrite(1, LOW);
  digitalWrite(2, LOW);
  digitalWrite(3, LOW);
  digitalWrite(4, LOW);
  digitalWrite(5, LOW);
  digitalWrite(6, LOW);
  digitalWrite(7, LOW);
  digitalWrite(8, LOW);
  digitalWrite(9, LOW);
  digitalWrite(10, LOW);
  digitalWrite(11, LOW);
}
 
void loop()
{

  digitalWrite(0, HIGH);
   lcd.backlight();
  lcd.setCursor(0,0);
  lcd.print("    Program 1      ");
  lcd.setCursor(0,1);
  lcd.print("   Diody aktywne   ");
   lcd.setCursor(0,2);
  lcd.print("  123456789101112  ");
   lcd.setCursor(0,3);
  lcd.print("  *       *        ");
  digitalWrite(1, LOW); 
  digitalWrite(2, LOW);
  digitalWrite(3, LOW);
  digitalWrite(4, LOW);
  digitalWrite(5, LOW);
  digitalWrite(6, LOW);
  digitalWrite(7, LOW);
  digitalWrite(8, HIGH);
  digitalWrite(9, LOW);
  digitalWrite(10, LOW);
  digitalWrite(11, LOW);
  
  delay(1000); //Zatrzymujemy program przed wejsciem do pętli na 1 sekunde
  while (digitalRead(A0) == HIGH) {}
 
  digitalWrite(0, LOW);
  digitalWrite(1, HIGH);
  lcd.backlight();
  lcd.setCursor(0,0);
   lcd.print("    Program 2      ");
  lcd.setCursor(0,1);
  lcd.print("   Diody aktywne    ");
   lcd.setCursor(0,2);
  lcd.print("  123456789101112   ");
   lcd.setCursor(0,3);
  lcd.print("   *                ");
  digitalWrite(2, LOW);
  digitalWrite(3, LOW);
  digitalWrite(4, LOW);
  digitalWrite(5, LOW);
  digitalWrite(6, LOW);
  digitalWrite(7, LOW);
  digitalWrite(8, LOW);
  digitalWrite(9, LOW);
  digitalWrite(10, LOW);
  digitalWrite(11, LOW);
  
  delay(1000); //Zatrzymujemy program przed wejsciem do pętli na 1 sekunde
  while (digitalRead(A0) == HIGH) {}
  
  digitalWrite(0, LOW);
  digitalWrite(1, LOW); 
  digitalWrite(2, HIGH);
   lcd.backlight();
  lcd.setCursor(0,0);
  lcd.print("    Program 3      ");
  lcd.setCursor(0,1);
  lcd.print("   Diody aktywne    ");
   lcd.setCursor(0,2);
  lcd.print("  123456789101112   ");
   lcd.setCursor(0,3);
  lcd.print("    * ***           ");
  digitalWrite(3, LOW);
  digitalWrite(4, HIGH);
  digitalWrite(5, HIGH);
  digitalWrite(6, HIGH);
  digitalWrite(7, LOW);
  digitalWrite(8, LOW);
  digitalWrite(9, LOW);
  digitalWrite(10, LOW);
  digitalWrite(11, LOW);
  
  delay(1000); //Zatrzymujemy program przed wejsciem do pętli na 1 sekunde
  while (digitalRead(A0) == HIGH) {} //Jeśli przycisk jest wciśnięty 

  digitalWrite(0, LOW);
  digitalWrite(1, LOW); 
  digitalWrite(2, LOW);
  digitalWrite(3, HIGH);
   lcd.backlight();
  lcd.setCursor(0,0);
   lcd.print("    Program 4      ");
  lcd.setCursor(0,1);
  lcd.print("   Diody aktywne    ");
   lcd.setCursor(0,2);
  lcd.print("  123456789101112   ");
   lcd.setCursor(0,3);
  lcd.print("     *   **         ");
  digitalWrite(4, LOW);
  digitalWrite(5, LOW);
  digitalWrite(6, LOW);
  digitalWrite(7, HIGH);
  digitalWrite(8, HIGH);
  digitalWrite(9, LOW);
  digitalWrite(10, LOW);
  digitalWrite(11, LOW);
 
  delay(1000); //Zatrzymujemy program przed wejsciem do pętli na 1 sekunde
  while (digitalRead(A0) == HIGH) {} //Jeśli przycisk jest wciśnięty
  
  digitalWrite(0, LOW);
  digitalWrite(1, LOW); 
  digitalWrite(2, LOW);
  digitalWrite(3, LOW);
  digitalWrite(4, HIGH);
   lcd.backlight();
  lcd.setCursor(0,0);
   lcd.print("    Program 5      ");
  lcd.setCursor(0,1);
  lcd.print("   Diody aktywne    ");
   lcd.setCursor(0,2);
  lcd.print("  123456789101112   ");
   lcd.setCursor(0,3);
  lcd.print("      *        *    ");
  digitalWrite(5, LOW);
  digitalWrite(6, LOW);
  digitalWrite(7, LOW);
  digitalWrite(8, LOW);
  digitalWrite(9, LOW);
  digitalWrite(10, LOW);
  digitalWrite(11, HIGH);
 
  delay(1000); //Zatrzymujemy program przed wejsciem do pętli na 1 sekunde
  while (digitalRead(A0) == HIGH) {} //Jeśli przycisk jest wciśnięty 

  digitalWrite(0, LOW);
  digitalWrite(1, LOW); 
  digitalWrite(2, HIGH);
  digitalWrite(3, LOW);
  digitalWrite(4, LOW);
  digitalWrite(5, HIGH);
   lcd.backlight();
  lcd.setCursor(0,0);
   lcd.print("    Program 6      ");
  lcd.setCursor(0,1);
  lcd.print("   Diody aktywne    ");
   lcd.setCursor(0,2);
  lcd.print("  123456789101112   ");
   lcd.setCursor(0,3);
  lcd.print("    *  *            ");
  digitalWrite(6, LOW);
  digitalWrite(7, LOW);
  digitalWrite(8, LOW);
  digitalWrite(9, LOW);
  digitalWrite(10, LOW);
  digitalWrite(11, LOW);

  delay(1000); //Zatrzymujemy program przed wejsciem do pętli na 1 sekunde
  while (digitalRead(A0) == HIGH) {} //Jeśli przycisk jest wciśnięty 

  digitalWrite(0, HIGH);
  digitalWrite(1, HIGH); 
  digitalWrite(2, LOW);
  digitalWrite(3, LOW);
  digitalWrite(4, LOW);
  digitalWrite(5, LOW);
   lcd.backlight();
  lcd.setCursor(0,0);
   lcd.print("    Program 7      ");
  lcd.setCursor(0,1);
  lcd.print("   Diody aktywne    ");
   lcd.setCursor(0,2);
  lcd.print("  123456789101112   ");
   lcd.setCursor(0,3);
  lcd.print("  **    *           ");
  digitalWrite(6, HIGH);
  digitalWrite(7, LOW);
  digitalWrite(8, LOW);
  digitalWrite(9, LOW);
  digitalWrite(10, LOW);
  digitalWrite(11, LOW);
 
  delay(1000); //Zatrzymujemy program przed wejsciem do pętli na 1 sekunde
  while (digitalRead(A0) == HIGH) {} //Jeśli przycisk jest wciśnięty

  digitalWrite(0, LOW);
  digitalWrite(1, LOW); 
  digitalWrite(2, LOW);
  digitalWrite(3, LOW);
  digitalWrite(4, LOW);
  digitalWrite(5, LOW);
  digitalWrite(6, HIGH);
  digitalWrite(7, HIGH);
   lcd.backlight();
  lcd.setCursor(0,0);
   lcd.print("    Program 8      ");
  lcd.setCursor(0,1);
  lcd.print("   Diody aktywne    ");
   lcd.setCursor(0,2);
  lcd.print("  123456789101112   ");
   lcd.setCursor(0,3); 
  lcd.print("        **          ");
  digitalWrite(8, LOW);
  digitalWrite(9, LOW);
  digitalWrite(10, LOW);
  digitalWrite(11, LOW);

  delay(1000); //Zatrzymujemy program przed wejsciem do pętli na 1 sekunde
  while (digitalRead(A0) == HIGH) {} //Jeśli przycisk jest wciśnięty

  digitalWrite(0, LOW);
  digitalWrite(1, LOW); 
  digitalWrite(2, LOW);
  digitalWrite(3, LOW);
  digitalWrite(4, LOW);
  digitalWrite(5, LOW);
  digitalWrite(6, LOW);
  digitalWrite(7, LOW);
   lcd.backlight();
  lcd.setCursor(0,0);
   lcd.print("    Program 9      ");
  lcd.setCursor(0,1);
  lcd.print("   Diody aktywne    ");
   lcd.setCursor(0,2);
  lcd.print("  123456789101112   ");
   lcd.setCursor(0,3);
  lcd.print("          *         ");
  digitalWrite(8, HIGH);
  digitalWrite(9, LOW);
  digitalWrite(10, LOW);
  digitalWrite(11, LOW);
 
  delay(1000); //Zatrzymujemy program przed wejsciem do pętli na 1 sekunde
  while (digitalRead(A0) == HIGH) {} //Jeśli przycisk jest wciśnięty

  digitalWrite(0, LOW);
  digitalWrite(1, LOW); 
  digitalWrite(2, LOW);
  digitalWrite(3, LOW);
  digitalWrite(4, HIGH);
  digitalWrite(5, HIGH);
  digitalWrite(6, LOW);
  digitalWrite(7, LOW);
  digitalWrite(8, LOW);
  digitalWrite(9, HIGH);
   lcd.backlight();
  lcd.setCursor(0,0);
   lcd.print("    Program 10     ");
  lcd.setCursor(0,1);
  lcd.print("   Diody aktywne    ");
   lcd.setCursor(0,2);
  lcd.print("  123456789101112   ");
   lcd.setCursor(0,3);
  lcd.print("      **   *        ");
  digitalWrite(10, LOW);
  digitalWrite(11, LOW);

  delay(1000); //Zatrzymujemy program przed wejsciem do pętli na 1 sekunde
  while (digitalRead(A0) == HIGH) {} //Jeśli przycisk jest wciśnięty  

  digitalWrite(0, LOW);
  digitalWrite(1, LOW); 
  digitalWrite(2, LOW);
  digitalWrite(3, HIGH);
  digitalWrite(4, LOW);
  digitalWrite(5, LOW);
  digitalWrite(6, LOW);
  digitalWrite(7, LOW);
  digitalWrite(8, LOW);
  digitalWrite(9, LOW);
  digitalWrite(10, HIGH);
   lcd.backlight();
  lcd.setCursor(0,0);
   lcd.print("    Program 11     ");
  lcd.setCursor(0,1);
  lcd.print("   Diody aktywne    ");
   lcd.setCursor(0,2);
  lcd.print("  123456789101112   ");
   lcd.setCursor(0,3);
  lcd.print("     *       *      ");
  digitalWrite(11, LOW);
 
  delay(1000); //Zatrzymujemy program przed wejsciem do pętli na 1 sekunde
  while (digitalRead(A0) == HIGH) {}
    
  digitalWrite(0, LOW);
  digitalWrite(1, LOW); 
  digitalWrite(2, LOW);
  digitalWrite(3, LOW);
  digitalWrite(4, LOW);
  digitalWrite(5, HIGH);
  digitalWrite(6, LOW);
  digitalWrite(7, LOW);
  digitalWrite(8, LOW);
  digitalWrite(9, LOW);
  digitalWrite(10, LOW);
  digitalWrite(11, HIGH);
   lcd.backlight();
  lcd.setCursor(0,0);
  lcd.print("    Program 12      ");
  lcd.setCursor(0,1);
  lcd.print("   Diody aktywne    ");
   lcd.setCursor(0,2);
  lcd.print("  123456789101112   ");
   lcd.setCursor(0,3);
  lcd.print("       *       *    ");
  
  delay(1000); //Zatrzymujemy program przed wejsciem do pętli na 1 sekunde
  while (digitalRead(A0) == HIGH) {}
  }

  

 

Tak praktycznie , jeśli możesz krótko...

for(int i = 2; i <12;i++) digitalWrite(i, LOW);

for - co to jest i co to daje , tak praktycznie

( -   co to jest i co to daje , tak praktycznie

int -  co to jest i co to daje , tak praktycznie

i -  co to jest i co to daje , tak praktycznie

= -  co to jest i co to daje , tak praktycznie

2 -  co to jest i co to daje , tak praktycznie

; -  co to jest i co to daje , tak  praktycznie

i -  co to jest i co to daje , tak praktycznie

< -  co to jest i co to daje , tak praktycznie

12 -  co to jest i co to daje , tak praktycznie

; -  co to jest i co to daje , tak praktycznie

i -  co to jest i co to daje , tak praktycznie

+ -   co to jest i co to daje , tka praktycznie

+ -  co to jest i co to daje , tak praktycznie

) -  co to jest i co to daje , tak praktycznie

digitalWrite -  co to jest i co to daje , tak praktycznie

( -  co to jest i co to daje , tak praktycznie

i -  co to jest i co to daje , tak praktycznie

, -  co to jest i co to daje , tak praktycznie

LOW -   co to jest i co to daje , tak praktycznie

) -  co to jest i co to daje , tak praktycznie

; -  co to jest i co to daje , tak praktycznie

Link do komentarza
Share on other sites

5 godzin temu, xirtt napisał:

2 -  co to jest i co to daje , tak praktycznie

Idą święta więc nic mnie nie dziwi. xirtt - przecież to proste,z pewnością pamiętasz z podstawówki 2 to liczba, a praktycznie to np. 2 kg ziemniaków

Ten temat niczemu nie służy.

Edytowano przez Belferek
Link do komentarza
Share on other sites

8 godzin temu, Elvis napisał:

A jak dla mnie to już wygląda na zwykły trolling. Co więcej skuteczny, bo wątek mega aktywny.

7 godzin temu, ethanak napisał:

A ja się najbardziej będę śmiać, jak w którymś ładnie zedytowanym poście pokaże się link np. do sklepu z oponami 😉

Pisałem już wcześniej, ale ponowię dla pewności: autor tematu faktycznie posiada zestaw do naszego kursu Arduino (zarejestrował go unikalnym kodem). Dlatego zachęcałem go do tego, aby jednak wykonał opisane w kursie ćwiczenia, bo to rozwiąże jego problemy 😉

  • Lubię! 1
Link do komentarza
Share on other sites

Witam.

To moje pytania dotyczą  tej pętli -  for(int i = 2; i <12;i++) digitalWrite(i, LOW);

Zgadza się 2 to cyfra , ale dlaczego tu jest , jakie ma za zadanie itd...

Może jestem zbyt dokładny , ale chce wiedzieć.

Mam coś wpisać i dla tego chce wiedzieć, jakie zadanie ma każdy znak w tej pętli , tak PRAKTYCZNIE, i to tyle.

 

Pozdrawiam

Link do komentarza
Share on other sites

xirtt: Wszystkie informacje których potrzebujesz by poprawić swój kod i zrozumieć co mają na myśli inni gdy wstawiają do przykładowych programów for, if lub while znajdziesz w sieci. Żeby nie odsyłać Cię w kosmos gdzie prawdopodobnie pobłądzisz - proszę, poniżej są dwa linki do dokumentów. Możesz to ściągnąć, wydrukować i poczytać do poduszki. Bez czytania, powtarzania już przeczytanych rozdziałów i próbowania swojej nowej wiedzy w praktyce niczego się nie nauczysz. Tutaj nikt nie będzie tłumaczył rzeczy tak bardzo podstawowych. No niestety, nie dostaniesz pomocy w formie gotowego programu - to tak nie działa i będziemy się upierać - mam nadzieję, że już to do Ciebie dotarło. Na Forbocie odpowiadamy w miarę naszych możliwości raczej na pytania szczegółowe i hołdujemy zasadzie, że w przypadkach ogólnych, tak rozległej niewiedzy jaką Ty reprezentujesz wskazujemy tylko kierunki. To mogą być kursy na naszym Forum (u góry strony zakładka "Kursy"), to mogą być darmowo dostępne dokumenty i podręczniki w sieci a mogą to być zwykłe książki po które musisz pofatygować się do księgarni (to taki sklep z książkami, coraz rzadziej spotykany - tam kupisz to co masz w drugim linku). Nikt za Ciebie tego nie przeczyta i nie wtłoczy Ci do głowy wiadomości jakich potrzebujesz. Napisałeś tak żałosny kod, że nawet nie ma sensu o nim pisać, analizować go ani od niego wychodzić gdzieś dalej. Porzuć to na kilka dni, zrób 10 głębokich wdechów i zajmij się czytaniem. Wróć tu z głową naładowaną wiedzą o języku, którego przecież chcesz używać.Tak wszyscy zaczynają i dla Ciebie nie będzie wyjątku.Nie jesteś w sytuacji europejczyka, który będąc od dwóch dni w Japonii chce nagle przestrzec jakiegoś tubylca przed nadjeżdżającym pociągiem i potrzebuje trzech słów, ale w tej sekundzie albo wcale, prawda? Niepotrzebny Ci w tej chwili wzorzec gotowego programu przesuwającego te cholerne diody tylko sposób jego samodzielnego wymyślenia i napisania. Jak to mówią: "zrób to sam" (DIY), czyli.. do roboty:

http://www.arturpyszczuk.pl/files/c/pwc.pdf

ftp://ftp.helion.pl/online/jcprpo/jcprpo.pdf

Jeśli będziesz w kółko powtarzał te swoje prośby, to zmarnujesz tylko swój czas a wątek zostanie naprawdę zamknięty. Zostaniesz z frustracją i poczuciem osamotnienia. Nie chcesz tego, wierz mi...

Edit: I jeszcze zajrzyj np. tu:

https://upload.wikimedia.org/wikibooks/pl/6/6a/C.pdf

Długie, prawda? No to tyle jeszcze przed Tobą by jako tako móc pisać programy w C.

Edytowano przez marek1707
  • Lubię! 1
Link do komentarza
Share on other sites

Proszę o pomoc Ciebie " Latający holender "

Z tego co widzę tak wstępnie, to muszę podzielić ten program na trzy części .

- Jedna to będzie konfiguracja 12 sekwencji , z 12 diodami led.

- Druga to będzie 12 wyświetleń , 12 konfiguracji na wyświetlaczu.

- Trzecia to przycisk.

To wszystko muszę ze sobą w odpowiedni sposób połączyć

Czy dobrze myślę ?

Link do komentarza
Share on other sites

Źle, musisz wywalić ten program, napisać nowy, ale dopiero wtedy kiedy będziesz wiedział co piszesz, np. do czego służą nawiasy "{}".... Poczytasz jeszcze raz kurs arduino, czy dalej będziesz robił kopiuj wklej bez nawet chęci zrozumienia co przeklejasz?? 

Podejrzewam, że to ostatnia odpowiedź dla Ciebie w tym temacie. 

Edytowano przez SOYER
Link do komentarza
Share on other sites

Czy coś takiego?

#include <Wire.h> 
#include <LiquidCrystal_I2C.h>

LiquidCrystal_I2C lcd(0x27,20,4);

int ledPin = 0;
int ledPin = 1;
int ledPin = 2;
int ledPin = 3;
int ledPin = 4;
int ledPin = 5;
int ledPin = 6;
int ledPin = 7;
int ledPin = 8;
int ledPin = 9;
int ledPin = 10;
int ledPin = 11;

void setup() {
 lcd.init();                      // initialize the lcd 
  lcd.init();
  // Print a message to the LCD.
  lcd.backlight();
  lcd.setCursor(0,0);
  lcd.print("   WELCOME TO!     ");
  lcd.setCursor(0,1);
  lcd.print("    Sterownik      ");
   lcd.setCursor(0,2);
  lcd.print("      diod         ");
   lcd.setCursor(0,3);
  lcd.print("      led          ");
  delay(2000);
  pinMode(0, OUTPUT);
  pinMode(1, OUTPUT); 
  pinMode(2, OUTPUT);
  pinMode(3, OUTPUT);
  pinMode(4, OUTPUT);
  pinMode(5, OUTPUT);
  pinMode(6, OUTPUT);
  pinMode(7, OUTPUT);
  pinMode(8, OUTPUT);
  pinMode(9, OUTPUT);
  pinMode(10, OUTPUT);
  pinMode(11, OUTPUT);

  pinMode(A0, INPUT_PULLUP);

}

void loop() {
   for(int i = 0; i <11;i++) digitalWrite(i, LOW);
  digitalWrite(0, LOW);
  digitalWrite(1, LOW);
  digitalWrite(2, LOW);
  digitalWrite(3, LOW);
  digitalWrite(4, LOW);
  digitalWrite(5, LOW);
  digitalWrite(6, LOW);
  digitalWrite(7, LOW);
  digitalWrite(8, LOW);
  digitalWrite(9, LOW);
  digitalWrite(10, LOW);
  digitalWrite(11, LOW);

  delay(1000); //Zatrzymujemy program przed wejsciem do pętli na 1 sekunde
  while (digitalRead(A0) == HIGH) {}
 
  lcd.backlight();
  lcd.setCursor(0,0);
  lcd.print("    Program 1      ");
  lcd.setCursor(0,1);
  lcd.print("   Diody aktywne   ");
   lcd.setCursor(0,2);
  lcd.print("  123456789101112  ");
   lcd.setCursor(0,3);
  lcd.print("  *       *        ");
}

 

Proszę o pomoc Ciebie " Latający holender "

przepraszam poprawka....

#include <Wire.h> 
#include <LiquidCrystal_I2C.h>

LiquidCrystal_I2C lcd(0x27,20,4);

int ledPin = 0;
int ledPin = 1;
int ledPin = 2;
int ledPin = 3;
int ledPin = 4;
int ledPin = 5;
int ledPin = 6;
int ledPin = 7;
int ledPin = 8;
int ledPin = 9;
int ledPin = 10;
int ledPin = 11;

void setup() {
 lcd.init();                      // initialize the lcd 
  lcd.init();
  // Print a message to the LCD.
  lcd.backlight();
  lcd.setCursor(0,0);
  lcd.print("   WELCOME TO!     ");
  lcd.setCursor(0,1);
  lcd.print("    Sterownik      ");
   lcd.setCursor(0,2);
  lcd.print("      diod         ");
   lcd.setCursor(0,3);
  lcd.print("      led          ");
  delay(2000);
  pinMode(0, OUTPUT);
  pinMode(1, OUTPUT); 
  pinMode(2, OUTPUT);
  pinMode(3, OUTPUT);
  pinMode(4, OUTPUT);
  pinMode(5, OUTPUT);
  pinMode(6, OUTPUT);
  pinMode(7, OUTPUT);
  pinMode(8, OUTPUT);
  pinMode(9, OUTPUT);
  pinMode(10, OUTPUT);
  pinMode(11, OUTPUT);

  pinMode(A0, INPUT_PULLUP);

}

void loop() 
{
   for(int i = 0; i <11;i++) digitalWrite(i, LOW);
{
  digitalWrite(0, LOW);
  digitalWrite(1, LOW);
  digitalWrite(2, LOW);
  digitalWrite(3, LOW);
  digitalWrite(4, LOW);
  digitalWrite(5, LOW);
  digitalWrite(6, LOW);
  digitalWrite(7, LOW);
  digitalWrite(8, LOW);
  digitalWrite(9, LOW);
  digitalWrite(10, LOW);
  digitalWrite(11, LOW);

  delay(1000); //Zatrzymujemy program przed wejsciem do pętli na 1 sekunde
  while (digitalRead(A0) == HIGH) {}
 
  lcd.backlight();
  lcd.setCursor(0,0);
  lcd.print("    Program 1      ");
  lcd.setCursor(0,1);
  lcd.print("   Diody aktywne   ");
   lcd.setCursor(0,2);
  lcd.print("  123456789101112  ");
   lcd.setCursor(0,3);
  lcd.print("  *       *        ");
}

 

"Latający holender", dopomóż , ja Ciebie nie potępiam...... 

#include <Wire.h> 
#include <LiquidCrystal_I2C.h>

LiquidCrystal_I2C lcd(0x27,20,4);

int ledPin = 0;
int ledPin = 1;
int ledPin = 2;
int ledPin = 3;
int ledPin = 4;
int ledPin = 5;
int ledPin = 6;
int ledPin = 7;
int ledPin = 8;
int ledPin = 9;
int ledPin = 10;
int ledPin = 11;

void setup() {
 lcd.init();                      // initialize the lcd 
  lcd.init();
  // Print a message to the LCD.
  lcd.backlight();
  lcd.setCursor(0,0);
  lcd.print("   WELCOME TO!     ");
  lcd.setCursor(0,1);
  lcd.print("    Sterownik      ");
   lcd.setCursor(0,2);
  lcd.print("      diod         ");
   lcd.setCursor(0,3);
  lcd.print("      led          ");
  delay(2000);
  pinMode(0, OUTPUT);
  pinMode(1, OUTPUT); 
  pinMode(2, OUTPUT);
  pinMode(3, OUTPUT);
  pinMode(4, OUTPUT);
  pinMode(5, OUTPUT);
  pinMode(6, OUTPUT);
  pinMode(7, OUTPUT);
  pinMode(8, OUTPUT);
  pinMode(9, OUTPUT);
  pinMode(10, OUTPUT);
  pinMode(11, OUTPUT);

  pinMode(A0, INPUT_PULLUP);

}

void loop() 
{
   for(int i = 0; i <11;i++) digitalWrite(i, LOW);
{
  digitalWrite(0, LOW);
  digitalWrite(1, LOW);
  digitalWrite(2, LOW);
  digitalWrite(3, LOW);
  digitalWrite(4, LOW);
  digitalWrite(5, LOW);
  digitalWrite(6, LOW);
  digitalWrite(7, LOW);
  digitalWrite(8, LOW);
  digitalWrite(9, LOW);
  digitalWrite(10, LOW);
  digitalWrite(11, LOW);

  delay(1000); //Zatrzymujemy program przed wejsciem do pętli na 1 sekunde
  while (digitalRead(A0) == HIGH) {}
 
  lcd.backlight();
  lcd.setCursor(0,0);
  lcd.print("    Program 1      ");
  lcd.setCursor(0,1);
  lcd.print("   Diody aktywne   ");
   lcd.setCursor(0,2);
  lcd.print("  123456789101112  ");
   lcd.setCursor(0,3);
  lcd.print("  *       *        ");
}

 

Link do komentarza
Share on other sites

Anonim
Ten temat został zamknięty.
×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.