Mam zamiar napisać program w C, który ma zamiar otworzyć połączenie przez port szeregowy, i "słuchać" dla przychodzących poleceń, wtedy zajmie trochę akcji i zgłosi stan.Skąd wiadomo, który port szeregowy ma być używany w systemie Linux?
Połączenie będzie za pośrednictwem RS232 (port szeregowy) i próbuję zrozumieć, jak sprawdzić, który port otworzyć.
Kiedy używam Windowsa, jeśli podłączę swoje urządzenie USB-Serial, widzę "Prolific USB-to-Serial Comm Port (COM4)" pojawia się w menadżerze urządzeń ... ale po stronie Linuxa nie mam zobacz wszelkie zmiany w obszarze lub /dev
, widzę cały czas obecny (zakładam, że S
oznacza serial na podstawie what I've read).
Skąd mam wiedzieć, z którym się połączyć?
EDIT
Chociaż ja rozwija to na OpenSUSE 12.1 polu jądra (3.1), ostateczny program zostanie uruchomiony na uCLinux na pokładzie działa jądro 2.4Linux, więc szukam czyste rozwiązania, które będzie działać na starszych jąder
FYI C: systemu /sys
plików jak wskazano w odpowiedzi na this post nie istnieje, dopóki jądro 2.6 i moje ograniczenia zmuszają mnie trzymać się rzeczy dostępnych w jądrze 2.4.
Prawdopodobnie twój adapter portu szeregowego USB pojawi się jako '/ dev/ttyUSB0 '. Sprawdź również (to pytanie) (http://stackoverflow.com/questions/2530096/), jeśli potrzebujesz sposobu na wyliczenie portów szeregowych. –
pyserial może być pomocna tutaj. – Prasanth
@PhilippeGauthier - Byłoby to bardzo niefortunne, biorąc pod uwagę, że nie będę wiedział, czy użytkownik będzie używał kabla usb-> serial, czy prostego kabla szeregowego. :( – Mike