thepocketwade Asked: 2009-06-24 10:59:20 +0800 CST2009-06-24 10:59:20 +0800 CST 2009-06-24 10:59:20 +0800 CST 如何确定串口的波特率? 772 我正在设置一个控制台服务器,我需要确定我的端口的正确波特率。如果可能的话,我想从命令行执行此操作。有谁知道怎么做? linux serial console-server 3 个回答 Voted cjs 2009-06-24T22:19:05+08:002009-06-24T22:19:05+08:00 setserial是特定于 Linux 的,但您也可以使用该stty命令(适用于任何 Unix)来检查任何 tty 的速度和其他特性。 stty对其标准输入进行操作,因此stty < /dev/ttyXX将为您提供有关该特定 tty 的信息。或者,如果您无法设置 的标准输入stty,则可以使用该-F /dev/ttyXX选项。 Best Answer andrewd18 2009-06-24T11:14:58+08:002009-06-24T11:14:58+08:00 您正在寻找的程序称为“setserial”。 http://linux.die.net/man/8/setserial user10489 2009-06-24T11:36:37+08:002009-06-24T11:36:37+08:00 由于您提到了控制台服务器并且这个问题被标记为 linux,所以我假设您正在连接到 linux 服务器。服务器必须配置为使用串行控制台,因此有几个地方需要检查。 内核设置涉及将“console”参数添加到内核的命令行。例如,添加“console=ttyS0,9600”告诉内核以 9600 波特率将消息发送到第一个串行端口(/dev/ttyS0,在 DOS/Windows 术语中为 COM1)。您可以通过引导加载程序配置将其添加到命令行。如果使用 grub,这通常是一个名为 /boot/grub/grub.conf 的文件。请注意,您可以为传统键盘/视频控制台 (tty0) 以及串行 (/dev/ttyS0) 设置多个控制台参数。例如:“控制台=tty0 控制台=ttyS0,9600” 要通过串行提供登录提示,您需要编辑 /etc/inittab 并添加/编辑如下所示的行。s0:12345:respawn:/sbin/agetty 9600 ttyS0 vt100 这一行告诉 agetty 程序以 9600 波特在 /dev/ttyS0 上生成登录提示。 请注意,您通常希望在内核和 agetty 设置之间匹配串行端口和波特率。通过检查上面的配置,您应该能够确定服务器波特率。
setserial
是特定于 Linux 的,但您也可以使用该stty
命令(适用于任何 Unix)来检查任何 tty 的速度和其他特性。stty
对其标准输入进行操作,因此stty < /dev/ttyXX
将为您提供有关该特定 tty 的信息。或者,如果您无法设置 的标准输入stty
,则可以使用该-F /dev/ttyXX
选项。您正在寻找的程序称为“setserial”。
http://linux.die.net/man/8/setserial
由于您提到了控制台服务器并且这个问题被标记为 linux,所以我假设您正在连接到 linux 服务器。服务器必须配置为使用串行控制台,因此有几个地方需要检查。
内核设置涉及将“console”参数添加到内核的命令行。例如,添加“console=ttyS0,9600”告诉内核以 9600 波特率将消息发送到第一个串行端口(/dev/ttyS0,在 DOS/Windows 术语中为 COM1)。您可以通过引导加载程序配置将其添加到命令行。如果使用 grub,这通常是一个名为 /boot/grub/grub.conf 的文件。请注意,您可以为传统键盘/视频控制台 (tty0) 以及串行 (/dev/ttyS0) 设置多个控制台参数。例如:“控制台=tty0 控制台=ttyS0,9600”
要通过串行提供登录提示,您需要编辑 /etc/inittab 并添加/编辑如下所示的行。s0:12345:respawn:/sbin/agetty 9600 ttyS0 vt100 这一行告诉 agetty 程序以 9600 波特在 /dev/ttyS0 上生成登录提示。
请注意,您通常希望在内核和 agetty 设置之间匹配串行端口和波特率。通过检查上面的配置,您应该能够确定服务器波特率。