Documentation

Packet Output

Write binary data or a CAN message to a communication channel

Description

Connect to and write unformatted binary data to a port, file, or CAN device. After you add a Packet Output block to your model, double-click the block to set its parameters.

The driver must be one of:

  • Standard Devices > Serial Port

  • Standard Devices > UDP Protocol

  • Standard Devices > File

  • Vector > CAN Device

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 communication channel as unformatted binary data.

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

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 the ID of the packet to process. If your protocol does not have packet IDs, this parameter is disabled.

Select this check box if Packet identifier is an extended identifier.

Enter the number of bytes expected in each input packet. This number must match the number of bytes required by the type specifications in Output packet data types.

One or more character vectors that specify how data provided by the application is formatted into a packet. The Packet Output block has an input port corresponding to each character vector in Output packet field data types. Changing the number of character vectors changes the number of ports.

Each character vector has the format [n*]datatype. The data that the character vector describes has the type specified by datatype and the width specified by n. If n is not specified, the width is 1. For example, 'double' means one double value, and '4*int8' means a vector of four int8 values. You can also type 'CAN_MESSAGE' to specify a single CAN_MESSAGE value.

The signal input to each port of the Packet Output block can be a scalar or vector of the data type. The character vector for each port specifies the type to be used when its signal is output to the device. If the character vector for a port matches the type of the signal input to that port, the signal value appears verbatim in the output packet.

You can also perform type conversion on output. For example, assume that the input is a four-element int16 vector and the character vector is '4*int8'. The four integers are converted to int8 before being written to the packet. The resulting data occupies 4 bytes in the output packet.

The block forces an out-of-range value to the maximum value for that data type.

From the list, select:

  • Little Endian (default) — Receive multibyte values in little-endian format.

  • Big Endian — Receive multibyte values in big-endian format.

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 vector that has the same number of elements as the sum of the widths of the input signals across all ports. When simulation begins, send the specified data before the other data that is sent during simulation.

Optional. Enter a vector that has the same number of elements as the sum of the widths of the input signals across all ports. When simulation ends, after the other data that is sent during simulation, send the specified data.

Model Examples

See Also

Introduced in R2007b

Was this topic helpful?