EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
0 引言
9 E# |4 |7 G+ k8 N $ b- \4 P# O8 ]% I% v
Matlab是MathWorks公司开发的一种科学计算软件。Matlab运行稳定、可靠、使用方便,是广大科研人员进行科学研究的得力助手。Matlab不仅具有强大的科学计算功能,还具有满足一般要求的数据采集以及界面设计开发功能。Matlab GUI(Graphic User InteRFace)就是内置于Matlab的进行图形界面开发的模块。% L2 I& c) X/ e w% t8 O7 a
本文利用Matlab GUI设计通过串口进行数据发送和接收的界面,并利用内置于Matlab的串口通信API实现串口数据发送与接收功能。 1 Matlab GUl介绍
I% A# N8 y' ~9 P$ ?6 W$ _4 t 启动Matlab后,运行guide命令即可以启动Matlab GUI开发工具。如图1所示。9 l) J4 _4 u# W3 [ ?
! n: @- s" i. g2 K
( n# ]$ d) z7 Q1 X3 E! @/ x 新建Blank GUI,如图2所示。
e" u" O: J! p 在新建Blank GUI界面中,包含了一般的界面元素,如菜单、按钮、坐标轴、控件等。添加必要的串口通信参数设置按钮。
7 ^" V4 W* F( y; l5 h 运行后的界面如图3所示。1 T& p& [' H6 L0 s! @& l
( q- P7 \. Y D9 r) p- ]
2 串口数据发送与接收功能实现
4 Y8 J' R7 P% M+ q$ z5 B; U2.1 建立串口通信流程的基本步骤
9 v6 Q( H+ V4 |$ @% J2 T
& x, Z! u- v7 k6 Q3 n0 }) Q2 O0 {Matlab提供了对串口进行打开、关闭、以及串口参数设置等操作的一系列函数。利用这些函数可以选择串口号、设置串口通信参数(波特率、数据位、停止位、校验位等)、进行中断控制、流控制。从建立串口通信到结束串口通信的完整流程包括以下几个步骤:
- b6 P0 y5 {! s& I& T9 n+ b2 O (1)为应用程序创建串口对象。实现该功能的函数为:
. x- R5 Z8 X. ?+ c' O1 Y% W/ Q* s # O/ ?1 I8 b$ ]% u6 A8 b
4 U( U2 L0 }1 Q8 ?$ a( p" E
其中参数port为完整的串口名称,如cornl。PropertyName为串口通信参数,如baudrate,startbits等。创建串口对象的过程中,也可以忽略PropertyName。其函数为:
/ o/ j s) f1 E6 P1 q7 C) o3 E ![]()
2 b4 @3 D; i2 [4 r3 ?0 m0 T+ M (2)连接打开串口。实现该功能的函数为:
. _4 ~) }5 Z1 t' z4 P ![]()
( r# e+ `/ t% A8 W' l& \ obj即为使用创建串口对象函数的返回值。在连接打开串口后,可以对串口通信参数进行修改。/ b# Q1 a9 x' q
(3)设置或者修改串口通信参数。在能够有效地进行串口通信前,必须设置正确的串口通信参数。实现该功能的函数为:6 \: z3 T$ F9 p
![]()
2 T: |* Z7 C7 U g4 r obj即为使用创建串口对象函数的返回值;PropertyName为串口通信参数,如baudrate,startbits等。9 G2 r% \* X$ t Y1 w
) X/ a* B" S) m/ r
7 K6 y+ y( P5 W$ p$ t
0 d) H4 p) s- j9 T1 b7 e7 A( Y |