如何查看linux下串口是否可用?串口名称等?

http://zhidao.baidu.com/question/419148559.html

查看串口是否可用,可以对串口发送数据比如对com1口,echo lyjie126 > /dev/ttyS0
查看串口名称使用 ls -l /dev/ttyS* 一般情况下串口的名称全部在dev下面,如果你没有外插串口卡的话默认是dev下的ttyS* ,一般ttyS0对应com1,ttyS1对应com2,当然也不一定是必然的;
查看串口驱动:cat /proc/tty/drivers/serial
查看串口设备:dmesg | grep ttyS*


追问     我新查了一个扩展串口卡,但是不能用,不知道为什么!!! 回答     首先看下说明书,驱动安装好后正常是什么设备号?然后安装驱动,驱动如果安装成功一般就会有设备号了就可以用了。 追问     使用dmesg | grep ttyS* 是可以看见新增串口的,分别是ttyS5和ttyS6,中断号都是20,按照说明安装驱动了也,什么是设备号? 回答     那就是 ttyS5 ttyS6,这个2个设备号就是对应的串口设备号

 

 本人在TQ210开发板上亲自测试串口设备名称如下:

Start Qt4 PDA

Please press Enter to activate this console.
[root@EmbedSky /]# ls -l /dev/ttyS*
crw-rw----    1 root     root      204,  64 Mar 21 23:46 /dev/ttySAC0
crw-rw----    1 root     root      204,  65 Mar 21 23:46 /dev/ttySAC1
crw-rw----    1 root     root      204,  66 Mar 21 23:46 /dev/ttySAC2
crw-rw----    1 root     root      204,  67 Mar 21 23:46 /dev/ttySAC3
[root@EmbedSky /]#

java 判断串口是否空闲 判断串口是否打开_java 判断串口是否空闲

 

ARM和linux虚拟机串口通信,ARM端打不开串口设备。

http://zhidao.baidu.com/question/414519771.html

 

linux下串口的设备文件名ttyS*是如何定义的?


 

2.6.14 内核移植说明文档

4. make

然后一切 OK , 2.6 内核的编译就是这么简单。你可以在linux-2.6.14/arch/arm/boot/目录下看到我们需要的zImage文件。这就是经过压缩的内核镜像文件,把它下载到目标板上的flash 中即可运行。由于2410 已经作为 2.6 内核的标准板来支持,所以上面编译的这个内核不用什么修改即可运行,在串口可以看到内核的启动信息。主要是启动参数的问题:在2.6内核中,2410 的串口由原来的 ttyS0变为ttySAC0(听说其它的板还是保持不变,具体没有研究)。有关内核启动参数的设置以后会逐步提到。

http://www.cnitblog.com/luofuchong/archive/2007/01/10/21725.aspx 

 

移植linux2.6内核后烧写时的问题

http://ysuhb338.blog.163.com/blog/static/13452436720101023111134965/

 

移植linux2.6.29.4进友善mini2440开发板

http://bbs.ednchina.com/BLOG_ARTICLE_242292.HTM

 

 linux设备驱动,tty串口编程

XC2440开发板上已经含有S3C2440的3个串口驱动,我们只要知道各个串口的设备名称就可以了,


 


java 判断串口是否空闲 判断串口是否打开_java 判断串口是否空闲_02


204  s3c2410_serial ,204是串口的主设备号。s3c2410_serial是设备名称,


在 dev目录下 ls 一下 就可以发现


ptyd0               s3c2410_serial0     ttysa
ptyd1               s3c2410_serial1     ttysb
ptyd2               s3c2410_serial2     ttysc


 


s3c2410_serial0,s3c2410_serial1,s3c2410_serial2 分别是串口1、2、3的设备名称


下面是测试源码,打开串口1、2,程序执行后,串口1的波特率变为9600,这时候你的串口


终端就没有反应了(串口1波特率默认115200),把终端软件串口1 波特率改为9600后,


java 判断串口是否空闲 判断串口是否打开_3c_03


连接终端,回车一下,然后输入几个‘1’后,画面如上图。


这时用telnet工具登陆开发板,执行ps 查看现有运行的程序,找到tty


[root@XC2440 /root]# ps 
 
 PID   USER     TIME   COMMAND 
 
     1 root       0:04 init 
 
     2 root       0:00 [kthreadd] 
 
     3 root       0:00 [ksoftirqd/0] 
 
     5 root       0:00 [kworker/u:0] 
 
     6 root       0:00 [khelper] 
 
     7 root       0:00 [kworker/u:1] 
 
    10 root       0:00 [netns] 
 
   236 root       0:00 [sync_supers] 
 
   238 root       0:00 [bdi-default] 
 
   240 root       0:00 [kblockd] 
 
   249 root       0:00 [khubd] 
 
   252 root       0:00 [kseriod] 
 
   258 root       0:00 [kmmcd] 
 
   347 root       0:00 [rpciod] 
 
   349 root       0:00 [kworker/0:1] 
 
   355 root       0:00 [kswapd0] 
 
   356 root       0:00 [aio] 
 
   357 root       0:00 [nfsiod] 
 
   358 root       0:00 [crypto] 
 
   901 root       0:00 [mtdblock0] 
 
   906 root       0:00 [mtdblock1] 
 
   911 root       0:00 [mtdblock2] 
 
   916 root       0:00 [mtdblock3] 
 
  1028 root       0:00 [usbhid_resumer] 
 
  1049 root       0:00 [yaffs-bg-1] 
 
  1060 root       0:00 vsftpd /etc/vsftpd.conf 
 
  1065 root       0:00 -/bin/sh 
 
  1067 root       0:00 /usr/sbin/telnetd -l /bin/login 
 
  1070 root       0:18 /usr/local/qtopia/bin/qpe -qws 
 
  1071 root       0:00 boa 
 
  1072 root       0:00 [kworker/0:2] 
 
  1085 root       0:02 /usr/local/qtopia/bin/quicklauncher 
 
  1086 root       0:00 /usr/local/qtopia/bin/qss 
 
  1089 root       0:02 /usr/local/qtopia/bin/quicklauncher 
 
  1098 root       0:00 [flush-31:3] 
 
  1100 root       0:00 ./tty 
 
  1101 root       0:00 -ash 
 
  1104 root       0:00 ps 
 
 [root@XC2440 /root]# kill 1100

执行 kill 1100 后tty测试程序就被终止了,这时串口终端就可以用了,回车一下


Terminated 
 
           [@XC2440 pub]# 
 
 Please press Enter to activate this console. 
 

  Processing /etc/profile... 
 
 Done 
 
 [root@XC2440 /]# 
 
 [root@XC2440 /]#