EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
0 引言" M6 l# v5 e5 }6 @9 d6 o% G+ q( S
9 q) ~) K6 n; U5 q7 xMatlab是MathWorks公司开发的一种科学计算软件。Matlab运行稳定、可靠、使用方便,是广大科研人员进行科学研究的得力助手。Matlab不仅具有强大的科学计算功能,还具有满足一般要求的数据采集以及界面设计开发功能。Matlab GUI(Graphic User InteRFace)就是内置于Matlab的进行图形界面开发的模块。' ~$ I- k. r6 `9 [) @& ^
本文利用Matlab GUI设计通过串口进行数据发送和接收的界面,并利用内置于Matlab的串口通信API实现串口数据发送与接收功能。 1 Matlab GUl介绍$ N! z. z% b; T: Q4 l
启动Matlab后,运行guide命令即可以启动Matlab GUI开发工具。如图1所示。
# i3 h6 |, m% C3 Z 6 V; Q; v" }1 |. K: \
^0 \: \$ T: r1 S
新建Blank GUI,如图2所示。9 ^$ S& {$ f; f0 h0 c! O
在新建Blank GUI界面中,包含了一般的界面元素,如菜单、按钮、坐标轴、控件等。添加必要的串口通信参数设置按钮。
6 d9 m1 k; p: T0 h0 b7 L# F 运行后的界面如图3所示。
# \1 E( y# F0 F \0 J$ H 8 h- g+ Q- C$ A" X! i1 S2 `; `
2 串口数据发送与接收功能实现
, z3 K) f. [9 O4 w" k8 G2.1 建立串口通信流程的基本步骤3 T1 x; t4 z! V& p2 {% |& N! G
; E" F) ?5 B- w/ ?
Matlab提供了对串口进行打开、关闭、以及串口参数设置等操作的一系列函数。利用这些函数可以选择串口号、设置串口通信参数(波特率、数据位、停止位、校验位等)、进行中断控制、流控制。从建立串口通信到结束串口通信的完整流程包括以下几个步骤:
$ ^1 D& }' W7 H2 v, Y (1)为应用程序创建串口对象。实现该功能的函数为:+ m0 W* p: _* t3 d
# C& l( G; J" ~! x% R
![]()
4 w. E6 m% D0 w: J9 N- M其中参数port为完整的串口名称,如cornl。PropertyName为串口通信参数,如baudrate,startbits等。创建串口对象的过程中,也可以忽略PropertyName。其函数为: N& h$ {. Y; n+ `2 B; {$ e h+ v
% O5 _0 L" r1 h& x8 C; b
(2)连接打开串口。实现该功能的函数为:
! _$ J0 s% }3 T3 W% j) p1 J ! q P! W) y5 l5 f; r! E
obj即为使用创建串口对象函数的返回值。在连接打开串口后,可以对串口通信参数进行修改。* @6 Y& C d9 c3 b# D- y
(3)设置或者修改串口通信参数。在能够有效地进行串口通信前,必须设置正确的串口通信参数。实现该功能的函数为:
3 U5 f# V; F) h, I" }" @& S ![]()
/ c" H1 f2 w% U# ^4 C obj即为使用创建串口对象函数的返回值;PropertyName为串口通信参数,如baudrate,startbits等。) K' T' X A7 Y( D {' o
8 {$ y3 T; S, A; f! T& u2 k
6 m! t0 z" Y0 d6 f
# z" X/ y1 D |5 I
|