这是我很久之前写串口通信程序时编的,网上这写资料很少,我是看着MATLAB 的帮助文档自己一点点写的,虽然最后放弃了matlab 上位机程序的方案,但是还是整理了一下之前的一些收获,写下以下的说明。编译环境:MATLAB 2009a1 打开 GUIDE 工具,点击红圈中的GUIDE 图标。2 直接利用默认设置点OK 即可3 在控件篮拖拽控件到如下图的形式4进行控件设置,右击控件点“ Property Inspector” ,如图一般仅设置Tag 选项和String 选项。其中 String 选项在按钮控件中就是 GUI 显示时的字符。Tag属性较为重要,在 GUI 编程时控件的索引主要利用 Tag 选项的属性并且在 GUI 生成回调函数时候也是由 Tag 属性的值命名的。这里将“打开串口”按钮控件的 String 设置为“打开串口”,tag 设置为pb_OpenSerialPort。具体控件的设置和关于 GUI 的编程还是看下帮助(截图部分)或找本这方面的书看一下。这里对我即将用的功能简述一下,MALTAB 的 GUI 主要由两个文件,当设置好 GUIDE 时点击保存,这时将在当前路径自动产生两个名字相同的文件,但扩展标识符不同,一个为.fig 文件,一个为.m文件,.fig 主要是 GUI 图形文件,和GUIDE 设计的图像相同,.m 文件为程序文件,所有事件响应和计算功能都在这里实现。MATLAB 的按钮以及各种控件事件响应是依靠一种叫做回调函数(Callback Function)来实现的(我理解为和Visual C++中的消息映射,C#中的异步委托事件响应一种原理),自动生成的 M 文件中已经自动做好回调函数的名称和参数了,我们需要做的就是在其中添加你要进行的处理。例如:我们要在鼠标单击按钮“ 打开串口” 时进行一系列的串口初始化动作,这时右键单击“ 打开串口按钮” 如图则MALAB 会自动转向相应的M 文件的回调函数的位置。如图这里,因为该按钮的Tag 为"pb_OpenSerialPort",则GUIDE 自动生成的回调函数名即为pb_OpenSerialPort_Callback,函数有三个参数,hObject 是当前控件对象,即打开串口按钮对象(面向对象技术中的概念),索引或设置当前对象(打开串口按钮对象)时只需要引用 hObject 就可以了。例如:改变当前空间的可见性,只需调用set(hObject,'Visable','off');打开串口对象在单击该按钮时即会隐藏。ev entdata 我暂时没有用到,所以暂且不管他handles 我理解是整个 GUI 界面的索引句柄,所有 GUI 界面上的控件都可以通过他来索引,几乎有全局作用域,例如在打开串...