FreeBSD handbook中文版 15 串口通讯( 八 )


第16 页FreeBSD 使用手册
# Serial port initial configuration
stty -f /dev/ttyid1 crtscts
stty -f /dev/cuai01 crtscts
15.4.5 Modem 设置
如果你有一个modem , 它的参数能被存储在非易失性的RAM 中 , 你将必须使用一个终端
程序来设置参数 。使用同样的通讯速率来连接modem 作为初始速度getty 将使用和配置
modem 的非易失性RAM 来匹配这些要求:
. CD asserted when connected
. DTR asserted for operation; dropping DTR hangs up line and resets modem
. CTS transmitted data flow control
. Disable XON/XOFF flow control
. RTS received data flow control
. Quiet mode (no result codes)
. No command echo
请读读你的modem 的文档找到你需要用什么命令和DIP 接口设置 。例如 , 要在一个
USRobotics Sportster 14,400 的外置modem 上设置上面的参数 , 你可以用下面这些命令:
ATZ
AT&C1&D2&H1&I0&R2&W
你也可能想要在modem 上寻找机会调节这个设置 , 例如它是否使用V.42bis 和MNP5 压
缩 。USR Sportster 14,400 外置modem 也有一些用来设置的DIP 开关 , 也许你可以使用这
些设置作为一个例子:
. Switch 1: UP -- DTR Normal
. Switch 2: Do not care (Verbal Result Codes/Numeric Result Codes)
. Switch 3: UP -- Suppress Result Codes
第17 页FreeBSD 使用手册
. Switch 4: DOWN -- No echo, offline commands
. Switch 5: UP -- Auto Answer
. Switch 6: UP -- Carrier Detect Normal
. Switch 7: UP -- Load NVRAM Defaults
. Switch 8: Do not care (Smart Mode/Dumb Mode)
15.4.5.1 锁定速率的配置
对于一个锁定速率的配置 , 你需要配置modem 来获得一个不依赖于通讯率的稳定的
modem-to-computer 的数据率 。在一个USR Sportster 14,400 外置modem 上 , 这些命令将
锁定modem-to-computer 的数据率:
ATZ
AT&B1&W
15.4.5.2 匹配速率的配置
对于一个变速的配置 , 你需要配置你的modem 来调节它的串行端口数据率来匹配接收的
数据率 。在一个USR Sportster 14,400 的外置modem 上 , 这些命令将锁定modem 的错误修
正数据率适合命令要求的速度 , 但允许串行端口速率适应non-error-corrected 的连接:
ATZ
AT&B2&W
15.4.5.3 检查modem 的配置
大多数高速的modem 提供了用来查看当前操作参数的命令 。在USR Sportster 14,400
外置modem 上 , 命令ATI5 显示了存储在非易失性RAM 中的设置 。要看看正确的modem 操作
参数 , 可以使用命令ATZ 然后是ATI4 。
如果你有一个不同牌子的modem , 检查modem 的使用手册看看如何双重检查你的modem
的配置参数 。
15.4.6 问题解答
第18 页FreeBSD 使用手册
这儿是几个检查拨号modem 的步骤 。
15.4.6.1 检查FreeBSD 系统
把你的modem 连接到FreeBSD 系统 , 启动系统 , 然后 , 如果你的modem 有一个指示灯 ,
当登陆时看看modem 的DTR 指示灯是否亮:会在系统控制台出现命令行---如果它亮 , 意味
着FreeBSD 已经在适当的通讯端口启动了一个getty 进程 , 等待modem 接受一个呼叫 。
如果DTR 指示灯不亮 , 通过控制台登陆到FreeBSD 系统 , 然后执行一个ps ax 来看
FreeBSD 是否正在正确的端口运行一个getty 进程 。你将在进程显示中看到象这样的一行:
114 ?? I 0:00.10 /usr/libexec/getty V19200 ttyd0
115 ?? I 0:00.10 /usr/libexec/getty V19200 ttyd1
如果你看到这样的:
114 d0 I 0:00.10 /usr/libexec/getty V19200 ttyd0
说明 , modem 不接受呼叫 , 这意味着getty 已经在通讯端口打开了 。这可以指出线缆有
问题或modem 错误配置 , 因为getty 不能打开通讯端口 。
如果你没有看到任何getty 进程等待打开渴望的ttyd N端口 , 在/etc/ttys 中双击你的
记录看看那儿是否有错误 。另外 , 检查日志文件/var/log/messages 看看是否有一些来自

推荐阅读