2024年5月10日发(作者:)

Ubuntu应用程序快速开发(单片机串口助手软件)

尽管是写串口助手软件,但后面的内容也可以用在开发其他的软件上。开发好的软件含有源代

码、deb包等。

一、串口通信模块

这里,我们使用python进行编程。通过pyserial模块可以对串口进行方便的操作。

下面先介绍一下pyserial模块。这个模块不属于标准库,因此需要自己下载安装。到这里下载:

/projects/pyserial/,下载好后解压进行安装:cd到目录下,运行命令:$python

all。安装好之后,便可以在使用了(我用的是python2.7.3)。

我最喜欢的IDE是免费的Wing101,它是一款轻量级的专业开发工具。

上半部分是编辑面板,我们将在这里编写Python程序;下面选项卡中标为“PythonShell”的

部分是我们将要用来实验某些Python代码片段的地方。当然,现在暂时用不到编辑面板。还得穿插

着说一点。笔记本上是没有RS232串行接口的,所以需要使用USB接口。Ubuntu内核中已经编译

1

了USB转串口驱动,所以,这部分是不用去管的。下面的实验中需要用到串口,故敲代码之前,

先得把单片机用USB转串口线连接在电脑上,这样ubuntu才能创建名为ttyUSB0的文件(/dev中,

可以到里面看一下,也有可能是ttyUSB1,这个具体看一下,下面的命令中也做相应的更改即可),

否则实验时串口不存在,会报错。ttyUSB0文件建立以后,还需要赋予读写权限:sudochmod777

/dev/ttyUSB0,否则也会报错。

>>>importserial

创建串口实例,命名为ser,端口就是刚才说过的/dev/ttyUSB0,波特率设置为9600bps,校验

位无。

>>>ser=('/dev/ttyUSB0',9600,parity=_NONE)

波特率、校验位、数据位、停止位、延时等也可以在串口实例创建后再设定,例如:

>>>ser=('/dev/ttyUSB0')

>>>te=9600

>>>=_NONE

奇校验为_ODD,偶校验为_EVEN。这种方法方便改变串口的参数,

在后面的GUI编程中采用这种方法。

下面的语句用来打开刚才创建好的串口实例:

>>>()

可以用方法isOpen()来检测一下串口的状态,处于打开状态返回TRUE,处于关闭状态则返回

FALSE。

>>>()

向串口发送数据时使用write()方法,参数即为要发送的数据,需为字符串形式。

2