The part in question is under %READS DATA, i'm trying to run the accelerometer, UNLESS another pushbutton is pressed, which should make a == 1
Breaking a loop GUI?
1 vue (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Reading in accelerometer data in a GUI code. I'm trying to break the loop while reading by using the following code...
function pushbutton8_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton8 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
a = getappdata(handles.text11, 'text11');
%COMPORT
comPort = '/dev/tty.usbmodemfd121';
%READS SERIAL
[accelerometer.s,serialFlag] = setupSerial(comPort);
calCo = calibrate(accelerometer.s);
%READS DATA
while (a == 0)
if (a == 1)
closeSerial
end
[gx gy gz] = readAcc(accelerometer,calCo);
cla;
r = sqrt((gx^2)+(gy^2)+(gz^2));
r
end
guidata(hObject, handles);
My problem is that the data keeps reading even when (a == 1), which is activated from a separate pushbutton. I've already tested the outputs of both each pushbuttons and they do read 0 and 1, but when reading the data, if I press the 1 pushbutton the data will still read.
6 commentaires
Réponses (1)
Walter Roberson
le 11 Fév 2013
while true
drawnow;
a = getappdata(handles.text11, 'text11');
if a == 0; break; end
...
end
2 commentaires
Jan
le 11 Mar 2013
@Amed: Neither "oh ok" nor "anything" contains enough information to understand, if this answer has solved your problem or not. If you want help, provide more details instead of bumping the thread without new informations.
Voir également
Catégories
En savoir plus sur Loops and Conditional Statements dans Help Center et File Exchange
Produits
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!