Lazarus 3.0 (2023.12.21.)
Letöltés

  • Oldal:
  • 1

TÉMA:

USB/SERIAL Port kommunikáció MAC és LINUX alatt 2022 jan. 09 19:08 #2573

  • progmokus
  • progmokus profilkép
  • Haladó forumozó
  • Haladó forumozó
  • "Amit egyszer leírok..., azt lehet később átírom"
  • Hozzászólások: 78
  • Köszönetek: 16
Köszönjük szépen a közösség nevében is!
Windows 10, VirtualBox(Ubuntu Mate 21.04)
Lazarus 2.2.6
CodeTyphon 8.2

USB/SERIAL Port kommunikáció MAC és LINUX alatt 2022 jan. 05 15:02 #2572

  • Stella_209
  • Stella_209 profilkép Témaindító
  • Új tag
  • Új tag
  • Hozzászólások: 8
  • Köszönetek: 1
MEGOLDÁS: Részletes dokumentáció
stella.kojot.co.hu/Doc/Win_Linux_Mac_Ports.pdf
Megköszönték: progmokus

USB/SERIAL Port kommunikáció MAC és LINUX alatt 2022 jan. 05 06:43 #2571

  • Stella_209
  • Stella_209 profilkép Témaindító
  • Új tag
  • Új tag
  • Hozzászólások: 8
  • Köszönetek: 1
Megy a MAC alatti vezérlés is:
ls /dev/cu.* paranccsal terminal módban kilistázzuk az aktív portokat. Itt a kapcsolt külső eszköz nekem: /dev/cu.usbmodem******* névvel jelent meg. (*-ok egy sorszámot jelölnek).
Ha ezt a nevet beírom a LazSerial komponens Device proprty-jébe, akkor sikeresen megnyitja.

USB/SERIAL Port kommunikáció MAC és LINUX alatt 2022 jan. 05 01:11 #2570

  • Stella_209
  • Stella_209 profilkép Témaindító
  • Új tag
  • Új tag
  • Hozzászólások: 8
  • Köszönetek: 1
Linux (Ubunto 20.04) alatt megoldódott a probléma. 
A LazSerial komponens tudja kezelni a portokat, csak Linux-ban engedélyezni kell: $ sudo adduser $username dialout. Ezzel az adott felhasználónak teljes hozzáférést adunk a portokhoz.
A portok kezelésére a /dev/ könyvtár ttyn, ill. ttyUSBn vagy USB-Soros átalkítók esetében ttyACMn fájlok szolgálnak. Egy kis programmal ki lehet listáztatni az aktív portokat. 
How to list available serial ports on Linux?
Avagy a SerialWatche kis programocskával:  SerialWatcher
Ha kihúzod ill. újra csatlakoztatod a kérdéses USB kábelt, akkor a listában látod a változást. Ezzel tudod azonosítani a kérdéses portot.
Nálam: ttyACM0.
Na, ezt kell megadni: LazSerial.Device = 'ttyACM0' ;
A port hozzáférési jog és a helyes device név megadása után már vígan muzsikál a soros kommunikáció!
Most már csak MacOS (Big Sur) alatt kell megoldást találni.
 

USB/SERIAL Port kommunikáció MAC és LINUX alatt 2021 dec. 07 10:18 #2563

  • Stella_209
  • Stella_209 profilkép Témaindító
  • Új tag
  • Új tag
  • Hozzászólások: 8
  • Köszönetek: 1
Mivel Lazarussal most ismerkedek: ez a hálózati csomagkezelő nagy ötlet volt. Milyen egyszerű így csomagokat telepíteni!

USB/SERIAL Port kommunikáció MAC és LINUX alatt 2021 dec. 07 09:38 #2562

  • progmokus
  • progmokus profilkép
  • Haladó forumozó
  • Haladó forumozó
  • "Amit egyszer leírok..., azt lehet később átírom"
  • Hozzászólások: 78
  • Köszönetek: 16
A Lazarus hálózati csomagkezelőjén keresztül le lehet tölteni a PL_USB csomagot, komponens meg példa is van.
Windows 10, VirtualBox(Ubuntu Mate 21.04)
Lazarus 2.2.6
CodeTyphon 8.2
Megköszönték: Stella_209

USB/SERIAL Port kommunikáció MAC és LINUX alatt 2021 dec. 07 09:27 #2561

  • progmokus
  • progmokus profilkép
  • Haladó forumozó
  • Haladó forumozó
  • "Amit egyszer leírok..., azt lehet később átírom"
  • Hozzászólások: 78
  • Köszönetek: 16
A wiki oldalon Hardware Access  van pár leírás, de sajna én nem csináltam még ilyen dolgot, eddig csak fájlba írtam (LPT1) és az ment USB nyomtatóra...
A letöltőközpontban van valami serial komponens + példa is, de én még nem próbáltam.
Bocsi hogy nem tudtam segíteni...
Windows 10, VirtualBox(Ubuntu Mate 21.04)
Lazarus 2.2.6
CodeTyphon 8.2

USB/SERIAL Port kommunikáció MAC és LINUX alatt 2021 dec. 03 23:48 #2560

  • Stella_209
  • Stella_209 profilkép Témaindító
  • Új tag
  • Új tag
  • Hozzászólások: 8
  • Köszönetek: 1
Eddig Delphiben programoztam. Ott a TComPort komponenst használtam, ami Windows alatt szépen működött.
Most egy cross-platform programot írok Lazarusban és univerzális soros port kezelésre lenne szükségem.
Egy olyan komponens lenne jó, ami Windows/MacOs/Linux alatt is működne. Mit kellene min. tudnia?
- USB-Serial portok listázása;
- Port nyitás/zárás;
- String és buffer adatok írása/olvasása a portról;
- Legalább egy RX esemény a bejövő adatok fogadásáhor.
Mac alatt azt sem tudom, hogyan kell a létező soros portokat kilistázni. Windows alatt az Eszközkezelővel ment.

Nagyon megköszönném, hogy ha a témában járatos kolléga értelmesen elmagyarázná és esetleg egy példaprogram(részletet) is megmutatna.

Főleg a MacOS alatti megvalósítás izgat. Van egy kölcsön Mac gép nálam Big Sur op.r.-el és feltelepítettem rá a Lazarus 2.0.10-et. Szépen futtatja is a grafikus programomat. Most következne az, hogy az adatokat egy külső eszközre továbbítsam USB kapcsolaton keresztül.
 

  • Oldal:
  • 1