通过USB转232串口线与PC机连接,这时候咱们的linux系统自动安转了驱动程序,可以使用命令:dmesg 查看安装驱动的信息。
专注于为中小企业提供成都网站设计、成都网站制作、外贸网站建设服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业来凤免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了千余家企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。
使用命令 ls /dev/ttyUSB* 查看你的USB转串口的状态
使用命令 ls /dev/ttyS* 产看串口(九针)的状态
1.你要查看.串口是否可用,对串口发送数据比如对com1口,echo lyjie126 /dev/ttyS0
2.你要查看.串口名称使用 ls -l /dev/ttyS* 一般情况下串口的名称全部在dev下面,如果你没有外插串口卡的话默认是dev下的ttyS* ,一般ttyS0对应com1,ttyS1对应com2,当然也不一定是必然的;
3.你要查看.串口驱动:cat /proc/tty/drivers/serial
4.你要查看.串口设备:dmesg | grep ttyS*
@ toc
可在控制台输入
也可以用stty设置串口参数
使用后相当于串口回传,发什么回什么
发送数据
可以对串口发送数据比如对com1口
一般情况下串口的名称全部在dev下面,如果你没有外插串口卡的话默认是dev下的ttyS* ,一般ttyS0对应com1,ttyS1对应com2,当然也不一定是必然的;
如果有ttyS设备,再看/dev/有没有ttyS*,如没有就建立一个:
如果板子的设备中没有标准串口设备ttyS0,也没有ttySAC0。/dev下应该有一个USB串口:/dev/ttyUSB0.
当一个串行卡或数据卡被侦测到时,它会被指定成为第一个可用的串行设备。通常是/dev/ttyS1(cua1)或/dev/ttyS2(cua2),这完成看原已内建的串口数目。ttyS*设备会被报告在/var/run/stab内。
PC上的串口一般是ttyS,板子上Linux的串口一般叫做ttySAC
可能是linux下的串口设备没有打开,需要改变串口设备
的权限,或者根据文章头添加用户到组处理
可以通过以下命令 查看 板子上的硬件端口的内核设备名
该条命令会将 ttyUSB0所对应的硬件端口的kernel设备名 显现出来, 得到KERNEL== '1-5.5.4', 而不是之前的ttyUSB0
cmd.sh如下:
./getUSB.py 调用当前路径下的getUSB.py这个Python语言,明确此次是哪个,ttyUSB0,或者ttyUSB1挂载在端口3-1.1上
getUSB.py:
完成之后 ,设置开机启动cmd.sh(在/etc/rc.local中设置)则每次开机之后,会从/dev/ttydata获取到固定端口的数据
方式一
写入内容如下:
方式二
我的硬件序列号:ATTRS{serial}=="FTSYWCXZ"这个号是唯一的
可以通过/dev/usb_0打开串口设备
常用的匹配类型:
1.使用ls -l ttyS*命令显示如下
crw-rw----. 1 root dialout 4, 64 5月 17 02:24 /dev/ttyS0
crw-rw----. 1 root dialout 4, 65 5月 17 02:24 /dev/ttyS1
crw-rw----. 1 root dialout 4, 66 5月 17 02:24 /dev/ttyS2
crw-rw----. 1 root dialout 4, 67 5月 17 02:24 /dev/ttyS3
但你不知到哪个是真实的串口,虽然一般都是ttyS0,但也不敢妄然确定。
2.使用cat /proc/tty/driver/serial
serinfo:1.0 driver revision:
0: uart:16550A port:000003F8 irq:4 tx:0 rx:0
1: uart:unknown port:000002F8 irq:3
2: uart:unknown port:000003E8 irq:4
3: uart:unknown port:000002E8 irq:3
我们发现串口0的uart值时16550A,tx值为0,rx值也为0,因此我们断定本机只有一个串口,是串口0,即ttyS0
3.也可以用dmesg | grep ttyS*,但这个不是很好用,当然你可以自己使用正则法则取找到。
注意:还应查看是否有USB转串口,这个就很简单了:ls ttyUSB*,全部搞定。
1、查看串口是否可用,可以对串口发送数据比如对com1口,echo lyjie126 /dev/ttyS0
2、查看串口名称使用 ls -l /dev/ttyS* 一般情况下串口的名称全部在dev下面,如果你没有外插串口卡的话默认是dev下的ttyS* ,一般ttyS0对应com1,ttyS1对应com2,当然也不一定是必然的;
3、查看串口驱动:cat /proc/tty/drivers/serial
4、查看串口设备:dmesg | grep ttyS*
linux 提供了各种工具, Linux 使用 ttySx 作为一个串口设备的名称。例如,COM1 (DOS/Windows 名字) 是 ttyS0, COM2 是 ttyS1 等等。
任务: 显示检测到的系统串口支持
简单的运行 dmesg 命令
$ dmesg | grep tty
输出:
[ 37.531286] serial8250: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A
[ 37.531841] 00:0b: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A
[ 37.532138] 0000:04:00.3: ttyS1 at I/O 0x1020 (irq = 18) is a 16550A
setserial 命令
setserial 是一个程序用于设定并/或报告某个串口关联的配置信息。该信息包括串口用到的I/O 端口和中断号,以及Break键是否应被解释为Secure Attention Key 等等。 仅仅是输出如下的命令:
$ setserial -g /dev/ttyS[0123]
输出:
/dev/ttyS0, UART: 16550A, Port: 0x03f8, IRQ: 4
/dev/ttyS1, UART: 16550A, Port: 0x1020, IRQ: 18
/dev/ttyS2, UART: unknown, Port: 0x03e8, IRQ: 4
/dev/ttyS3, UART: unknown, Port: 0x02e8, IRQ: 3
带-g选项的setserial帮助找到你的Linux板子上的物理串口。
Linux 串口控制台程序
一旦串口被确定了,你就能使用许多的工具来配置Linux板子:
minicom- 用于控制modem和连接到dump 设备的最好的串口通信程序。
wvidial or other GUI dial up networking program - 一个内建智能PPP 拨号器。
getty / agetty - agetty 打开一个 tty 端口, 提示登录名称并调用 /bin/login 命令。
grub / lilo configuration - 配置串口为系统控制台。