是否可以在终端设置Mac的波特率?如果是,如何通过终端设置终端的波特率?
我正在尝试使用Arduino(开源微控制器)与XBee(无线通信器)通过串行监视器输入终端来与Mac通信。我唯一的问题是串口监视器和终端的波特率是不同的。我可以轻松更改Arduino中串行监视器的波特率,但我不知道Mac中终端的波特率是多少。
答案 0 :(得分:11)
在Mac OS上,stty
似乎只能更改正在进行访问的终端设置。
适用于:
访问串行接口,例如cat /dev/cu.usbserial
,首先会使用默认设置。在不同的终端上使用stty
,例如stty -f /dev/cu.usbserial 230400
设置波特率,之前访问的终端设置将发生变化。
执行stty
后有一个小时间窗口,其中可以使用所需参数执行访问,例如stty -f /dev/cu.usbserial 230400 & cat /dev/cu.usbserial
执行stty
,将其分离,然后立即执行对串行设备的访问。
对于一行命令,将串行端口/dev/tty.usbserial-X
的输出记录到cat.out
并按Ctrl+C
终止记录,以下是解决方案:trap 'kill $(jobs -p)' SIGINT ; cat /dev/tty.usbserial-X | tee cat.out & stty -f /dev/tty.usbserial-X 115200
。您可以键入Ctrl+C
以终止记录到cat.out
。 (编辑)的
这似乎只适用于/dev/cu.*
设备文件。我不知道与/dev/tty.*
文件的区别。
答案 1 :(得分:1)
Minicom是一款出色的工具,能够满足您的需求。您可以在ubuntu上使用apt来获取它,但是应该为Mac检查Tutorial。
如果您打算将数据发送到Arduino,请记住串行重置问题。见http://arduino.cc/playground/Main/DisablingAutoResetOnSerialConnection
答案 2 :(得分:0)
stty 19200 左右。
检查man stty
,您可以设置停止位,速度等。