怎么"暂停(n)"在MATLAB工作?

时间:2014-06-17 16:36:15

标签: matlab serial-port

我使用MATLAB从串口读取数据。我的一位同事正在用LabVIEW做同样的事情。他告诉我,我需要暂停代码,以便让系统有时间将数据写回来。但是,我已经读过"暂停(n)"暂停执行n秒。

我不完全确定"停止执行是什么意思。"是否阻止串口进行读写,从而使我的目的无效?

我应该使用其他功能,还是暂停(n)可以用于我的目的?

1 个答案:

答案 0 :(得分:1)

pause(n)基本上让你的程序在n秒内休眠。因此,当您调用pause时,它会使您的程序在那里等待n秒,然后继续执行下一行代码。

例如:

a = rand(3,3);
pause(2); % // Pause for 2 seconds
b = rand(4,4);

这会在3 x 3中创建一个随机a矩阵,然后程序在第二行等待两秒钟。该程序什么都不做,睡不着觉。之后,创建4 x 4随机矩阵。

要回答您的问题,会停止串口。在您决定向端口写入更多内容之前,您所做的就是允许将足够的时间数据写入串行端口。同样,您允许串行端口有足够的时间将足够的数据缓冲到端口,这样您就可以在一次读取中读取正确的字节数。