【发布时间】:2017-02-28 08:52:26
【问题描述】:
我正在尝试将数据从我的 arduino 发送到 matlab 并使用 GUI。即使没有按下任何按钮,我也想连续读取数据。为此,我必须使用 fscanf 函数,但我不知道把它放在哪里。肯定有一个 while 循环来等待应该放置此函数的事件(例如按下的按钮)。我只是一个初学者,所以这对你来说可能是一个愚蠢的问题。 提前谢谢!
function varargout = UltraPlot(varargin)
global a;
global k;
gui_Singleton = 1;
gui_State = struct('gui_Name', mfilename, ...
'gui_Singleton', gui_Singleton, ...
'gui_OpeningFcn', @UltraPlot_OpeningFcn, ...
'gui_OutputFcn', @UltraPlot_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
disp('Ultraplot');
function UltraPlot_OpeningFcn(hObject, eventdata, handles, varargin)
global a;
global k;
a = serial('COM3');
fopen(a);
handles.output = hObject;
guidata(hObject, handles);
disp('Opening');
function varargout = UltraPlot_OutputFcn(hObject, eventdata, handles)
varargout{1} = handles.output;
global a;
global k;
disp('varargout');
function Start_Callback(hObject, eventdata, handles)
global a;
global k;
fprintf(a,'%d',1);
disp('Button pressed');
【问题讨论】:
标签: matlab arduino serial-communication