ustaw prędkość transmisji dla tty


24

Jak ustawić prędkość transmisji dla określonego tty (w tym przypadku portu szeregowego)? Próbowałem użyć

stty -F /dev/tty.iap ispeed 19200

Ale dostaję błąd Invalid argumentdla każdej prędkości, którą próbuję (2400, 4800 itd.), Z wyjątkiem 9600 (domyślnie). Mogę z powodzeniem zmienić prędkość w programie C użyciu cfsetspeed. Czy muszę dokonać zmiany w innym miejscu, na przykład ttyspliku?


Dlaczego tag iPhone? czy naprawdę używasz iPhone'a?
enzotib

właściwie właściwie jailbreak ipod touch, w zasadzie to samo. (iap jest protokołem dostępu do iPoda.) Uznałem, że to pytanie pasuje tutaj lepiej niż strona wymiany stosów jabłek. Jest to pytanie Unix / Linux, mam ten sam problem na moim komputerze Mac.
newenglander

1
Spróbuj po prostu pominąć słowo „ispeed”.
Keith

@Keith, wtedy nie pojawia się komunikat o błędzie, ale biegnę, stty -F /dev/tty.iapaby uzyskać szczegółowe informacje, to wciąż mówi speed 9600 baud;.
newenglander

1) «Mogę z powodzeniem zmienić prędkość w programie C za pomocą cfsetspeed» - czy już to zweryfikowałeś stty? 2) «jak plik ttys?» - jaki ttysdokładnie plik? :)
poige

Odpowiedzi:


20

Używam polecenia stty -F /dev/ttyUSB0 9600.


Doskonały. Teraz mogę wysyłać polecenia szeregowo, z poprawną szybkością transmisji, w następujący sposób:echo -ne 'my message to send over serial\n' > /dev/ttyUSB0
Gabriel Staples

4

W tym celu używam ekranu

# screen /dev/ttyUSB0 38400

działa jak marzenie


1
Myślę, że celem tutaj jest ustawienie szybkości transmisji dla urządzenia, abyś mógł następnie powtarzać polecenia bezpośrednio nad szeregowym. Np echo -ne 'my message to send over serial\n' > /dev/ttyUSB0. : Myślę, że ekran też jest świetny, ale @Kotte ma poprawną odpowiedź na pytanie, jak zrobić to, o co się pyta.
Gabriel Staples
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.