Handling time out warning

I´m getting warning message " Warning: VISA: Timeout expired before operation completed." when acquiring data from a oscilloscope using visa() function.
How can I extend the time out period of USB port.
Thanks,
Marcelo

回答 (2 件)

Salaheddin Hosseinzadeh
Salaheddin Hosseinzadeh 2014 年 8 月 12 日

0 投票

Hello Marcelo,
lets assume you're creating your visa device as such
mydevice = visa(...);
Now you can see the device properties as follows
get(mydevice); % this shows you timeout and ...
Then you can change the device timeout by using set command
set(mydevice,'Timeout',20);
Be aware, if you allocate a huge number, then you have to wait till the end of time out in case of an error in communication!
That's as far as I can remember! Hope that helps.
Good Luck!

1 件のコメント

Salaheddin Hosseinzadeh
Salaheddin Hosseinzadeh 2014 年 8 月 12 日
Oh! BTW if you want to handle the error, which is what you said in the question title but then you asked a different question in your explanations, you have to define a callback function for the 'TimeoutFcn' or 'TimeoutErrorFcn' or a similar property of your device, which you can find it just as I explained, and you can set it using the set command explained above.
It's good to have look at the MATLAB documentation (doc) to find more about how to set the callback function ;)

サインインしてコメントする。

Kaushik Budheliya
Kaushik Budheliya 2020 年 9 月 1 日

0 投票

Hello Marcelo,
You should add pause(1); between each write and read command, it will help the instrument to read and write exact data.
I hope it will solve your problem.
Best of Luck!
fwrite(obj,...);
pause(1); % unit is second(s)
fread(obj,...);

カテゴリ

ヘルプ センター および File ExchangeInstrument Control Toolbox Supported Hardware についてさらに検索

質問済み:

2014 年 8 月 12 日

回答済み:

2020 年 9 月 1 日

Community Treasure Hunt

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

Start Hunting!

Translated by