Stránka 1 z 1

sériový monitor, seriová komunikace

Napsal: 02 pro 2020, 12:24
od Mau
Prosím, může mi někdo trochu osvětlit:

- Na arduinu jsou piny pro sériovou komunikaci (RX,TX)
- v IDE je sériový monitor

jsou to dvě různé věci nebo je to to samé ? Lze to oddělit? Lze vypisovat něco samostatně na monitor, ale neposílat na sériovou linku a naopak?

jak je pak v ardiunu rozlišit?


Děkuji

Re: sériový monitor, seriová komunikace

Napsal: 02 pro 2020, 12:41
od jankop
Piny Rx, Tx jsou v Arduinu připojeny na převodník Sériová linka / USB. Co je odesláno/přijato na Tx a Rx je převedeno na protokol USB a předáno/převzato do PC na patřičný virtuální port COM. IDE Serial monitor jen zobrazuje to, co do počítače přes rozhraní RS232/USB přijde. Pochopitelně jde také něco do Arduina poslat. Je možné použít i mnohé daleko lepší programy pro PC a sériovou komunikaci. Je to například free software Hercules. Jen je třeba si uvědomit, že program, který si první alokuje virtuální port ho pro ostatní aplikace zablokuje. Když se připojím na Arduino třeba programem Hercules, již nejde se připojit pomocí IDE Serial monitorem ani nahrát sketch. Musím nejprve program Hercules odpojit softwarově od portu COM, abych ho uvolnil. V případě IDE Serial monitoru to odpojení v době programování zajišťuje IDE. Serial Monitor je velmi slabý program, mnohem více možností nabízí osvědčený Hercules nebo třeba program Termite. Z toho také plyne, že Serial Monitor primárně může komunikovat jenom se standardním Tx, Rx. Software serial musíš ošetřit jinak, třeba externím převodníkem, pak lze použít i ten Serial Monitor.
Lze to oddělit? Lze vypisovat něco samostatně na monitor, ale neposílat na sériovou linku a naopak?
Nejde to, protože Serial Monitor pouze monitoruje sériovou linku, proto se tak jmenuje.

Re: sériový monitor, seriová komunikace

Napsal: 02 pro 2020, 13:11
od Mau
OK, díky moc za odpověď.

Re: sériový monitor, seriová komunikace

Napsal: 02 pro 2020, 13:28
od Caster
Ještě to upřesním. Arduino může klidně pracovat se dvěma sériovými porty najednou, jeden standardní pro vypisování zpráv na sériový monitor a druhý (otevře se *další sériový linka s jiným názvem), který posílá data *přes jiné piny (nutno v programu definovat viz příklad v odkazu níže) například na další zařízení.

Viz podobný dotaz Can I have two separated serial monitor for the same arduino board connected to PC?

Re: sériový monitor, seriová komunikace

Napsal: 02 pro 2020, 15:29
od Mau
Díky za odkaz a upřesnění.

Re: sériový monitor, seriová komunikace

Napsal: 02 pro 2020, 16:25
od pavel1tu
Ano, jak píše Caster - jde vytvořit další sériový port na jiných PINech Arduina, než jsou ty RX/TX, pak můžeš mít připojen třeba GSM modul po "jiných" pinech a přes RX,TX/USB je stále možnost používat SerialMonitor z ArduinaIDE (nebo jakýkoliv jiný "terminál", serial client, telnet client - třeba PuTTY)

ALE - má to svá omezení (u některých Arduin ne jakékoliv PINy, max.rychlosti atd.)

Asi by byl lepší odkaz na popis knihovny než nějaké forum, kde se stejně opět doklikáš na knihovnu SoftwareSerial, kde jsou vypsaná omezení pro různá Arduina
https://www.arduino.cc/en/Reference/SoftwareSerial