Error in Serial communication between a measurement instrument and matlab via RS232
2 次查看(过去 30 天)
显示 更早的评论
Hi I am trying to setup serial communication between my measurement instrument and matlab through RS232. I have setup the following parameters on my measurement instrument through a setup key on the front panel of the instrument:
- Communication port-RS232
- Baudrate-9600
- Parity-none
- Databits-8
- The terminator of the instrument as given in the datasheet is LF/CR
I am getting an error ' * Warning: A timeout occurred before the Terminator was reached*'. I have done some basic troubleshooting like
- putting pause(2); before fscanf(s);,
- double checking the terminator of my instrument,
- testing the RS232 cable
but the error keeps on popping everytime. Please let me know how can I resolve it.
Below given is my Matlab code.
s = serial('COM1');
set(s,'BaudRate',9600,'Parity','none','Terminator','CR');
fopen(s);
fprintf(s,'*IDN?');
out = fscanf(s);
fclose(s);
delete(s);
clear s
0 个评论
回答(1 个)
Walter Roberson
2015-10-29
You indicated that the device datasheet has LF/CR but you configure CR . It would be more secure to configure for LF or CRLF for the serial port. "LF/CR" sometimes means either, but more often means both.
2 个评论
Walter Roberson
2015-10-29
Time to use a different program like TeraTerm or MS-Kermit to confirm that you can communicate with the device outside of MATLAB.
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Instrument Control Toolbox Supported Hardware 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!