我的机器上安装了debian6.0。它有 4 个comport,其中 2 个无法找到。通过查看系统 BIOS,我可以看到端口地址是:
PORT ADDRESS IRQ
1 3F8 4
2 2F8 3
3 3E8 10
4 2E8 11
debian 可以找到端口 1 和 2,但不能找到端口 3 和 4。据我了解,我可以使用此信息设置端口setserial
。我试过:
setserial /dev/ttyS2 port 0x03e8 irq 10 baud_base 115200
但我收到:
/dev/ttyS2: No such file or directory
/dev
在命名中创建文件安全吗ttyS2
?并尝试再次运行相同的命令?
编辑:
根据乔丹的要求:
# cat /proc/devices
Character devices:
1 mem
2 pty
3 ttyp
4 /dev/vc/0
4 tty
4 ttyS
5 /dev/tty
5 /dev/console
5 /dev/ptmx
7 vcs
10 misc
13 input
29 fb
128 ptm
136 pts
180 usb
189 usb_device
253 rtc
254 hidraw
Block devices:
259 blkext
7 loop
8 sd
65 sd
66 sd
67 sd
68 sd
69 sd
70 sd
71 sd
128 sd
129 sd
130 sd
131 sd
132 sd
133 sd
134 sd
135 sd
编辑:
所以我用以下方法制作了设备文件:
mknod -m 666 /dev/ttyS2 c 4 66
比我尝试设置 com 端口:
setserial /dev/ttyS2 port 0x03e8 irq 10 autoconfig
但收到:
/dev/ttyS2: No such device or address
事实上,有两个附加串行端口的硬件。
答案1
在 grub 引导加载程序中,我有8250.nr_uarts = 4
引导行的参数。之后,我可以使用设置串行端口setserial
答案2
我刚刚在 ARCHMI PC 上遇到了未定义的 UART 串行端口和 Linux 的类似问题。 dmesg | grep 序列号没有显示任何结果。经过多次尝试,我发现这是BIOS的问题。禁用“快速启动”选项后,一切运行顺利,串行端口已正确加载 UART,dmesg 显示结果。以防万一它偶然有帮助。