Borrar filtros
Borrar filtros

How to insert a delay in between system commands in matlab

67 visualizaciones (últimos 30 días)
SunnyvaleGeek
SunnyvaleGeek el 17 de Jun. de 2015
Comentada: Walter Roberson el 18 de Jun. de 2015
I am sending a couple of commands as part of a .run file to communicate with a device. However, the commands need some delay in between, which cannot be added, as the chip commands do not have a delay.
I am looking for a way to avoid sending one command at a time as a.run file.

Respuestas (1)

Andrew Schenk
Andrew Schenk el 18 de Jun. de 2015
Editada: Andrew Schenk el 18 de Jun. de 2015
To insert a delay between system commands, use the MATLAB pause command which will delay execution by n seconds as shown below:
system('dir')
pause(1)
system('dir')
  1 comentario
Walter Roberson
Walter Roberson el 18 de Jun. de 2015
The question turns out to be about creating a data file for file redirection like
system("Program.exe < thedatafile")
but the poster wanted some mechanism to be able to mark delays about when individual lines of the file data was made available to the program, all within the same system() call.
This is not possible.
Some operating systems support piping the output of processes, so a program could be written which interpreted a marked-up data file, sending the lines to output and pausing appropriately.
For example one could create a ksh / bash script such as
print "First command here"
sleep 3
print "second line"
print "third line"
sleep 20
print "4th line"
and then
system('TheScript | Program')
I do not know the MS Windows equivalent

Iniciar sesión para comentar.

Community Treasure Hunt

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

Start Hunting!

Translated by