fgets (serial)
(To be removed) Read line of text from device and include terminator
This serial
object function will be removed in a future release. Use
serialport
object functions instead. For more information on updating your code, see Version History.
Syntax
tline = fgets(obj)
[tline,count] = fgets(obj)
[tline,count,msg] = fgets(obj)
Description
tline = fgets(obj)
reads one line of text
from the device connected to the serial port object, obj
, and returns
the data to tline
. This returned data includes the terminator with
the text line. To exclude the terminator, use fgetl
.
[tline,count] = fgets(obj)
returns the
number of values read to count
, including the terminator.
[tline,count,msg] = fgets(obj)
returns a
warning message to msg
if the read operation was unsuccessful.
Examples
Create the serial port object s
, connect s
to a
Tektronix® TDS 210 oscilloscope, and write the RS232?
command with
the fprintf
function. RS232?
instructs the scope
to return serial port communications settings.
s = serial('COM1'); fopen(s) fprintf(s,'RS232?')
Because the default value for the ReadAsyncMode
property is
continuous
, data is automatically returned to the input
buffer.
s.BytesAvailable
ans = 17
Use fgets
to read the data returned from the previous write
operation, and include the terminator.
settings = fgets(s)
settings = 9600;0;0;NONE;LF
length(settings)
ans = 17
Disconnect s
from the scope, and remove s
from
memory and the workspace.
fclose(s)
delete(s)
clear s
Tips
Before you can read text from the device, it must be connected to
obj
with the fopen
function. A connected
serial port object has a Status
property value of
open
. An error is returned if you attempt to perform a read
operation while obj
is not connected to the device.
If msg
is not included as an output argument and the read operation
was not successful, then a warning message is returned to the command line.
The ValuesReceived
property value is increased by the number of
values read – including the terminator – each time fgets
is
issued.
Note
You cannot use ASCII values larger than 127 characters. The function is limited to 127 binary characters.
Rules for Completing a Read Operation with fgets
A read operation with fgets
blocks access to the MATLAB® command line until:
The terminator specified by the
Terminator
property is reached.The time specified by the
Timeout
property passes.The input buffer is filled.