lamp on off in app designer

79 visualizaciones (últimos 30 días)
Saad Oussaada
Saad Oussaada el 2 de Mzo. de 2020
Comentada: Saad Oussaada el 3 de Mzo. de 2020
hi everyone !! I need a help
I had writen a program in App designer that can turn on or off a lamp with arduino , the probleme is it runs for one time , I want to add a loop but it doesn't work
someone can help me please
this is the program
a = arduino('com8','uno');
b = readDigitalPin(a,'D3');
if b == 1
app.Lamp.Enable = 'on';
else
app.Lamp.Enable = 'off';
end

Respuesta aceptada

Kojiro Saito
Kojiro Saito el 3 de Mzo. de 2020
In order to run iteratively, you need to call readDigitalPin in while loop or for loop.
If you want to run specified times, for example, 100 times with an interval of 1 second, add the following in startUpFcn callback.
a = arduino('com8','uno');
iter = 0;
while iter < 100
b = readDigitalPin(a,'D3');
if b == 1
app.Lamp.Enable = 'on';
else
app.Lamp.Enable = 'off';
end
iter = iter + 1;
pause(1);
end
Alternatively, you can use timer class.
If you want to run forever, you can use while loop in startUpFcn callback.
a = arduino('com8','uno');
while true
b = readDigitalPin(a,'D3');
if b == 1
app.Lamp.Enable = 'on';
else
app.Lamp.Enable = 'off';
end
pause(1);
end
You can stop the iteration by Ctrl+C.
  1 comentario
Saad Oussaada
Saad Oussaada el 3 de Mzo. de 2020
thank you so much , it is working

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Instrument Control Toolbox en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by