NOVINKA - Online rekvalifikační kurz Python programátor. Oblíbená a studenty ověřená rekvalifikace - nyní i online.
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.

Diskuze – Lekce 5 - Arduino - Projekty s LED diodami a potenciometrem

Zpět

Upozorňujeme, že diskuze pod našimi online kurzy jsou nemoderované a primárně slouží k získávání zpětné vazby pro budoucí vylepšení kurzů. Pro studenty našich rekvalifikačních kurzů nabízíme možnost přímého kontaktu s lektory a studijním referentem pro osobní konzultace a podporu v rámci jejich studia. Toto je exkluzivní služba, která zajišťuje kvalitní a cílenou pomoc v případě jakýchkoli dotazů nebo projektů.

Komentáře
Avatar
Roman Štěpánek :18.2.2023 13:52

Článek se mi líbí moc, ale už ty kódy nedokážu rozlousknout.
To už mi přijde těžší k orientaci, než to předchozí.
Jak u rozsvícení led na desce, tak toho potenciometru.

 
Odpovědět
18.2.2023 13:52
Avatar
Odpovídá na Roman Štěpánek
Dominik Němeček:18.2.2023 15:53

Jsem rád, že se ti článek líbil. Co konkrétně na kódech nechápeš? :)

 
Odpovědět
18.2.2023 15:53
Avatar
Roman Štěpánek :18.2.2023 16:00

Ahoj, dík za odpověď.
Oproti předcházejícím lekcím, kde se začalo opravdu od píky, rezistory, ledky, základy, tady je to mnohem složitější.
Hlavně mi moc chyběl úplný kód, abych ho mohl porovnat s tím, kde dělám chyby.
Kdybys mi ho mohl poslat, tak už bych se tím prokousal, jinak bych tedy napsal, kde všude jsem nechápal vysvětlení.
Díky Roman

 
Odpovědět
18.2.2023 16:00
Avatar
Odpovídá na Roman Štěpánek
Dominik Němeček:18.2.2023 16:28

Celý kód první úlohy:

//==OVLÁDÁNÍ LED PŘES SERIOVÝ MONITOR==

// Definování pinů
#define LED_ARD 13

// Proměnné
byte pocet_bliknuti = 0;
bool pomocna_promena = false;

void setup()
{
  pinMode(LED_ARD, OUTPUT);
  Serial.begin(9600);
}

void loop()
{
  if (!pomocna_promena)
  {
    Serial.println("Kolikrat ma LED zablikat?");
    pomocna_promena = true;
  }

  if (Serial.available() > 0)
  {
        pocet_bliknuti = Serial.parseInt();
        for (int i = 1; i <= pocet_bliknuti; i++)
        {
              digitalWrite(LED_ARD, HIGH);
              delay(1000);
              digitalWrite(LED_ARD, LOW);
              delay(1000);
        }

  Serial.print("Zvoleny pocet bliknuti je: ");
  Serial.println(pocet_bliknuti);
  Serial.println("-------------------------");
  pomocna_promena = 0;
  }
}

Celý kód druhé úlohy:

//==OVLÁDÁNÍ LED PŘES POTENCIOMETR==

// Definování pinů
#define LED_ZELENA 2
#define LED_ZLUTA 3
#define LED_ORANZOVA 4
#define LED_CERVENA 5
#define POTENCIOMETR A0

// Proměnné
int hodnota_potenciometr;

void setup()
{
  pinMode(LED_ZELENA, OUTPUT);
  pinMode(LED_ZLUTA, OUTPUT);
  pinMode(LED_ORANZOVA, OUTPUT);
  pinMode(LED_CERVENA, OUTPUT);
  pinMode(POTENCIOMETR, INPUT);
  Serial.begin(9600);
}

void loop()
{
  hodnota_potenciometr = analogRead(POTENCIOMETR);
  Serial.print("Hodnota potenciometru je: ");
  Serial.println(hodnota_potenciometr);

  // Využití ternárního výrazu
  digitalWrite(LED_ZELENA,(hodnota_potenciometr > 290) ? HIGH : LOW);
  digitalWrite(LED_ZLUTA,(hodnota_potenciometr > 435) ? HIGH : LOW);
  digitalWrite(LED_ORANZOVA,(hodnota_potenciometr > 725) ? HIGH : LOW);
  digitalWrite(LED_CERVENA,(hodnota_potenciometr > 1015) ? HIGH : LOW);

}

Kódy máš zde, kdyby nebylo něco jasné, tak mi napiš. :)

Editováno 18.2.2023 16:30
 
Odpovědět
18.2.2023 16:28
Avatar
Odpovídá na Dominik Němeček
Roman Štěpánek :18.2.2023 16:44

Moc díky!!! Asi jsem někde přehlédl, že mám zadat hodnotu kolikrát do sériového monitoru !!!
Moc díky za celé kódy!!!
Roman

 
Odpovědět
18.2.2023 16:44
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 5 zpráv z 5.