Documentation

Stream Output

Write formatted ASCII data to communication channel

Description

Write formatted ASCII data to a port or file. After you have added a Stream Output block to your model, double-click the Stream Output block to open the Block Parameters: Stream Output dialog box.

The driver must be one of:

  • Standard Devices > Serial Port

  • Standard Devices > File

  • Standard Devices > UDP Protocol

When you install a UDP device, enter port addresses in decimal format in the Standard Devices UDP Protocol dialog box.

Any serial output port can send data with sample rates up to 500 Hz. To enable a faster sample rate of up to 10 kHz for some output serial ports, click Install new board, select Standard Devices > Serial Port, and select Direct port access.

The block does not support this option with all types of serial output hardware.

Ports

Input

expand all

Data values that are sent to the communication channel as ASCII data, encoded according to Format string.

Output

expand all

This port signals 1 if the block is ready to accept new data and 0 otherwise.

Dependency

When you select Show “Data Ready” port, this port is visible.

This port signals 1 if a data error occurs and 0 otherwise.

Dependency

When you select Show “Data Error” port, this port is visible.

In normal or accelerator modes, returns the number of timer ticks that your model lags behind the real-time kernel. When the model lags by more than Maximum missed ticks, the software reports an error and simulation stops.

Dependency

When you select Show “Missed Ticks” port, this port is visible.

Data Types: double

Parameters

expand all

When you click Install new board, the software displays a list of manufacturers of supported boards. When you select a manufacturer, the software displays a list of boards available from that manufacturer. When you select a board, the software adds the board to the list of registered boards and makes that board the current board.

By default, the initial selection in the list of registered boards is < no board selected >.

Dependency

When you select a board in the list of registered boards, the Delete current board and Board setup buttons are available.

To delete the current board, click this button. The initial selection of the list of registered boards changes to < no board selected >.

Dependency

To activate this parameter, select a board in the list of registered boards.

When you delete the current board, the Delete current board and Board setup buttons are no longer available.

To set up the board, click this button.

A board-specific dialog box opens to set up the board. For more information, see the board manufacturer documentation.

Dependency

To activate this parameter, select a board in the list of registered boards.

To deactivate this parameter, click Delete current board.

Enter a value, in seconds, that represents how frequently you want the block to execute and interact with the I/O hardware. The block synchronizes your model with the real-time clock at this sample rate.

If you are using a fixed-step solver, enter the value that you entered as the Fixed step size configuration parameter or an integer multiple of that value.

In normal or accelerator modes, enter the number of timer ticks that your model can lag behind the real-time kernel. When the model lags behind by this number or fewer timer ticks, the software assumes that the lag is temporary. It allows the model to catch up, even if the model misses some ticks. When the model lags by more than this number, the software reports an error and simulation stops.

In external mode, the software ignores this value.

In normal or accelerator modes, select this check box to send the number of missed ticks to output port Missed Ticks.

In external mode, the Missed Ticks port is zero.

In normal or accelerator modes, select this check box to grant other programs more CPU time while the kernel waits for a response from the hardware.

In external mode, the software ignores this value.

Enter a port width, or vector of port widths. The number of elements determines the number of input ports. Each port has the width specified by the corresponding element. For example, specifying [3,1,2] indicates that the block has three input ports: a vector of width 3, a scalar, and a vector of width 2, for a total of six elements. You specify only the widths.

Enter a specification in the same format used by C library I/O routines like printf. The format string describes the data to be sent. The format string must have the same number of specifiers as the sum of the elements of Input port sizes.

For example, assume that Input port sizes is [3,1,2]. Then a Format string of '%d %d %d %f %d %d' outputs ASCII representing:

  • Three integers from the vector on the first input port

  • One double from the scalar on the input second port

  • Two integers from the vector on the third input port

If the data type specified in the Format string for a value differs from the type of the actual value, type conversion occurs. Converted data that conforms to the Format string is output as ASCII to the device.

When you select this check box, the block makes visible the output port Data Ready. This output port signals 1 when the block is ready to accept new data and otherwise signals 0.

When you select this check box, the block makes visible the output port Data Error. This port signals 1 when a data error occurs and 0 otherwise.

Optional. Enter a character vector. When simulation begins, send the specified data before the other data that is sent during simulation.

The character vector can contain anything. You can use it to initialize a device. It is sent literally as specified, without reference to Format string.

Optional. Enter a character vector. When simulation ends, after the other data that is sent during simulation, send the specified data.

The character vector can contain anything. You can use it to shut down a device. It is sent literally as specified, without reference to Format string

See Also

Introduced in R2007b

Was this topic helpful?