Skip to Main Content Skip to Search
Product Documentation

Packet Input - Receive unformatted binary data

Library

Real-Time Windows Target

Description

The Packet Input block receives unformatted binary data. After you have added a Packet Input block to your model, double-click the Packet Input block to open the Block Parameters: Packet Input dialog box.

The driver must be Standard Devices > Serial Port, Standard Devices > UDP Protocol, Standard Devices > File, or Vector > CAN Device. Specify parameter values as needed, then click OK or Apply. When you install a UDP device, enter port addresses in decimal format in the Standard Devices UDP Protocol dialog box.

Parameters and Dialog Box

Sample time

Enter the same value you entered in the Fixed step size box from the Configuration Parameters dialog box, or an integer multiple of that value.

Packet ID

Enter the ID of the packet to receive. If your protocol does not have packet IDs, this parameter is disabled.

Input packet size

Enter the number of bytes expected in each input packet. This number must be the same as the number of bytes needed to satisfy the type specifications in Block output data types.

Block output data types

Enter a string, or a cell array of strings, that specifies how the data in each packet obtained from the device is to be typed and grouped for input to the application. The Packet Input block has an output port corresponding to each string in Block output data types. Changing the number of strings automatically changes the number of output ports.

Each string has the format [n*]datatype. The data described by the string has the type specified by datatype and the width specified by n; or 1 if n is not specified. For example, 'double' means one double value, and '4*int8' means a vector of four int8 values.

By providing an appropriate cell array of strings, you can convert an input packet into any needed types, packaged into vectors in any needed way. For example, specifying {'int16','int16','double'} creates three ports. The first and second each output an int16 value, and the third outputs a double. Specifying {'2*int16','double'} creates two ports: a vector of two int16 values, and a scalar double.

Input packet field byte order

From the list, select:

  • Little Endian

    Default. Send multibyte values in little-endian format.

  • Big Endian

    Send multibyte values in big-endian format.

Show "Data Ready" port

Select this check box to indicate that the block has an output port that signals 1 if the block has new data available, and 0 otherwise.

Show "Data Error" port

Select this check box to indicate that the block has an output port that signals 1 if a data error has occurred, and 0 otherwise.

Show packet timestamp port

Select this check box to show the timestamp for the CAN message packets. If your protocol does not have packet timestamps, the block ignores this value.

  


Related Products & Applications

Learn more about Simulink through this collection of videos, articles, technical literature and the Getting Started with Simulink Guide.

 © 1984-2012- The MathWorks, Inc.    -   Site Help   -   Patents   -   Trademarks   -   Privacy Policy   -   Preventing Piracy   -   RSS