这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » MCU » 关于linux操作系统下串口的问题(斑竹、斑竹)

共11条 1/2 1 2 跳转至

关于linux操作系统下串口的问题(斑竹、斑竹)

菜鸟
2006-02-11 03:34:38     打赏

要实现20个串口通讯,程序和串口卡都已经搞定,但linux操作系统的/dev/下串口数量最多只有8个。想将其在启动时就扩展到20个,请哪位高手指点。

在网上我也看了一些资料,但行不通,问题集中在启动时将其20个串口驱动起来,多串口卡就可以找到了。

谢谢。zj-clove@263.net

[em06] [align=right][color=#000066][此贴子已经被作者于2006-2-10 19:36:12编辑过][/color][/align]



关键词: 关于     linux     操作系统     串口     问题     斑竹    

菜鸟
2006-02-13 19:09:00     打赏
2楼
以下是引用jizhang在2006-2-10 19:35:00的发言:

要实现20个串口通讯,程序和串口卡都已经搞定,但linux操作系统的/dev/下串口数量最多只有8个。想将其在启动时就扩展到20个,请哪位高手指点。

在网上我也看了一些资料,但行不通,问题集中在启动时将其20个串口驱动起来,多串口卡就可以找到了。

谢谢。zj-clove@263.net

[em06]

/dev 目录下的串口设备的数量是可以自己控制的,ttyS0---ttySn

redhat 系列应该不止8个吧,debian只有5个,自己用命令mknod新建就是了;

至于启动时驱动各个串口,你可以在rc.local等类似启动脚本里进行初始化,用

setserial 命令;


菜鸟
2006-02-14 02:03:00     打赏
3楼

谢谢。

我用的是red9,在网上找了一些资料,在rc.local中配置过,没有成功。

用的MAKEDEV命令。

setserial只是用来修改串口参数的,我想创建几个串口驱动,开机后创建的串口与串口卡连接不上。

不知道哪来的串口卡,连个驱动都没有,准备更换ing。


菜鸟
2006-02-14 07:22:00     打赏
4楼
以下是引用jizhang在2006-2-13 18:03:00的发言:

谢谢。

我用的是red9,在网上找了一些资料,在rc.local中配置过,没有成功。

用的MAKEDEV命令。

setserial只是用来修改串口参数的,我想创建几个串口驱动,开机后创建的串口与串口卡连接不上。

不知道哪来的串口卡,连个驱动都没有,准备更换ing。

创建几个串口驱动?什么意思?

系统起来后用MAKEDEV命令创建“串口设备名”,

然后在rc.local中使用setserial设置串口卡,只要你的串口卡是16550a兼容的就可以,

前提是你知道你的串口卡上的串口的IO地址,中断,uart一般使用16550A就可以、、、


菜鸟
2006-02-14 16:50:00     打赏
5楼

设备名创建了,在rc.local中设置串口卡时,找不到指定设备。

在/etc/inittab增建代码:

11:2345:respawn:/sbin/mingetty ttyS11
12:2345:respawn:/sbin/mingetty ttyS12
13:2345:respawn:/sbin/mingetty ttyS13
14:2345:respawn:/sbin/mingetty ttyS14
15:2345:respawn:/sbin/mingetty ttyS15
16:2345:respawn:/sbin/mingetty ttyS16
17:2345:respawn:/sbin/mingetty ttyS17
18:2345:respawn:/sbin/mingetty ttyS18

在rc.local中使用setserial设置:

/bin/setserial /dev/ttyS11 port 0x0190 irq 3 uart 16550A
/bin/setserial /dev/ttyS12 port 0x0198 irq 3 uart 16550A
/bin/setserial /dev/ttyS13 port 0x01a0 irq 3 uart 16550A
/bin/setserial /dev/ttyS14 port 0x01a8 irq 3 uart 16550A
/bin/setserial /dev/ttyS15 port 0x01b0 irq 3 uart 16550A
/bin/setserial /dev/ttyS16 port 0x01b8 irq 3 uart 16550A
/bin/setserial /dev/ttyS17 port 0x01c0 irq 3 uart 16550A
/bin/setserial /dev/ttyS18 port 0x01c8 irq 3 uart 16550A

是否哪里出了问题?


菜鸟
2006-02-14 17:32:00     打赏
6楼
以下是引用jizhang在2006-2-14 8:50:00的发言:

设备名创建了,在rc.local中设置串口卡时,找不到指定设备。

在/etc/inittab增建代码:

11:2345:respawn:/sbin/mingetty ttyS11
12:2345:respawn:/sbin/mingetty ttyS12
13:2345:respawn:/sbin/mingetty ttyS13
14:2345:respawn:/sbin/mingetty ttyS14
15:2345:respawn:/sbin/mingetty ttyS15
16:2345:respawn:/sbin/mingetty ttyS16
17:2345:respawn:/sbin/mingetty ttyS17
18:2345:respawn:/sbin/mingetty ttyS18

在rc.local中使用setserial设置:

/bin/setserial /dev/ttyS11 port 0x0190 irq 3 uart 16550A
/bin/setserial /dev/ttyS12 port 0x0198 irq 3 uart 16550A
/bin/setserial /dev/ttyS13 port 0x01a0 irq 3 uart 16550A
/bin/setserial /dev/ttyS14 port 0x01a8 irq 3 uart 16550A
/bin/setserial /dev/ttyS15 port 0x01b0 irq 3 uart 16550A
/bin/setserial /dev/ttyS16 port 0x01b8 irq 3 uart 16550A
/bin/setserial /dev/ttyS17 port 0x01c0 irq 3 uart 16550A
/bin/setserial /dev/ttyS18 port 0x01c8 irq 3 uart 16550A

是否哪里出了问题?

在/etc/inittab中的那些设置只是为了能从串口登陆系统;与找到串口设备无关吧

setserial语法没有错误,你用中断3,不与串口2冲突吗?

cat /proc/interrupts看看哪些中断还可以使用;

把setserial后的错误信息贴出来看看


菜鸟
2006-02-14 17:38:00     打赏
7楼

这个没关系,可以将1、3串口删除

1. #cd /dev
2. #./MAKEDEV -d ttyS1
3. #./MAKEDEV -d ttyS3

实际上我用的是201中断

好的,我现在windows系统,就回linux。


菜鸟
2006-02-14 19:36:00     打赏
8楼

我是参考http://www.bloghome.cn/index.php?op=ViewArticle&articleId=6961&blogId=1531

这篇文章操作的,上面好像有你的邮箱地址。

有的命令执行不对!


菜鸟
2006-02-14 19:47:00     打赏
9楼
以下是引用jizhang在2006-2-14 11:36:00的发言:

我是参考http://www.bloghome.cn/index.php?op=ViewArticle&articleId=6961&blogId=1531

这篇文章操作的,上面好像有你的邮箱地址。

有的命令执行不对!

首先,那篇文章中的串口卡使用的是中断3,你的串口卡也是吗?

还有IO地址?你是照搬过来的,还是按照你自己的串口卡的这些参数进行设置的?

请明确你的串口卡的这些参数后,再使用MAKEDEV和setserial命令,应该可以的、

good luck!

[align=right][color=#000066][此贴子已经被作者于2006-2-14 11:47:25编辑过][/color][/align]

菜鸟
2006-02-15 20:01:00     打赏
10楼

参数用more /proc/pci命令已经确认,不会有错。

MAKEDEV生成的串口也在/dev中(ttyS...)。

用setserial就是连接不上,郁闷ing。

错误:no device or port!


共11条 1/2 1 2 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]