本帖最后由 lb8820265 于 2019-5-9 23:11 编辑
这次介绍使用MATLAT制作串口上位机,为何想用MATLAB,因为MATLAB除了不会生孩子,其他的都会,同时MATLAB也是算法研发者的最爱。
MATLAB在2016版本中加入了APPDesigner模块,可以理解为是一个界面设计模块。在matlab中一直有一个界面设计模块叫做GUIDE,设计出来的界面就像VC6设计的,APP Designer就比较像VS设计出来的。APP Designer的界面跟漂亮,控件元素更多。
网上可以搜到很多基于GUIDE的串口代码,却少有APPDesigner设计的。今天就来一步一步展示如何设计出一个串口调试工具。
学习MATLAB最好的方法就是查看帮助,在帮助手册中搜索APP Designer就可以,界面如下:
将帮助看完,会对APP Designer有一个比较全面的了解,让我们开始。
打开APP Designer
打开MATLAB-->新建-->APP-->App设计工具,如下:
编辑界面 打开的界面如下:
页面的功能区很明显,拖入如上图所示的控件,并修改控件的ID,
其中下拉菜单添加如下图所示的端口标志。
其他控件的设置详见源码。
添加属性—全局变量 界面切换到代码视图-->编辑器-->属性-->公有属性,系统自带添加properties代码。
在中间添加如下代码:
添加私有函数—“接收”回调函数
界面切换到代码视图-->编辑器-->函数-->公有属性,系统自带添加代码。
在中间添加如下代码:
该代码的作用是接收的回调函数。
启动初始化函数 启动初始化函数的作用是在程序运行前先运行的一段代码,在设计界面右击-->回调-->添加StartupFcn回调, 如下:
系统添加startupFcn函数,添加如下代码:
代码主要是用来设置变量的初始值,确保串口已经释放。
“打开串口”回调 切换到设计视图,在“打开串口”按钮上右击-->回调-->添加回调函数,系统自动添加回调函数。
添加如下所示代码:
代码主要是设置串口参数,串口接收回调函数,UI显示。
“发送”回调 在发送按钮上同样添加回调函数如下:
代码主要作用是将发送编辑框中的内容发送出去。
演示
用VSPD虚拟两个相连的串口,然后使用另一个串口软件,设置波特率115200。运行APP Designer上的绿色的箭头。然后选择串口,点击“打开串口”灯变绿色。然后相互发送数据如下:
源码见附件。(源码需要在APP Designer中打开,新建-->APP-->App设计工具-->打开)