Timeout problem in matlab
Ältere Kommentare anzeigen
Hi,
I am trying to read data through serial communication in matlab
I am reading 2 bytes of data
First byte is zero for most of the times and 2nd byte contains information.
I am getting timeout error Is there any command to read data starting with zeros Warning: Unsuccessful read: A timeout occurred.
Code:
nexys = serial('COM1', 'BaudRate', 9600, 'Parity', 'odd', 'Terminator', '', 'Timeout', 1);
fopen(nexys);
myNum = 4563;
%fprintf(nexys, 'd1539'); %Fungerar
%fprintf(nexys, 'd%4d', myNum); %Fungerar
for i=1:2
fprintf(nexys, 's');
scan_s1 = fscanf(nexys,'%s')-0;
fprintf(nexys, 't');
scan_s2 = fscanf(nexys,'%s')-0;
end
Can anybody suggest something about this
Thanks Jim
2 Kommentare
Matt Kindig
am 24 Mai 2013
On what line is the timeout error thrown? Have you verified that the scan_s1 and scan_s2 are incorrect?
It looks like you are setting the 'Terminator' to empty. In my experience, a timeout error can arise when the device does not send a specified terminator string that Matlab recognizes. I'm not sure how it would respond with an empty terminator specified.
Jim
am 24 Mai 2013
Akzeptierte Antwort
Weitere Antworten (0)
Kategorien
Mehr zu National Instruments Frame Grabbers finden Sie in Hilfe-Center und File Exchange
Produkte
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!