EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
0 引言2 O, v, i0 ?5 z& y! v" p5 h
' ]7 |5 ]7 l3 s- |( YMatlab是MathWorks公司开发的一种科学计算软件。Matlab运行稳定、可靠、使用方便,是广大科研人员进行科学研究的得力助手。Matlab不仅具有强大的科学计算功能,还具有满足一般要求的数据采集以及界面设计开发功能。Matlab GUI(Graphic User InteRFace)就是内置于Matlab的进行图形界面开发的模块。
5 U3 b3 s8 L" ]- v 本文利用Matlab GUI设计通过串口进行数据发送和接收的界面,并利用内置于Matlab的串口通信API实现串口数据发送与接收功能。 1 Matlab GUl介绍5 s0 e$ p, x1 K& c
启动Matlab后,运行guide命令即可以启动Matlab GUI开发工具。如图1所示。% X1 T+ F* R1 v- J
![]()
E& d7 H" Q8 y* s3 t G2 i3 K( d$ D+ {/ l. v/ o" \! g8 Z2 I
新建Blank GUI,如图2所示。$ N2 e$ i6 J9 M a7 \2 p
在新建Blank GUI界面中,包含了一般的界面元素,如菜单、按钮、坐标轴、控件等。添加必要的串口通信参数设置按钮。, f ~' W* v' w2 C! l: l- l
运行后的界面如图3所示。
; s4 E' T+ ?# Q) e/ h& M) W / p' x# ?0 ]8 }) c) @
2 串口数据发送与接收功能实现# s- a# S* v" K. g% u
2.1 建立串口通信流程的基本步骤- J. Y! o; T3 {! e" G8 x; S
; r# V0 \5 `% v( v
Matlab提供了对串口进行打开、关闭、以及串口参数设置等操作的一系列函数。利用这些函数可以选择串口号、设置串口通信参数(波特率、数据位、停止位、校验位等)、进行中断控制、流控制。从建立串口通信到结束串口通信的完整流程包括以下几个步骤:- a& i" ?. O- H$ h
(1)为应用程序创建串口对象。实现该功能的函数为:. Q" u- k+ ?! ]) m; a/ O0 r' w
2 f- C y1 t( l, V' U! P, Y) T/ K8 p8 K
![]()
& u6 e; ~. p* c+ j4 n其中参数port为完整的串口名称,如cornl。PropertyName为串口通信参数,如baudrate,startbits等。创建串口对象的过程中,也可以忽略PropertyName。其函数为:
, E, ^! N: u: @; V2 O! W ![]()
" I0 @: ]. Y& c- K (2)连接打开串口。实现该功能的函数为:% r6 D9 x9 i' r0 [8 R6 {+ ]
![]()
4 w _5 C8 X' R! e) s obj即为使用创建串口对象函数的返回值。在连接打开串口后,可以对串口通信参数进行修改。
( l/ w+ L6 D; b( v; Z4 v (3)设置或者修改串口通信参数。在能够有效地进行串口通信前,必须设置正确的串口通信参数。实现该功能的函数为:
1 I4 x1 J' P, { 2 T4 k. c. N( S" |# ~
obj即为使用创建串口对象函数的返回值;PropertyName为串口通信参数,如baudrate,startbits等。) h+ t3 V$ l8 n% e% a9 M
6 j' p$ ~9 h4 ~# \9 f1 m# b. b6 |
% {- _ l, d& Q- ]7 }! ` K+ k4 H0 I; E& m& Z
|