Main Content

fgetl (serial)

(To be removed) Read line of ASCII text from device and discard 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 = fgetl(obj)
[tline,count] = fgetl(obj)
[tline,count,msg] = fgetl(obj)

Description

tline = fgetl(obj) reads one line of ASCII text from the device connected to the serial port object, obj, and returns the data to tline. This returned data does not include the terminator with the text line. To include the terminator, use fgets.

[tline,count] = fgetl(obj) returns the number of values read to count, including the terminator.

[tline,count,msg] = fgetl(obj) returns a warning message to msg if the read operation was unsuccessful.

Examples

On a Windows® platform, 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 fgetl to read the data returned from the previous write operation, and discard the terminator.

settings = fgetl(s)
settings =
9600;0;0;NONE;LF
length(settings)
ans =
    16

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 fgetl 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 fgetl

A read operation with fgetl 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.

Note

You cannot use ASCII values larger than 127 characters. The function is limited to 127 binary characters.

Version History

Introduced before R2006a

collapse all

R2021a: serial object interface will be removed

Use of this function with a serial object will be removed. To access a serial port device, use a serialport object with its functions and properties instead.

The recommended functionality has additional capabilities and improved performance. See Transition Your Code to serialport Interface for more information about using the recommended functionality.

See Also

Functions