Problem with Callback Function / BytesAvailableFcn on GUI
3 views (last 30 days)
Show older comments
i work since 3 days only on one thing ; to be able to receive continuously bytes from device (Arduino) on GUI programme but unfortunately i have not done. The Problem is that BytesAvailableFcn cannot be called.
function togglebutton1_Callback(hObject, eventdata, handles)
stat = get(hObject,'Value'); %returns toggle state of togglebutton1
if (stat == 1)
if ~isfield(handles, 'Ser')
set(hObject, 'String','Connected');
handles.Ser = serial('COM11','BaudRate', 9600);
handles.Ser.BytesAvailableFcnMode = 'Terminator';
set (handles.Ser,'RequestToSend','off');
set (handles.Ser,'Terminator','CR');
handles.Ser.BytesAvailableFcn = {@instrcallback,handles}; % Here the Problem!
fopen(handles.Ser) ;
end
elseif (stat == 0)
if isfield(handles, 'Ser')
fclose (handles.Ser);
handles = rmfield(handles, 'Ser');
end
end
guidata(hObject, handles)
function instrcallback(obj, eventdata, handles)
set(findobj('Tag','text2'),'String','Bytes Received!') ; % Test if that function works
3 Comments
Answers (1)
Harsha Medikonda
on 7 Jul 2015
'instrcallback' accepts two parameters. Please refer to the following documentation link
Also,please refer to the following link for the usage of bytesavailablefcn
1 Comment
Walter Roberson
on 8 Jul 2015
True, however it is only an error to specify more dummy parameters than actual arguments if one of the missing arguments is actually used.
See Also
Categories
Find more on Instrument Control Toolbox in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!