Main Content

FIFO Write

Write simple data streams

Since R2020b

  • FIFO Write block

Simulink Real-Time / RS232


The FIFO Write block is the write side of a FIFO read/write pair. Use this block to generate simple data streams.



expand all

Vector containing the data to write to the FIFO.


To determine the data type of this vector, set the parameter Input vector type.

Data Types: int8 | uint8 | int16 | uint16 | int32 | uint32


expand all

Connects to the FIFO that writes data to the serial port.

If data is present in the FIFO, returns true.


To make this port visible, set parameters Max and Min read size ports and Enable passthrough.


expand all

Enter the number of elements that can be held in the FIFO at one time. If a write operation to the FIFO causes the number of elements to exceed Size, an error occurs.

Programmatic Use

Block Parameter: size

For the 16-bit and 32-bit data types, include as first element the number of elements to expect in the rest of the input vector. The count controls how many bytes that the block copies into the FIFO. The block does not copy the count itself into the FIFO.

For the 8-bit data types, provide a NULL-terminated character vector in the output vector. The block copies data into the FIFO up to, but not including, the NULL terminator.

For more information, see RS-232 Legacy Drivers.

Programmatic Use

Block Parameter: inputtype

Select this check box to create the Boolean output DP. If data is present in the FIFO, DP becomes true. The transmit side of the send/receive subsystem uses this output. This output is given to the Enable TX block, which enables the transmitter buffer empty interrupt.

This setting makes the output port DP visible.

Programmatic Use

Block Parameter: present

Enter the base sample time or a multiple of the base sample time. -1 means that sample time is inherited.

Programmatic Use


Enter a user-defined identifier for FIFO overflow messages.

Programmatic Use

Block Parameter: id

Extended Capabilities

C/C++ Code Generation
Generate C and C++ code using Simulink® Coder™.

Version History

Introduced in R2020b