Terminál pro Arduino

Z ModelWiki
Verze z 20. 9. 2021, 22:15, kterou vytvořil Belgarat (diskuse | příspěvky) (Linux - minicom)
Skočit na navigaci Skočit na vyhledávání

Desky založené na Arduinu se programují pomocí USB kabelu, a také je možné přes USB kabel komunikovat s Arduinem: v Arduino IDE je k dispozici Sériová konzole. Ale konzole, který je v Arduino IDE je nedokonalá, neumí ANSI sekvence ani pořádně návrat řádku. Pro lepší práci je možné použít jiné programy.

Linux - minicom

Na OS Linux je k dispozici komunikační program minicom. Na Debianu či Ubuntu se nainstaluje pomocí

apt install minicom

Arduino po připojení USB vytváří znaková zařízení /dev/ttyUSBx (x je číslo 0 - 9). Terminálový program se spustí pomocí

minicom -b 115200 -D /dev/ttyUSB0
  • důležité: terminál opustíte pomoci dvojklávesové zkratky CTRL-A Q
  • je možné, že váš účet nemá právo zápisu. Musí být ve skupině dialout. Pro přidání použijte sudo addgroup user dialout, poté se musíte znovu zalogovat, aby měl shell správné id skupin.
  • při odpojení Arduina a znovu připojení se může vytvořit nové zařízení /dev/ttyUSBx - děje se tak tehdy, když je při připojení znakové zařízení stále ještě otevřené - typicky vyškubnete Arduino s ještě spuštěným terminálem

Nastavení parametrů sériového portu

Různé Arduino aplikace mohou používat různé komunikační rychlosti. Nejpoužívanější rychlosti jsou:

  • 9600 - kompatibilni s megapomalými zařízeníni jako XpressNet
  • 19200
  • 38400 (rychlost starého telefonního modemu)
  • 57600 (novější telefonní modem)
  • 115200 - nejvyšší rychlost co Arduino zvládne

Dále se sice používá různý počet datových a stop bitů, ale pokud je program v Arduinu "normální", používá vždy 8 datových a 1 stop bit, nemusíme to Minicomu zvlášť vysvětlovat. Postačí pomocí parametru -b zvolit rychlost:

minicom -b 115200 -D /dev/ttyUSB0

Nastavení lze provést i pomocí CTRL-A P (= comm parameters):

OPTIONS: I18n         +---------[Comm Parameters]----------+
Compiled on May  3 201|                                    |
Port /dev/ttyUSB0, 23:|     Current: 115200 8N1            |
                      | Speed            Parity      Data  |
Press CTRL-A Z for hel| A: <next>        L: None     S: 5  |
                      | B: <prev>        M: Even     T: 6  |
AS88 connection lost  | C:   9600        N: Odd      U: 7  |
S88 connection lost   | D:  38400        O: Mark     V: 8  |
S88 connection lost   | E: 115200        P: Space          |
S88 connection lost   |                                    |
S88 connection lost   | Stopbits                           |
S88 connection lost   | W: 1             Q: 8-N-1          |
88 connection lost    | X: 2             R: 7-E-1          |
                      |                                    |
                      |                                    |
                      | Choice, or <Enter> to exit?        |
                      +------------------------------------+

Jendotlivými klávesami "A", "B", ... "R" se mění jednotlivé parametry. Pomocí CTRL-A O se dostaneme do menu, kde je možné nastavení uložit jako výchozí ("Save setup as dfl"):

                                                            
AS88 connect+-----[configuration]------+                    
S88 connecti| Filenames and paths      |                    
S88 connecti| File transfer protocols  |                    
S88 connecti| Serial port setup        |                    
S88 connecti| Modem and dialing        |                    
S88 connecti| Screen and keyboard      |                    
88 connectio| Save setup as dfl        |                    
88 connectio| Save setup as..          |                    
S88 connecti| Exit                     |                    
S88 connecti+--------------------------+