设置tty的波特率


23

如何设置特定tty(在本例中为串行端口)的波特率?我尝试使用

stty -F /dev/tty.iap ispeed 19200

但是Invalid argument,除了9600(默认值)以外,我尝试的每种速度(2400、4800等)都会出错。我可以使用在C程序中成功更改速度cfsetspeed。我是否需要在其他地方进行更改,例如ttys文件?


为什么要使用iphone标签?你真的在用iPhone吗?
enzotib 2012年

好吧,实际上是越狱的iPod touch,基本相同。(iap是ipod访问协议。)我认为这个问题比苹果的stackexchange网站更适合这里。这是Unix / Linux问题,在我的Mac上也有同样的问题。
newenglander 2012年

1
尝试仅忽略“ ispeed”一词。
基思

@Keith,然后我没有收到错误消息,但我stty -F /dev/tty.iap设法获取详细信息,它仍然显示speed 9600 baud;
newenglander 2012年

1)«我可以使用cfsetspeed成功地在C程序中更改速度»— stty那时您是否进行过验证?2)«就像ttys文件?»—究竟是什么ttys文件?:)
poige 2012年

Answers:


19

我使用命令stty -F /dev/ttyUSB0 9600


完善。现在,我可以以正确的波特率通过串行回显命令,如下所示:echo -ne 'my message to send over serial\n' > /dev/ttyUSB0
Gabriel Staples

4

我为此目的使用屏幕

# screen /dev/ttyUSB0 38400

奇迹般有效


1
我认为这里的目标是设置设备的波特率,以便您可以直接在串行后回显命令。例如:echo -ne 'my message to send over serial\n' > /dev/ttyUSB0。我认为屏幕也很棒,但是@Kotte对于如何执行要求的操作具有正确答案。
加布里埃尔·斯台普斯
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.