qt 设置串口起始位_Linux下QT5以上版本串口的最简单实现(测试可用)

Linux下QT5以上版本串口的最简单实现(测试可用)

1. 简介

简简单单一个串口,在Linux环境下踩了无数的雷。这里用最简单的方式实现串口通讯。

把串口的TX和RX短接,就可以收到我们发的数据了。

2. 查看串口名称

打开终端,输入命令行,看看现在设备上有的串口。看看你想用哪一个。

//查看串口名称

ls -l /dev/ttyS*

//终端输出

crw-rw---- 1 root dialout 4, 67 7月 28 08:51 /dev/ttyS1

crw-rw---- 1 root dialout 4, 67 7月 28 08:51 /dev/ttyS2

crw-rw---- 1 root dialout 4, 67 7月 28 08:51 /dev/ttyS3

3. QT代码

QT5以上的版本,可以使用“serialport”非常方便。

在.pro文件中加入一句话

QT += serialport

简单说,串口总共分三步:

第一步初始化

myCom = new QSerialPort();//这个在.h中定义了 QSerialPort *myCom;//声明对象

myCom->setPortName("/dev/ttyS3");//串口的名称

myCom->open(QIODevice::ReadWrite);//读写模式

myCom->setBaudRate(QSerialPort::Baud9600);//波特率

myCom->setBaudRate(QSerialPort::Data8);//8位数据

myCo

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
串口是串行接口(serialport)的简称,也称为串行通信接口或COM接口。串口通信是指采用串行通信协议(serialcommunicaTIon)在一条信号线上将数据一个比特一个比特地逐位进行传输的通信模式。串口按电气标准及协议来划分,包括RS-232-C、RS-422、RS485等。串行通信在串行通信中,数据在1位宽的单条线路上进行传输,一个字节的数据要分为8次,由低位到高位按顺序一位一位的进行传送。串行通信的数据是逐位传输的,发送方发送的每一位都具有固定的时间间隔,这就要求接收方也要按照发送方同样的时间间隔来接收每一位。不仅如此,接收方还必须能够确定一个信息组的开始和结束。常用的两种基本串行通信方式包括同步通信和异步通信。1、串行同步通信同步通信(SYNC:synchronousdatacommunicaTIon)是指在约定的通信速率下,发送端和接收端的时钟信号频率和相位始终保持一致(同步),这样就保证了通信双方在发送和接收数据时具有完全一致的定时关系。同步通信把许多字符组成一个信息组(信息帧),每帧的开始用同步字符来指示,一次通信只传送一帧信息。在传输数据的同时还需要传输时钟信号,以便接收方可以用时针信号来确定每个信息位。同步通信的优点是传送信息的位数几乎不受限制,一次通信传输的数据有几十到几千个字节,通信效率较高。同步通信的缺点是要求在通信中始终保持精确的同步时钟,即发送时钟和接收时钟要严格的同步(常用的做法是两个设备使用同一个时钟源)。在后续的串口通信与编程中将只讨论异步通信方式,所以在这里就不对同步通信做过多的赘述了。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值