установить скорость передачи для tty


24

Как мне установить скорость передачи для конкретного tty (в данном случае последовательный порт)? Я пытался с помощью

stty -F /dev/tty.iap ispeed 19200

Но получите ошибку Invalid argumentдля каждой скорости, которую я пробую (2400, 4800 и т. Д.), Кроме 9600 (по умолчанию). Я могу успешно изменить скорость в программе на Си, используя cfsetspeed. Нужно ли вносить изменения где-то еще, например, в ttysфайл?


Почему тег iphone? вы действительно используете iPhone?
энзотиб

ну на самом деле джейлбрейкнутый Ipod Touch, в основном то же самое. (iap - протокол доступа к ipod.) Я подумал, что этот вопрос подойдет здесь лучше, чем сайт обмена стеками Apple. Это вопрос Unix / Linux, есть такая же проблема на моем Mac.
Newenglander

1
Попробуйте просто пропустить слово "ispeed".
Кит

@ Кейт, тогда я не получаю сообщение об ошибке, но я бегу, stty -F /dev/tty.iapчтобы получить подробности, он все еще говорит speed 9600 baud;.
Newenglander

1) «Я могу успешно изменить скорость в C-программе с помощью cfsetspeed» - проверяли ли вы это sttyтогда? 2) «как файл ttys?» - какой ttysименно файл? :)
Пойдж

Ответы:


20

Я использую команду stty -F /dev/ttyUSB0 9600.


Отлично. Теперь я могу выводить команды по последовательному каналу с правильной скоростью передачи следующим образом:echo -ne 'my message to send over serial\n' > /dev/ttyUSB0
Габриэль Стейплс

4

Я использую экран для этой цели

# screen /dev/ttyUSB0 38400

работает как шарм


1
Я думаю, что цель здесь состоит в том, чтобы установить скорость передачи для устройства, чтобы вы могли затем выводить команды прямо по последовательному порту. Пример: echo -ne 'my message to send over serial\n' > /dev/ttyUSB0. Я думаю, что экран тоже отличный, но у @Kotte есть правильный ответ о том, как делать то, что просят.
Габриэль Стейплс
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.