[ Príspevok: 1 ] 
AutorSpráva
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 17.02.14
Prihlásený: 25.11.20
Príspevky: 430
Témy: 185 | 185
Bydlisko: Poprad

UART (Sériová linka) je komunikačné rozhranie, ktoré sa pri Arduine štandardne používa pre výpis premenných, debugging programu a slúži taktiež pre nahratie nového firmvéru. Taktiež sa toto rozhranie používa aj pre komunikáciu, napríklad dvoch Arduín, Arduina s počítačom, alebo s perifériou. UART využíva signály TX (vysielací) a RX (prijímací). Zariadenie môže používať iba jeden zo signálov, používa sa to napríklad pri perifériách typu - UART RFID čítačky RDM6300, ktorá využíva iba TX signál.
Ovládanie Arduina cez UART z počítača
Dnes si ukážeme implementáciu komunikácie počítača s Arduinom, ktoré sú prepojené hardvérovou UART linkou Arduina. Obe zariadenia využívajú RX aj TX. Počítač bude vykonávať dopyty na Arduino, ktoré mu odpovie s výstupom. Výstup Arduina bude reportovať stavy všetkých digitálnych vývodov a analógových vstupov. V prípade Arduina Uno máme 11 digitálnych vstupno-výstupných vývodov (nerátame používané D0 a D1 pre RX a TX) a 6 analógových vstupov. Aplikácia bude schopná všetky digitálne výstupy nastavovať na hodnotu HIGH / LOW. Môže byť rozšírená o ďalšie príkazy a funkcionality. Prostredníctvom UART-u je možné príkazom dopytovať o výstup z konkrétneho senzora, výstup zo všetkých pripojených senzorov a periférii. Možnosť ovládania servo / krokových motor. V prípade serv môže byť príkaz rozšírený o rôzne parametre, napríklad: rýchlosť pohybu, smer otáčania, uhol a iné...
Ovládanie Arduina cez UART z počítača

Výstup vo Windows programe Hercules - využitý pre komunikáciu s Arduinom:
Ovládanie Arduina cez UART z počítača
Využité príkazy pre dopyt (použitie v PC / UART monitore pre používateľský vstup):
    Input? - Vráti Output - STAVY D GPIO, (STAVY ANALÓG. VSTUPOV)
    SET HIGH - nastavenie všetkých D vývodov (výstupov) na HIGH
    SET LOW - nastavenie všetkých D vývodov (výstupov) na LOW
    SET DX HIGH - nastavenie vývodu DX na HIGH
    SET DX LOW - nastavenie vývodu DX na LOW

Program je prispôsobený pre architektúru Arduina Uno (AtMega328P), a Arduino Mega (AtMega 1280 / 2560). Programová logika tak dokáže na základe direktív nastaviť špecifické premenné, hodnoty digitálnych vstupno-výstupných vývodov (51) a analógových vstupov (17).
Ovládanie Arduina cez UART z počítača
Program využíva aj isté informačné výstupy v prípade, že sa používateľ snaží nastaviť istú logickú úroveň pre vstup - INPUT (HIGH) / pullup vstup - INPUT_PULLUP (LOW), nakoľko digitálne vývody nastavené ako vstupy nemôžu byť ovládané funkciou digitalWrite, nereagujú na ňu. Implementačne využíva program 3 polia, ktoré definujú skupinu, kam daný vývod patrí. Každé pole má svoje špecifikum, na ktoré sa aplikuje príslušný pinMode, ktorý obmedzí / rozšíri možnosti použitia vývodu.

Rozlišujeme:
    Výstup - OUTPUT
    Vstup - INPUT
    Vstup +5V - INPUT_PULLUP (interný pullup rezistor 20kohm zapnutý)

Ukážka spomínaných direktív pre Arduino Uno a Mega (rozlišujú architektúru)
Ovládanie Arduina cez UART z počítača

Program i zapojenie využíva hardvérovú UART linku. Z toho dôvodu nie je možné bez odpojenia Arduina od počítača nahrať nový firmvér do Arduina, nakoľko je UART blokovaný počítačom. Program je možné upraviť aj pre virtuálnu UART linku prostredníctvom vstavanej knižnice SoftwareSerial, ktorá nebude blokovať fyzickú UART linku, prídete však v programe o ďalšie 2 ovládateľné GPIO výstupy, respektíve vstupy podľa priradenia do príslušného poľa.

Pre používateľský vstup môžete využiť COM port Arduina otvorený priamo v Serial monitore dostupnom v Arduino IDE, alebo prostredníctvom softvéru typu Terminal, Herkules, Putty, Hyperterminal. Aby používateľ videl, že UART komunikácia funguje a baudrate je správny ešte pred prvým odoslaným príkazom, Arduino každú sekundu vysiela reťazec "Zadajte prikaz - Input? / SET D2 HIGH / SET D2 LOW / SET HIGH / SET LOW" až do momentu, kým prvý krát od spustenia príjme dáta.

Programová logika (Uno, Nano, Mega compatible): https://pastebin.com/SWFcsNvZ


 [ Príspevok: 1 ] 


Ovládanie Arduina cez UART z počítača



Podobné témy

 Témy  Odpovede  Zobrazenia  Posledný príspevok 
V tomto fóre nie sú ďalšie neprečítané témy.

ovladanie cez IRda

v TV

6

930

31.01.2007 15:20

Cmoud

V tomto fóre nie sú ďalšie neprečítané témy.

ovladanie cez USB

v Elektronika

1

804

15.12.2007 11:06

POM4R4NC

V tomto fóre nie sú ďalšie neprečítané témy.

ovládanie obrazoviek cez jeden PC

v Monitory, televízory a projektory

2

246

27.02.2017 12:23

RiJoY285

V tomto fóre nie sú ďalšie neprečítané témy.

Ovládanie PC cez wifi siet

v Sieťové a internetové programy

1

948

09.05.2010 12:25

shiro

V tomto fóre nie sú ďalšie neprečítané témy.

Ovladanie elektroniky cez infraport W200I

v Mobilné zariadenia

5

777

26.12.2008 16:00

peter seal

V tomto fóre nie sú ďalšie neprečítané témy.

ovladanie druheho PC cez internet

v Sieťové a internetové programy

2

1017

19.01.2011 12:05

f4r0

V tomto fóre nie sú ďalšie neprečítané témy.

Vysokorychlostny prenos obrazu cez vzdialene ovladanie

v Sieťové a internetové programy

3

215

24.01.2014 9:38

shiro

V tomto fóre nie sú ďalšie neprečítané témy.

Program na ovládanie PC cez smarthpone

v Ostatné programy

4

297

09.07.2015 8:43

Johnnny

V tomto fóre nie sú ďalšie neprečítané témy.

Ovládanie WindowsMediaPlayer1 cez activex v delphi

v Delphi, Visual Basic

10

819

07.11.2009 0:01

Fico

V tomto fóre nie sú ďalšie neprečítané témy.

Ovládanie relé cez Arduino s webaplikáciou

v Články

0

1069

10.02.2019 0:23

martinius96

V tomto fóre nie sú ďalšie neprečítané témy.

ESP8266 - Ovládanie hlasom cez Amazon Echo Dot

v Články

3

217

30.05.2020 23:37

stiv

V tomto fóre nie sú ďalšie neprečítané témy.

Dialkové ovládanie

v Elektronika

4

4736

19.12.2010 10:09

erikoo

V tomto fóre nie sú ďalšie neprečítané témy.

Dialkove ovladanie

v TV

2

747

23.02.2009 21:45

bohem5

V tomto fóre nie sú ďalšie neprečítané témy.

Ovládanie SSH

v Sieťové a internetové programy

8

448

24.06.2009 20:09

Flexor28

V tomto fóre nie sú ďalšie neprečítané témy.

Dialkove ovladanie

v Elektronika

6

1478

24.06.2009 7:54

AlbiDartanan

Táto téma je zamknutá, nemôžete posielať nové príspevky alebo odpovedať na staršie.

ovladanie pc

v Ostatné programy

1

221

22.12.2010 21:52

Ďuri



© 2005 - 2020 PCforum, edited by JanoF