Serial Communication Code Error

1 回表示 (過去 30 日間)
Tobias Wzl
Tobias Wzl 2017 年 10 月 24 日
コメント済み: Walter Roberson 2017 年 11 月 3 日
h=instrfindall;
for i= 1:length(h)
fopen('COM'+string(i))
end
h=instrfindall;
str=string(h.name(find(cell2mat(h.BytesAvailable))));
fclose('all');
fopen(str);
I developed this code on friday for finding out on which Port my Arduino is plugged in and it actually worked. Today I tried to implement the code into my GUI and an error is appearing.
Error: Struct contents reference from a non-struct array object.
What do I have to do, so that the error won't appear anymore?
Thank you for your help

回答 (2 件)

Nate
Nate 2017 年 10 月 26 日
Hi Tobias,
Could you please provide more information?
1) Does the code still work correctly when it is not in a GUI? 2) Could you please provide the full error? I am interested in knowing which line causes the error.
Thanks, Nate
  1 件のコメント
Tobias Wzl
Tobias Wzl 2017 年 10 月 27 日
編集済み: Tobias Wzl 2017 年 10 月 27 日
No unfortunately not, but in first place it worked in both ways I don't know what's wrong now.
If run the code separate outside of a GUI the error appears in line 6:
*Struct contents reference from a non-struct array object.
Error in Untitled (line 6) str=string(h.name(find(cell2mat(h.BytesAvailable))));*

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


Walter Roberson
Walter Roberson 2017 年 10 月 27 日
You would get that error if instrfindall returns empty.
  8 件のコメント
Tobias Wzl
Tobias Wzl 2017 年 11 月 3 日
if I execute the first command an empty answer appears --> ans=[]
if I execute the second command Matlab tells me that the function is undefined
And sorry for the late answer I was ill for the last whole week
Walter Roberson
Walter Roberson 2017 年 11 月 3 日
Hmmm, instrreset has been around in Instrument Control Toolbox since before R2006a; https://www.mathworks.com/help/instrument/instrreset.html
Anyhow, I do not know why your devices cannot be seen, unless perhaps the system considers them to already be in use for something else. Perhaps this link will help: http://www.intech.co.nz/downloads/help/mscanv5/faq_84.htm

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

カテゴリ

Help Center および File ExchangeMATLAB Support Package for Arduino Hardware についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by