FIFO Read Binary (Composite)

FIFO Read Binary


Simulink® Real-Time™ Library for RS-232


The FIFO Read Binary block reads multiple binary headers from a FIFO.

This block identifies and separates data by finding unique byte sequences (headers) that mark the data. Each header indicates the start of a fixed-length binary message. If the same header arrived in the FIFO more than once since the block was last executed, the block discards the older data. It then returns the latest instance of the header. In this way, the block catches up with data that arrives faster than the block executes.

The xpcdemos folder contains the following examples that illustrate how to use the FIFO Read HDRS block: xpcserialbinarytest and xpcserialbinarysplit.

Block Parameters


Enter the headers that you want the block to look for in a block of data from the FIFO. Enter each header as an element in a cell array either as a quoted character vector or a concatenation with char(val) for non-printable byte patterns.

Message Lengths

Enter the message length, in bytes. Include the header in the length.

Output behavior

From the list, select the behavior of the block if the FIFO does not have new data. Select Zero output if no new data if you want the block to have no output if the FIFO has no new data. Select Hold last output if no new data if you want the block to keep the output from the last FIFO message.

Enable input

This check box enables or disables a FIFO read. Select this check box to turn on a new input that takes Boolean signals that enable or disable the read.

Maximum read size

Enter the largest desired read size in bytes. This parameter specifies the width of the output vector and the maximum number of elements to return. See Output vector type for more information about data formats.

Output vector type

From the list, select count+32 bit int, count+32 bit uint, count+16 bit int, count+16 bit uint, 8 bit int null terminated, or 8 bit uint null terminated. This parameter specifies the output vector type. The 8-bit data types produce a null terminated character vector in the output vector. For 16- and 32-bit data types, the first element contains the number of elements to expect in the rest of the output vector.


Base sample time or a multiple of the base sample time.

Introduced in R2008a

Was this topic helpful?