资源简介
最好用的MATLAB编写的调试助手,可以很好地实现串口数据的收发通信!
代码片段和文件信息
function varargout = serial_communication(varargin)
% 作者:***
% 功能:串口调试助手
% 版本:20180802 V2.0
gui_Singleton = 1;
gui_State = struct(‘gui_Name‘ mfilename ...
‘gui_Singleton‘ gui_Singleton ...
‘gui_OpeningFcn‘ @serial_communication_OpeningFcn ...
‘gui_OutputFcn‘ @serial_communication_OutputFcn ...
‘gui_LayoutFcn‘ [] ...
‘gui_Callback‘ []);
if nargin && ischar(varargin{1})
gui_State.gui_Callback = str2func(varargin{1});
end
if nargout
[varargout{1:nargout}] = gui_mainfcn(gui_State varargin{:});
else
gui_mainfcn(gui_State varargin{:});
end
function serial_communication_OpeningFcn(hobject eventdata handles varargin)
handles.output = hobject;
warning off all;
%% 改变窗口左上角的图标为icon.jpg
javaframe = get(hobject ‘Javaframe‘);
javaframe.setFigureIcon(javax.swing.ImageIcon(‘icon.jpg‘));
%% 初始化参数
hasData = false; %表征串口是否接收到数据
isShow = false; %表征是否正在进行数据显示,即是否正在执行函数dataDisp
isStopDisp = false; %表征是否按下了【停止显示】按钮
isHexDisp = false; %表征是否勾选了【十六进制显示】
isHexSend = false; %表征是否勾选了【十六进制发送】
numRec = 0; %接收字符计数
numSend = 0; %发送字符计数
strRec = ‘‘; %已接收的字符串
%读取图片数据,只在第一次运行时读取
pathstr = fileparts(which(mfilename));
if exist([pathstr ‘\lamb.mat‘] ‘file‘) == 2
load([pathstr ‘\lamb.mat‘]);
else
openData = imread(‘green.jpg‘);
closedData = imread(‘red.jpg‘);
save lamb.mat openData closedData;
end
%% 将上述参数作为应用数据,存入窗口对象内
setappdata(hobject ‘hasData‘ hasData);
setappdata(hobject ‘strRec‘ strRec);
setappdata(hobject ‘numRec‘ numRec);
setappdata(hobject ‘numSend‘ numSend);
setappdata(hobject ‘isShow‘ isShow);
setappdata(hobject ‘isStopDisp‘ isStopDisp);
setappdata(hobject ‘isHexDisp‘ isHexDisp);
setappdata(hobject ‘isHexSend‘ isHexSend);
setappdata(hobject ‘openData‘ openData);
setappdata(hobject ‘closedData‘ closedData);
%初始化串口状态指示灯,串口灯默认为关闭状态
set(handles.lamb ‘cdata‘ closedData);
guidata(hobject handles);
function varargout = serial_communication_OutputFcn(hobject eventdata handles)
varargout{1} = handles.output;
function com_Callback(hobject ~ handles)
function com_CreateFcn(hobject eventdata handles)
if ispc && isequal(get(hobject‘BackgroundColor‘) get(0‘defaultUicontrolBackgroundColor‘))
set(hobject‘BackgroundColor‘‘white‘);
end
function rate_Callback(hobject eventdata handles)
function rate_CreateFcn(hobject eventdata handles)
if ispc && isequal(get(hobject‘BackgroundColor‘) get(0‘defaultUicontrolBackgroundColor‘))
set(hobject‘BackgroundColor‘‘white‘);
end
function jiaoyan_Callback(hobject eventdata handles)
function jiaoyan_CreateFcn(hobject eventdata handles)
if ispc && isequal(get(hobject‘BackgroundColor‘) get(0‘defaultUicontrolBackgroundColor‘))
set(hobject‘BackgroundColor‘‘white‘);
end
function data_bits_Callback(hobject eventdata handles)
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 2358 2008-12-22 09:29 icon.jpg
文件 7966 2014-08-19 00:21 lamb.mat
文件 9928 2014-08-19 00:23 serial_communication.fig
文件 13987 2018-08-02 21:24 serial_communication.m
目录 0 2018-08-02 21:21 素材\
文件 11056 2014-08-19 00:21 素材\green.jpg
文件 11255 2014-08-19 00:21 素材\red.jpg
文件 5120 2018-08-02 21:21 素材\Thumbs.db
- 上一篇:Matlab小波包分解函数
- 下一篇:图像旋转 裁剪
相关资源
- Matlab小波包分解函数
- Matlab自动识别串口设备名称
- 基于峭度的ICA matlab代码程序
-
Simuli
nk电池仿真模型 - RLC电路matlab仿真m文件
- matlab矩阵运算
- 最大匹配matlab程序
- 凸轮仿真加工MATLAB程序
- LCE OCE GCEmatlab代码用于图像分割精度评
- 连续粒子群算法的matlab程序
- 窗口傅里叶正反变换matlab程序
- 改进的Bradley二值化matlab程序
- 改进的bernsen二值化算法
- matlab_webrtc_fullaec.m
- 边缘检测的matlab实现代码
- A*算法最短路径万能通用matlab代码
- 蚁群算法最短路径万能matlab源代码
- MATLAB蚁群算法ACA最短路径-注释完整
- 卡尔曼平滑
- matlab强化学习平衡杆代码
- matlab_基于QPSK的ML检测算法
- 模糊综合评判的matlab实现
- 三相全控整流电路matlab仿真
- 带转矩内环的转速、磁链闭环矢量控
- matlab实现LZW码
- matlab 三维 物体 运动 仿真
- 基于MATLAB的GUI图像处理剪裁程序设计
-
单极性SPWMsimuli
nk仿真 - 计算阶乘matlab算法
- 卡尔曼滤波算法的matlab 实现
评论
共有 条评论