IoT: Sériová komunikace

Z MiS
(Rozdíly mezi verzemi)
Přejít na: navigace, hledání
m
m
 
(Není zobrazeno 5 mezilehlých verzí od 1 uživatele.)
Řádka 40: Řádka 40:
 
Používáme 2 metody pro sériový výstup.
 
Používáme 2 metody pro sériový výstup.
  
Serial.print(); //vypíše na aktuální řádek a další výpis bude na stejném řádku
+
<div class="Syntaxe">
Serial.println(); //vypíše na aktuální řádek a další výpis bude na novém řádku
+
Serial.print(); //vypíše na aktuální řádek a další výpis bude na stejném řádku
 +
 
 +
Serial.println(); //vypíše na aktuální řádek a další výpis bude na novém řádku
 +
</div>
  
 
Jako parametr metody (to v závorkách) může být buď text v uvozovkách, nebo proměnná.
 
Jako parametr metody (to v závorkách) může být buď text v uvozovkách, nebo proměnná.
Řádka 49: Řádka 52:
 
  Serial.println("Ahoj světe");
 
  Serial.println("Ahoj světe");
  
<div class="Priklad"> [https://github.com/CestmirKolarik/IoTucebnice/blob/main/ArduinoIDE/Seriovy_vstup/Seriovy_vstup.ino Sériový výstup] </div>
+
<div class="Priklad">
 +
[https://github.com/CestmirKolarik/IoTucebnice/blob/main/ArduinoIDE/Seriovy_vystup/Seriovy_vystup.ino Sériový výstup]
 +
</div>
  
 
== Sériový vstup ==
 
== Sériový vstup ==
  
Na sériový vstup je metoda '''Serial.readString()'''
+
Na sériový vstup je metoda
 +
 
 +
<div class="Syntaxe">
 +
Serial.readString()
 +
</div>
  
 
  void loop() {
 
  void loop() {
+
  String prectenaHodnota = "";
  String prectenaHodnota = "";
+
  Serial.println("Zadejte slovo");
  Serial.println("Zadejte slovo";
+
  while(prectenaHodnota.equals("")) {
  while(prectenaHodnota == "") {
+
    prectenaHodnota = Serial.readString();
  prectenaHodnota = Serial.readString();
+
  }
  }
+
  Serial.print("Prectena hodnota je: ");
  Serial.print("Prectena hodnota je: ");
+
  Serial.println(prectenaHodnota);
  Serial.println(prectenaHodnota);
+
}
  
 
Samozřejmě nesmíme zapomenout inicializovat sériovou komunikaci <code>Serial.begin()</code>
 
Samozřejmě nesmíme zapomenout inicializovat sériovou komunikaci <code>Serial.begin()</code>
  
<div class="Priklad"> [https://github.com/CestmirKolarik/IoTucebnice/blob/main/ArduinoIDE/Seriovy_vystup/Seriovy_vystup.ino Sériový vstup] </div>
+
<div class="Priklad">
 +
[https://github.com/CestmirKolarik/IoTucebnice/blob/main/ArduinoIDE/Seriovy_vstup/Seriovy_vstup.ino Sériový vstup]
 +
</div>
 +
 
 +
== Další články ==
 +
 
 +
[http://jurasek.wz.cz/index.php/iot1/12-seriovy-io Sériový IO]

Aktuální verze z 17. 3. 2021, 14:38


Obsah

Sériová komunikace

Sériovou komunikaci používáme pro textovou obousměrnou komunikaci.

Typicky ji používáme pro kontrolní výpis při hledání chyb a ověření správné funkčnosti.

Sériový monitor otevřeme v Arduino IDE - NástrojeSériový monitor

Lze použít také PuTTy, či jiný nástroj na sériovou komunikaci.

Je nutné si zvolit správný port, na kterém zařízení běží.

Inicializuju sériovou komunikaci a zvolím si rychlost

void setup() {

Serial.begin(9600);

}

Rychlost si můžete zvolit, ale 9600 se používá nejčastěji.

Je dobré si nechat vypsat informaci o tom, že sériová komunikace funguje.

void setup() {

Serial.begin(9600);
delay(2000);
Serial.println("Sériová komunikace funguje");

}

Sériový výstup

Používáme 2 metody pro sériový výstup.

Serial.print(); //vypíše na aktuální řádek a další výpis bude na stejném řádku

Serial.println(); //vypíše na aktuální řádek a další výpis bude na novém řádku

Jako parametr metody (to v závorkách) může být buď text v uvozovkách, nebo proměnná.

String pozdrav = "Ahoj světe";
Serial.println(pozdrav);
Serial.println("Ahoj světe");

Sériový vstup

Na sériový vstup je metoda

Serial.readString()

void loop() {
  String prectenaHodnota = "";
  Serial.println("Zadejte slovo");
  while(prectenaHodnota.equals("")) {
    prectenaHodnota = Serial.readString();
  }
  Serial.print("Prectena hodnota je: ");
  Serial.println(prectenaHodnota);
}

Samozřejmě nesmíme zapomenout inicializovat sériovou komunikaci Serial.begin()

Další články

Sériový IO

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