FreeBSD handbook中文版 15 串口通讯(2) FreeBSD 系统的线缆类型,线缆的类型需要针对一些终端。 第2 页FreeBSD 使用手册 15.2.2.2 端口 串行端口是FreeBSD 主机与终端传输数据的设备。这节描述了端口的种类和他们在 FreeBSD 上的地址。 15.2.2.2.1 几种端口 有好几种端口存在。你在购买和做线缆之前,你需要确定它是否适合你机器的接线端。 绝大多数的接线端有DB25 端口。个人电脑包括运行FreeBSD 的PC 机,有DB25 或DB9 端口。如果你有一个多端口的串行卡,你可以使用RJ-12 或RJ-45 端口。请仔细看看硬件 的说明。 15.2.2.2.2 端口名称 在FreeBSD 中,你可以通过/dev 目录中的一个记录来访问每个串行端口。有两种不同 的记录: . 呼入端口被命名为/dev/ttyd N,这儿N 是端口号,从零开始。通常,你使用呼入端 口作为接线端。呼入端口要求数据线使用载波检测信号来工作。 . 呼出端口被命名为/dev/cuaa N。你通常不使用呼出端口作为接线端,只使用modem。 如果串行线或接线端不支持载波检测数据传输,你可以使用呼出端口。 如果你已经连接到了第一个串行端口,那你需要使用/dev/ttyd0 来应用接线端。如果它 是在第二个串行口,那就是/dev/ttyd1,等等。 15.2.3 内核配置 FreeBSD 默认支持4 个串行端口。在MS-DOS 下,这些是COM1:, COM2:, COM3:和COM4:。 FreeBSD 当前支持dumb 多端口串行接口卡,如BocaBoard 1008 and 2016,就象许多Digiboard 和Stallion Technologies 制造的智能多接口卡。默认的内核只会寻找标准的COM 接口。 要看看你的内核是否支持你的串口,需要在内核启动时查看一些信息,或使用 /sbin/dmesg 命令重新播出内核启动信息。特别的,寻找以sio 为特征的启动信息。 提示:要看看带有sio 的信息,可以使用下面的命令: # /sbin/dmesg grep 'sio' 第3 页FreeBSD 使用手册 例如,在一个带有4 个串行口的系统上,这些是串行口特定的内核启动信息: sio0 at 0x3f8-0x3ff irq 4 on isa sio0: type 16550A sio1 at 0x2f8-0x2ff irq 3 on isa sio1: type 16550A sio2 at 0x3e8-0x3ef irq 5 on isa sio2: type 16550A sio3 at 0x2e8-0x2ef irq 9 on isa sio3: type 16550A 如果你的内核没有认出你的所有串行口,你需要为你的系统定制一个内核。更多有关配 置内核的细节,可以看看第9 章。 在你的内核配置文件中相关的设备行是这样的: device sio0 at isa? port "IO_COM1" tty irq 4 vector siointr device sio1 at isa? port "IO_COM2" tty irq 3 vector siointr