IoT: Seznámení

Z MiS
(Rozdíly mezi verzemi)
Přejít na: navigace, hledání
m
m (Vypuštěn duplicitní nadpis komentáře.)
 
(Není zobrazeno 9 mezilehlých verzí od 1 uživatele.)
Řádka 20: Řádka 20:
 
Když potřebujeme napsat poznámku ke kódu, či zakomentovat kód (aby se neprováděl), použijeme komentáře
 
Když potřebujeme napsat poznámku ke kódu, či zakomentovat kód (aby se neprováděl), použijeme komentáře
  
//jednořádkový komentář
+
<div class="Syntaxe">
+
<nowiki>
/*
+
// jednořádkový komentář
více
+
</nowiki>
řádkový
+
 
komentář
+
 
 +
/*
 +
více
 +
 
 +
řádkový
 +
 
 +
komentář
 +
<nowiki>
 +
*/
 +
</nowiki>
 +
 
 +
 
 +
/** Komentář
 +
 
 +
<nowiki>
 +
* k metodě
 +
</nowiki>
 +
 
 +
<nowiki>
 
  */
 
  */
 +
</nowiki>
 +
</div>
  
 
== Pozastavení provádění kódu ==
 
== Pozastavení provádění kódu ==
Řádka 32: Řádka 52:
 
Když potřebujeme počkat (např. aby LEDka zůstala nějakou dobu svítit), tak použijeme metodu
 
Když potřebujeme počkat (např. aby LEDka zůstala nějakou dobu svítit), tak použijeme metodu
  
<div class="Poznamka">
+
<div class="Syntaxe">
 
delay(čas);
 
delay(čas);
 
</div>
 
</div>
Řádka 53: Řádka 73:
 
Část paměti, která má datový typ a má něco uloženo v sobě.
 
Část paměti, která má datový typ a má něco uloženo v sobě.
  
int prodleva;
+
<div class="Syntaxe">
 +
int prodleva;
  
Máme proměnnou s názvem ''prodleva'', datový typ je ''int'' (celé číslo)
+
int pauza = 200;
 +
 
 +
String jmeno = "Karel";
 +
</div>
 +
 
 +
Máme proměnnou s názvem ''prodleva'', datový typ je ''int'' (celé číslo) a nemá v sobě nic uloženého.
 +
 
 +
Máme proměnnou s názvem ''pauza'', datový typ je ''int'' (celé číslo) a je v ní uložena hodnota 200.
 +
 
 +
Máme proměnnou s názvem ''jmeno'', datový typ je ''String'' a je v ní uloženo ''Karel''.
  
 
=== Práce s intem ===
 
=== Práce s intem ===
  
 
  int cislo; //definuji proměnnou s názvem číslo
 
  int cislo; //definuji proměnnou s názvem číslo
  ins cislo = 6; //definuji proměnnou s názvem číslo a dám ji číslo 6
+
  int cislo = 6; //definuji proměnnou s názvem číslo a dám ji číslo 6
 
  cislo = 8; //proměnné cislo dám číslo 8
 
  cislo = 8; //proměnné cislo dám číslo 8
 
  cislo++; //proměnná cislo se zvýší o 1
 
  cislo++; //proměnná cislo se zvýší o 1
Řádka 87: Řádka 117:
 
=== Desetinné číslo ===
 
=== Desetinné číslo ===
  
/* float a double*/
+
Zatím jsme si ukázali jen '''int''', jako číselný datový typ. Ale co když budeme chtít uložit číslo 12,6?
 +
 
 +
Tak musíme použít datový typ ''float'', či ''double''.
 +
 
 +
Jinak se s něma pracuje stejně jako s ''int''em.
 +
 
 +
float teplota = 23.4;
 +
 +
teplota = cidlo.getTeplota();
 +
 
 +
Float má ''jen'' 6 desetinných míst. Double jich má 15.
 +
 
 +
== Náhodné číslo ==
 +
 
 +
Pro náhodné číslo použijeme metodu:
 +
 
 +
<div class="Syntaxe">
 +
random(hodnota1, hodnota2);
 +
</div>
 +
 
 +
''hodnota1'' – minimální hodnota
 +
 
 +
''hodnota2'' – maximální hodnota
 +
 
 +
Chceme náhodné číslo v rozsahu od 1 do 100.
 +
 
 +
random(1, 100);
 +
 
 +
<div class="Priklad">
 +
[https://github.com/CestmirKolarik/IoTucebnice/blob/main/ArduinoIDE/Random/Random.ino Kód.]
 +
</div>
 +
 
 +
[http://wiring.org.co/reference/random_.html Oficiální dokumentace ]

Aktuální verze z 8. 6. 2022, 05:42


Obsah

Členění kódu v Arduino IDE

Při vytvoření nového souboru tam máte dvě metody void setup() a void loop()

//zde se definují proměnné, importují knihovny, apod:

void setup() {
 // put your setup code here, to run once:
 // zde napište to, co se má spustit na začátku:
}

void loop() {
 // put your main code here, to run repeatedly:
 // zde napište to, co má běžet pořád dokola:
}

Komentáře

Když potřebujeme napsat poznámku ke kódu, či zakomentovat kód (aby se neprováděl), použijeme komentáře

// jednořádkový komentář


/* více

řádkový

komentář */


/** Komentář

* k metodě

*/

Pozastavení provádění kódu

Když potřebujeme počkat (např. aby LEDka zůstala nějakou dobu svítit), tak použijeme metodu

delay(čas);

Čas je uváděn v milisekundách - tj. počkání po dobu 1. sekundy → delay(1000);

delay(500); // počká půl sekundy

Proměnné

Datové typy

Jsou různé datové typy, my budeme využívat nejvíce:

Proměnná

Část paměti, která má datový typ a má něco uloženo v sobě.

int prodleva;

int pauza = 200;

String jmeno = "Karel";

Máme proměnnou s názvem prodleva, datový typ je int (celé číslo) a nemá v sobě nic uloženého.

Máme proměnnou s názvem pauza, datový typ je int (celé číslo) a je v ní uložena hodnota 200.

Máme proměnnou s názvem jmeno, datový typ je String a je v ní uloženo Karel.

Práce s intem

int cislo; //definuji proměnnou s názvem číslo
int cislo = 6; //definuji proměnnou s názvem číslo a dám ji číslo 6
cislo = 8; //proměnné cislo dám číslo 8
cislo++; //proměnná cislo se zvýší o 1
cislo--; //proměnná cislo se sníží o 1
delay(cislo); //počká to tolik, kolik je proměnná číslo (když 1000 - tak sekundu)
delay(2 * cislo); //počká to dvojnásobek proměnné číslo

Práce s booleanem

boolean je datový typ, který má 2 stavy, 0 / 1, ne / ano, false / true

boolean splneno = true;
boolean splneno = false;
splneno = true;
splneno = false;
splneno = !splneno; //nastaví se to na opak

Proměnná v delay

V některých případech máme prodlevu vždy stejnou a opakuje se nám tam vícekrát - když se rozhodneme, že ji změníme, tak to musíme celé přepisovat. To je vcelku nepraktické, co?... Takže využijeme proměnné. Chceme, aby se proměnná jmenovala prodleva a byla na 2 sekudny - tj. 2000 ms.

int prodleva = 2000; // (napíšeme na začátek - před void setup())

delay(prodleva); // počká prodlevu (tj. 2 sekundy)

Desetinné číslo

Zatím jsme si ukázali jen int, jako číselný datový typ. Ale co když budeme chtít uložit číslo 12,6?

Tak musíme použít datový typ float, či double.

Jinak se s něma pracuje stejně jako s intem.

float teplota = 23.4;

teplota = cidlo.getTeplota();

Float má jen 6 desetinných míst. Double jich má 15.

Náhodné číslo

Pro náhodné číslo použijeme metodu:

random(hodnota1, hodnota2);

hodnota1 – minimální hodnota

hodnota2 – maximální hodnota

Chceme náhodné číslo v rozsahu od 1 do 100.

random(1, 100);

Oficiální dokumentace

Osobní nástroje
Jmenné prostory
Varianty
Akce
Výuka
Navigace
Nástroje