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

回答(1 个)

Walter Roberson
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
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 CenterFile 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!

Translated by