0 引言Matlab 是 MathWorks 公司开发的一种科学计算软件。Matlab 运行稳定、可靠、使用方便,是广阔科研人员进行科学讨论的得力助手。Matlab 不仅具有强大的科学计算功能,还具有满足一般要求的数据采集以及界面设计开发功能。Matlab GUI(Graphic User Interface)就是内置于Matlab 的进行图形界面开发的模块。本文利用 Matlab GUI 设计通过串口进行数据发送和接收的界面,并利用内置于 Matlab 的串口通信 API 实现串口数据发送与接收功能。1 Matlab GUl 介绍启动 Matlab 后,运行 guide 命令即可以启动 Matlab GUI 开发工具。如图 1 所示. 新建 Blank GUI,如图 2 所示。在新建 Blank GUI 界面中,包含了一般的界面元素,如菜单、按钮、坐标轴、控件等。添加必要的串口通信参数设置按钮。运行后的界面如图 3 所示。2 串口数据发送与接收功能实现2.1 建立串口通信流程的基本步骤Matlab 提供了对串口进行打开、关闭、以及串口参数设置等操作的一系列函数.利用这些函数可以选择串口号、设置串口通信参数(波特率、数据位、停止位、校验位等)、进行中断控制、流控制。从建立串口通信到结束串口通信的完整流程包括以下几个步骤:(1)为应用程序创建串口对象。实现该功能的函数为:其中参数 port 为完整的串口名称,如 cornl.PropertyName 为串口通信参数,如baudrate,startbits 等。创建串口对象的过程中,也可以忽略 PropertyName。其函数为:(2)连接打开串口。实现该功能的函数为:obj 即为使用创建串口对象函数的返回值。在连接打开串口后,可以对串口通信参数进行修改.(3)设置或者修改串口通信参数。在能够有效地进行串口通信前,必须设置正确的串口通信参数。实现该功能的函数为:obj 即为使用创建串口对象函数的返回值;PropertyName 为串口通信参数,如 baudrate,startbits 等。(4)从串口读写数据.在前面三个步骤正常完成后,即可以从串口读数据或者向串口写数据,也就是接收或者发送数据。实现读串口功能的函数有多个。其区别在于根据到达串口数据的类型选择合适的读函数。主要包括:fgetl,fgets,fread,fscanf。这里主要介绍 fread,fread 函数实现从串口读入二进制数据.fread的实现形式为:A=fread(obj,size)A 为读入的数据,以数组的形式存储,存储数据形式为字节;obj 即为使用创建串口对象函数的返回值;size 指定一次读操作读入字节的个数。实现写串口的函数有两个,分别为 fwr...