Kako simulirati /dev/usbserial na Linux-u - Printable Version +- DIY Electronic projects (https://forum.yu3ma.net) +-- Forum: Programiranje (https://forum.yu3ma.net/forumdisplay.php?fid=58) +--- Forum: Desktop (https://forum.yu3ma.net/forumdisplay.php?fid=60) +--- Thread: Kako simulirati /dev/usbserial na Linux-u (/showthread.php?tid=2315) |
Kako simulirati /dev/usbserial na Linux-u - mikikg - 12-26-2019 Pozdrav, pravim neki desktop program za Linux u C++ koji treba da prica sa nekim USB periferijama (seriski terminali, USB->serial) i trenutno imam potrebu da simuliram to ponasanje periferija jer trenutno nemam te uredjaje, imam samo protokol kako radi i koji cu da isprogramiram u simulatoru. Interesuje me kako da simuliram /dev/NESTO da bude istog tipa/osobina kao i ovi USB-seriski konverteri? Trenutno koristim ovako nesto za pisanje na "pravi" device iz glavnog programa: Code: // ... Kako mogu tu u simulatoru da se "podmetnem" a da ne menjam osnovni code-e za komunikaciju (eventulano promenim samo ime uredjaja) ? RE: Kako simulirati /dev/usbserial na Linux-u - enaB - 12-26-2019 Mozes da napravis mali C programcic koji ce da pravi par pseudo-terminala https://linux.die.net/man/7/pty pa jedan kraj (/dev/pts/X) otvori program koji pravis, a drugi, za koji dobijes samo fajl-deskriptor, nema ga u /dev/, sam taj program koji je i napravio terminale. Ponasa se kao pravi port, samo ne simulira stvarnu brzinu prenosa RE: Kako simulirati /dev/usbserial na Linux-u - mikikg - 01-05-2020 Reseno. Evo minimalisticki primer za simulator. Prvo se pokrene socat i tu ispise koja dva terminala je rezervisao (u primeru /dev/ttys019 i /dev/ttys022, menja se): Code: socat -d -d pty,raw,echo=0 pty,raw,echo=0 Dakle jedan (pravi) program gadja /dev/ttys022 dok se simulator podesi na drugi /dev/ttys019 (ili obrnuto, nebitno) i onda dalje ide vec po protokolu ... Code: // |