EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
0 引言+ Q0 k0 R( }8 F) o3 H F
8 {/ u# r3 q' W: Y
Matlab是MathWorks公司开发的一种科学计算软件。Matlab运行稳定、可靠、使用方便,是广大科研人员进行科学研究的得力助手。Matlab不仅具有强大的科学计算功能,还具有满足一般要求的数据采集以及界面设计开发功能。Matlab GUI(Graphic User InteRFace)就是内置于Matlab的进行图形界面开发的模块。
2 v. i7 o J6 O! d1 @8 u 本文利用Matlab GUI设计通过串口进行数据发送和接收的界面,并利用内置于Matlab的串口通信API实现串口数据发送与接收功能。 1 Matlab GUl介绍
$ q6 x* x% a+ D8 R 启动Matlab后,运行guide命令即可以启动Matlab GUI开发工具。如图1所示。# |# |7 a9 P% _, P
![]()
6 @8 N! \6 [) W3 ~. ^& n
+ n: \- c# H7 `: D2 p( W9 Q! L+ C2 L/ l 新建Blank GUI,如图2所示。
2 y: I" t9 q% j' C& Z 在新建Blank GUI界面中,包含了一般的界面元素,如菜单、按钮、坐标轴、控件等。添加必要的串口通信参数设置按钮。4 H$ i6 @+ h- r7 w8 f( \
运行后的界面如图3所示。6 X4 z6 @0 i1 t% m8 D# Z/ y3 P
& t3 T( K% d' j. A! l- [2 B" E
2 串口数据发送与接收功能实现
! E# f8 d- x' ~. }0 c/ `0 k9 r2.1 建立串口通信流程的基本步骤
. `1 ^, }- v2 I9 w
; R1 F0 S( ^5 {, g- }( dMatlab提供了对串口进行打开、关闭、以及串口参数设置等操作的一系列函数。利用这些函数可以选择串口号、设置串口通信参数(波特率、数据位、停止位、校验位等)、进行中断控制、流控制。从建立串口通信到结束串口通信的完整流程包括以下几个步骤:6 R( Z- r S* c# y/ h
(1)为应用程序创建串口对象。实现该功能的函数为:
0 m9 [0 L T& w; @( {! v3 f $ ~* W: O; | n; e3 t
![]()
1 j( f9 n9 Q+ k4 Q1 V7 b其中参数port为完整的串口名称,如cornl。PropertyName为串口通信参数,如baudrate,startbits等。创建串口对象的过程中,也可以忽略PropertyName。其函数为:
* ]) U2 k/ |) ~+ E ![]()
2 }) d+ F0 N& t. T' b$ d (2)连接打开串口。实现该功能的函数为:
/ r# a/ B9 T* C3 P! [* r: D3 p* T* u" I , A; c$ {9 H9 E0 f+ t. ]) s
obj即为使用创建串口对象函数的返回值。在连接打开串口后,可以对串口通信参数进行修改。
# {4 [2 s2 ^* e1 y: d2 s0 P, o/ z (3)设置或者修改串口通信参数。在能够有效地进行串口通信前,必须设置正确的串口通信参数。实现该功能的函数为:
% e4 ?. r( C5 A7 g9 ] ![]()
5 F& [# Z* ?3 v; P& w' p' R obj即为使用创建串口对象函数的返回值;PropertyName为串口通信参数,如baudrate,startbits等。
1 }4 i! i# E, F# Q2 ] $ a) B S8 z, P% t5 l. W4 ^8 c2 H
8 U6 P' g: C( y$ J. d% V
" H* A2 w- a# E2 L. W8 J |