Serial Communication - Trying to make Matlab Wait in a Loop
5 次查看(过去 30 天)
显示 更早的评论
Hello,
Basically i'm trying to make Matlab wait untill it receives a byte of data as a Trigger to run the other set of codes.
Now I'm able to receive data in Matlab from Micro-Controller but I wanted to form a loop as in if there is no data received I want matlab to continue waiting for data.
Present code:-
clear all; obj = serial('COM1','baudrate',600); set(obj,'Parity','none'); obj.StopBits=1; obj.DataBits=8; obj.ByteOrder=['bigEndian']; obj.ReadAsyncMode = 'continuous';
fopen(obj)
datain = fread(obj,1,'uchar');
fclose(obj);
delete(obj);
clear obj;
With the above code I'm able to receive but the DATA i receive in Matlab will not be the same if i 'RUN' the this code several times. But it identifies if there is transmission from the controller.
Hence since the data keeps changing I cannot include coding which compares 'DATA' received to the one required.
I'll be glad to give any further details if required. Pls help me solve this issue.
Thanks
Kishan
0 个评论
回答(2 个)
Kishan
2011-3-9
1 个评论
Walter Roberson
2011-3-9
Yes, I just re-checked the meaning of 'continuous' and BytesAvailable should apply. You might also wish to consider establishing a BytesAvailableFcn callback.
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Logical 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!