繁体   English   中英

在MATLAB中的GUI中将数据从函数转移到回调函数

[英]Tranferring data from a function to a callback function within a GUI in MATLAB

我在MATLAB(使用GUIDE创建)中有一个GUI,该GUI具有按钮回调和2个编辑框。 首先要填写编辑框,然后按下按钮在一对轴上绘制图形。

按下该按钮后,我将执行一个.m文件,该文件将编辑框数据中的数据串行发送到微控制器,并根据发送的数据接收一些计算出的数据。 该数据在另一个单独的功能文件中生成,该文件处理从微控制器发送回的串行数据。

现在,我想将此数据传输到按钮回调函数,以便可以将其绘制在一对轴上。 没有全局变量,我该怎么办? 问题是,每次我从微控制器接收串行数据时,我都必须不断更新绘图,这一事实使问题变得复杂。

按钮回调的概述如下:

% --- Executes on button press in angle_speed_pushbutton_callback.
function angle_speed_pushbutton_callback_Callback(hObject, eventdata, handles)
% hObject    handle to angle_speed_pushbutton_callback (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)


angle1 = handles.xy_angle;  %These values are obtained from the edit boxes
angle2 = handles.xz_angle; 
delay = handles.speed;

Testbed_Calibration_main; %Main function which sends data serially to the microcontroller

% I want to transfer the data received by the function which handles the microcontroller output here

% plot transferred data on axes here 

先感谢您。 :-)

我想你想要的是使用guidata ,有一个很好的解释在这里和后这里就同一问题。 您也可以使用setappdata ,但这类似于全局数据。

在为程序做GUI时遇到类似的问题。 我终于意识到gui m文件可以是一个脚本,因此可以使用所有对象句柄。 据我了解,也许您可​​以将其应用于您的问题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM