资讯

精准传达 • 有效沟通

从品牌网站建设到网络营销策划,从策略到执行的一站式服务

linux串口输入命令,linux打开串口命令

如何在linux上使用串口设备

简单的运行 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 - 配置串口为系统控制台。

linux 查看某个串口参数(波特率,数据位等)命令什么?

用CAT命令查看

#cat /proc/tty/driver/serial

如果需要配置串口参数,minicom是个很好的选择。

一、安装

sudo apt-get install minicom

二、配置

配置minicom的参数

运行$ sudo minicom -s

便进入了minicom的配置界面,使用上下键选择Serial port setup,回车。此时光标在“change which setting”后面停留,它的上面有如下菜单:

只需输入上面对应的字母,就可以进如相应的菜单进行设置。设置完成,回车,光标会回到“change which setting”后面,如此重复。完成按回车返回主菜单即可。

Linux下对串口操作的方法?

和文件一样,open /dev/ttyS0就是串口1 然后设置波特率,停止位 奇偶校验那些 ,之后read write就可以了 头文件是termios.h

closing_wait=30000;什么意思?'>linux 串口驱动中port->closing_wait=30000;什么意思?

望能帮到你。

由于公司产品要做行业市场,而产品与行业用户间PC的通讯为RS232串口方式。而行业用户那里的PC都没有串行口,而且行业用户PC操作系统为Turbo

Linux。怎么办?

办公室内有台机器是RedHat

Linux

9.0

一个是

Fedora

Core

5

。就先在这两个系统上试验吧。这两台电脑上各自本身就有2个RS232串口。

一、PCI转串口卡安装

型号NetMos

Nm9835CV

1、插入PCI卡到主机

2、启动

Linux,打开终端

3、输入命令:#setserial

/dev/ttyS0

-a

(COM-1)

显示内容:/dev/ttyS0,

Line

0,

UART:

16550A,

Port:

0x3f8,

irq:

4

Baud_base:

115200,

clos_delay:

50,

divisor:

closing_wait:

3000,

closing_wait2:

infinite

Flags:

spd_normal

skip_test

4、输入命令:#setserial

/dev/ttyS2

-a

(COM-3)

显示内容:/dev/ttyS2,

Line

2,

UART:

unknown,

Port:

0x3e8,

irq:

4

Baud_base:

115200,

clos_delay:

50,

divisor:

closing_wait:

3000,

closing_wait2:

infinite

Flags:

spd_normal

skip_test

第3、4步操作的目的主要是对主机自带串口及PCI扩展串口的区别。区别在于4显示的内容中UART:未unknow。不过若您检测这一步的时候

UART为16550A而不是unknow,证明你的系统已经认识了扩展的串口,不需要进一步设置,直接跳入第8步测试就可以了。

5、需要输入命令查看一下您当前PCI检测的状态,以便对扩展串口进行设置

#more

/proc/pci

会显示出一堆的信息,不要因为看不懂而吓坏了。只要看到类似于这个PCI的信息,比如:PCI

communication。。。或者Board

with

Nm9835CV

part。。。

可能就是这个卡了,主要看看它的终端是多少,即irq多少及分配的地址是多少。例如:(不一定完全一样)

Board

with

Nm9835CV

part

irq:11

I/O

at

0xc000

[0xc001]

serial

port

1

I/O

at

0xc400

[0xc401]

serial

port

2

I/O

at

0xc800

[0xc801]

not

used

I/O

at

0xd000

[0xd001]

not

used

I/O

at

0xd400

[0xd401]

not

used

I/O

at

0xd800

[0xd801]

not

used

6、知道PCI扩展卡的终端为11

串口1地址为0xc000

串口2地址为0xc400..

就可以设置扩展的串口了。输入命令:

setserial

/dev/ttyS2

port

0xc000

UART

16550A

irq

11

Baud_base

115200

另一个串口也类似的这么操作

7、设置完毕后,就可以看看设置的情况了,输入第2步的命令看看,UART是否就是16500A

而不是

unknow了,如果是16500A恭喜,可能设置好咯,如果不是那就再检查一下吧。

8、设置好了后是不是需要测试一下是否能够通讯呢?最好的办法是两台pc相连。如果pc为windows操作系统就用超级终端,是linux呢就用minicom吧

9、装有linux的机器,首先需要设置一下监听的串口参数,输入命令

#minicom

-s

进入界面后有个框弹出来,如果你还认识点英文单词的话,就回知道选择哪个的。应该是第三个吧,串口设置。

将第一行更改为

/dev/ttyS2

波特率也更改您所需要的。

更改完后保存,保存的那个菜单应该是

save

...

df1

最后

exit

10、在另外一台机器发送数据,这台机器minicom界面就能够收到信息了,成功后觉得挺有意思。另外不要把两个COM顺序弄翻了,如果弄错了哪个是COM3

COM4测试可就不灵便咯。

Linux串口相关的操作及绑定

@ 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打开串口设备

常用的匹配类型:


新闻标题:linux串口输入命令,linux打开串口命令
地址分享:http://cdkjz.cn/article/hdjijj.html
多年建站经验

多一份参考,总有益处

联系快上网,免费获得专属《策划方案》及报价

咨询相关问题或预约面谈,可以通过以下方式与我们联系

大客户专线   成都:13518219792   座机:028-86922220