imx6 配置串口波特率_第四课用python来写个串口助手--界面篇(二)

本文介绍了如何使用Python的PyQt5库创建一个串口配置界面,包括串口名、波特率、数据位、校验位和停止位的设置,并通过pyuic5转换UI文件为Python代码。同时,展示了如何在主界面和配置界面之间传递串口设置参数。
AI助手已提取文章相关产品:

1、我们上一篇中已经说道了如何使用pyserial来配置串口,现在我们制作一个串口配置的界面。

2、双击打开designer.exe:

deb60b3381ab2901853d80b3eb25ba66.png

依然是新建一个界面,我们需要配置的参数有包括串口名,波特率,数据位、停止位以及校验位。

我们依次放置5个label和combox,并将5个label命名为:串口、波特率、数据位、校验位以及停止位,将5个combox分别命名为:cb_com,cb_bsp,cb_data,cb_p以及cb_stop.

接着我们在波特率的combox,也就是cb_bsp选中这个控件,右键点击-》edite items:

23483d8e1b8cf6978b70875d37387faf.png

敲入波特率,同样的编辑数据位、校验位和停止位:

9d64b183b0456dda7f14ddac5ca0e769.png
65a704d39fe5aafafa482dce175f2988.png
ad969d4cc2b77aa7cd0773723e511a0d.png

完成以后,我们将得到以下的界面:

89175c70900737cdbd89e721002cbd1c.png

在最下方增加三个按钮,分别是确定、默认和取消,命名为btn_save、btn_default以及btn_esc。

同样的我们将文件保存在ui的目录中,将ui文件转化为.py文件,在cmd输入:pyuic5 -o comset.py comset.ui

e6121edc5fe38c45f16d10d6e556334d.png

生成代码文件:

e04960616aca0c32acf4db3156b9ad1b.png

查看代码文件,已经生成代码,接着我们新建一个comsetform.py文件,敲入代码:

#coding:utf-8

from PyQt5 import QtCore, QtGui, QtWidgets

from PyQt5.QtCore import pyqtSignal

from ui.comset import Ui_comsetform

class Comsetwindow(QtWidgets.QWidget):

_signal = pyqtSignal(dict)

def __init__(self):

super(Comsetwindow,self).__init__()

self.new=Ui_comsetform()

self.new.setupUi(self)

在代码中,我们使用pyqtSignal来传递配置好的参数值,传递的参数的格式为字典类型dict

接着实现从comsetform获取配置并发送到uartform以及初始化串口combox的代码:

def initcom(self,clist):

self.new.cb_com.clear()

self.new.cb_com.addItems(clist)

def Get_set(self):

sl={}

com=self.new.cb_com.currentText()

bsp=self.new.cb_bsp.currentText()

d=self.new.cb_data.currentText()

p=self.new.cb_p.currentText()

s=self.new.cb_stop.currentText()

sl={'com':com,'bsp':bsp,'d':d,'p':p,'s':s}

self._signal.emit(sl)

我们在uart.ui中增加一个按钮串口设置:

67d12df80657e21ec12abace76f97cd1.png

接着更新ui文件到代码文件,cmd输入:pyuic5 -o uart.py uart.ui

4869292511d9adff6733ac52d4e4432f.png

打开uartform.py,改变如下:

#coding:utf-8

from PyQt5 import QtCore, QtGui, QtWidgets

from PyQt5.QtCore import pyqtSignal

from ui.uart import Ui_uartform

from comsetform import Comsetwindow

class Uartwindow(QtWidgets.QWidget):

def __init__(self):

super(Uartwindow,self).__init__()

self.new=Ui_uartform()

self.new.setupUi(self)

self.InitData()

def InitData(self):

self.cw=Comsetwindow()

self.iscwconnect=False

self.new.btn_setcom.clicked.connect(self.ShowCw)

def ShowCw(self):

self.cw.show()

if self.iscwconnect:

pass

else:

self.cw._signal.connect(self.callcw)

def callcw(self,msg):

if msg:

print(msg)

这样我们就实现了,串口配置的信息传递到主界面中,在cmd中运行:

1c77c79e315e138bd96150ed8d8226c8.png

运行界面:

5cc3b9ef813e1d3437ff2daae4037634.png

点击设置串口:

5365ec295e3f2c71fe3459c1a7f9f145.png

点击【确定】按钮,配置信息将打印在cmd中:

a1a4889eaa78b523fa7a218d91bd02af.png

下一节课,我们将使用第三课中的代码来实现,界面操作串口库,实现搜索、打开以及关闭串口。

您可能感兴趣的与本文相关内容

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值