vpr:laborky:uart:arduino_pc
Rozdíly
Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.
Následující verze | Předchozí verze | ||
vpr:laborky:uart:arduino_pc [29. 11. 2017, 15.49] – vytvořeno xstoican | vpr:laborky:uart:arduino_pc [13. 12. 2017, 13.52] (aktuální) – xstoican | ||
---|---|---|---|
Řádek 1: | Řádek 1: | ||
====== UART: Posílání textu a čísel do PC ====== | ====== UART: Posílání textu a čísel do PC ====== | ||
+ | <WRAP center round info 60%> | ||
+ | Vysvětlete, | ||
+ | </ | ||
+ | |||
+ | UART je hardware, který dokáže poílat data po sériové lince libovolnou rychlostí a v různých formátech. Na arduinu jsou 3 nebo 4 piny: | ||
+ | GND - společné zemění | ||
+ | Rx - receiver | ||
+ | Tx - transmitter | ||
+ | napájení (není nutné vždy propojit) | ||
+ | |||
+ | Na arduino jsou piny 0 a 1, Rx a Tx. Vnitřně jsou propojeny s USB převodníkem. | ||
+ | |||
+ | Sériová komunikace posílá bity po jedné lince jednotlivě. Často se používá i druhá linka s hodinovým signálem, ale ta není vždy nutná. | ||
+ | |||
+ | ===== Funkce ===== | ||
+ | |||
+ | |||
+ | Na arduinu používáme objekt Serial a jeho funkce: | ||
+ | Serial.print (text, číslo, znak atd.); Vypíše z čipu do seriové linky. | ||
+ | |||
+ | Serial.println (text, číslo, znak atd.); Je stejný jako Serial.print, | ||
+ | |||
+ | Serial.read (); Vrátí kód jednoho znaku, který přišel do čipu. | ||
+ | |||
+ | Serial.readString (); Stejný jako Serial.read, | ||
+ | |||
+ | Serial.parseInt (); Vrátí celé přečtené číslo. | ||
+ | |||
+ | Serial.available (); Vrátí počet znaků které přišly do čipu a čekají na přečtení. | ||
+ | |||
+ | Serial.begin (rychlost); Nastaví na začátku komunikace její rychlost (v baudech). Většinou to je 9600. | ||
+ | |||
+ | Příklad: | ||
+ | |||
+ | < | ||
+ | Serial.begin(9600); | ||
+ | } | ||
+ | |||
+ | void loop() { | ||
+ | |||
+ | Serial.println(" | ||
+ | Serial.println(" | ||
+ | Serial.println(" | ||
+ | Serial.println(" | ||
+ | Serial.println(" | ||
+ | Serial.println(" | ||
+ | while (Serial.available() == 0); //čeká dokud nepřijdou nějaká data pro přečtení | ||
+ | int data = Serial.read(); | ||
+ | if (data == ' | ||
+ | Serial.println(" | ||
+ | } | ||
+ | else if (data == ' | ||
+ | Serial.println(" | ||
+ | } | ||
+ | else if (data == ' | ||
+ | Serial.println(" | ||
+ | } | ||
+ | else if (data == ' | ||
+ | Serial.println(" | ||
+ | } | ||
+ | Serial.println(); | ||
+ | } | ||
+ | </ | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
Tudor Alexandru Stoican | Tudor Alexandru Stoican |
vpr/laborky/uart/arduino_pc.1511966960.txt.gz · Poslední úprava: autor: xstoican