在嵌入式Linux上构建2个串口控制台

当前的很多嵌入式系统很多使用2个串口来进行通讯,一个串口常常作为命令行串口,给用户使用。而另一个串口可以用来通信或者作为调试串口使用。

    本文以两个串口在Linux下 一个作为调试串口,另一个作为用户命令行串口为例说明。首先,ttyS0作为调试串口,而ttyS1作为命令行串口使用。等系统启动后,命令行串口对用户是可见的,用户可以操作。而调试串口只给开发人员使用。

    在系统启动时,传递给内核参数时,首先增加console=ttyS0 115200n81,至于还需要其他什么参数,就不多说了。这样,Linux系统会把ttyS0作为默认串口控制台使用。

    接下来要修改/etc/inittab中的内容了,在该文件注释有#ttyS0::respawn地方增加2行,ttyS1::respawn:/sbin/getty -L ttyS1 115200 vt100,ttyS1::respawn:/sbin/yourprogramm -L ttyS1 115200 vt100,这样系统启动后会在登陆系统后在串口1ttyS1上直接运行用户的程序/sbin/yourprogramm。

    如果不需要在串口1上使用Linux的login,则可以使用一个-n -l参数,即ttyS1::respawn:/sbin/getty -L ttyS1 115200 vt100 -n -l /sbin/yourprogramm即可,这样在启动系统后直接运行用户程序,而没有了busybox的login命令了,而串口0上还是有login命令的。


 

运行级别设置错了,init 6是重新启动……,如果设置成6,系统会反复重启。进入单用户可以解决,首先,在GRUB时,用方向键选择你的Linux系统,按下键盘上的e,然后用方向键选择kernel那一行,在按下e,输入1(和前面的内容间用空格分开),然后回车,然后按b键,进入单用户后,修改/etc/inittab中启动级别为3或者5,重新启动即可  
  # 0 - 停机(千万不能把initdefault 设置为0 )
 # 1 - 单用户模式
 # 2 - 多用户,没有 NFS
 # 3 - 完全多用户模式(标准的运行级)
 # 4 - 没有用到
 # 5 - X11 (xwindow)
 # 6 - 重新启动 (千万不要把initdefault 设置为6 )

 

 

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值