Out Bus Element
Specify output of external port
Libraries:
Simulink /
Ports & Subsystems
Simulink /
Sinks
HDL Coder /
Ports & Subsystems
HDL Coder /
Sinks
Alternative Configurations of Out Bus Element Block:
Bus Element Out
Description
The Out Bus Element block provides a bus, signal, or message as the output of an external port.
To group multiple buses, signals, or messages into an output bus, use multiple Out Bus Element blocks that correspond with the same port. The Out Bus Element blocks combine the functionality of a Bus Creator block and an Outport block. All Out Bus Element blocks that correspond with the same port share a dialog box.
For interfaces that include buses composed of many bus elements, Out Bus Element blocks:
Reduce signal line complexity and clutter in a block diagram.
Allow you to more easily make incremental changes to the interface.
Allow access to a bus element closer to the point of usage, avoiding the use of a Bus Creator and From block configuration.
To convert an interface to use Out Bus Element blocks, see Simplify Subsystem and Model Interfaces with Bus Element Ports.
The Out Bus Element block does not support mixing message and signal elements as inputs.
When you save output data to the workspace or a file, bus data defined by groups of root-level Out Bus Element blocks are logged along with root-level Outport block data.
Examples
Create Output Bus Element Port
In a model component, each output bus element port is represented by one or more Out Bus Element blocks.
Open the model named CreateOutputBusElementPort
.
How you add a bus element port depends on whether you are in the model component or its parent.
To add an output bus element port to the currently open subsystem or model, add an Out Bus Element block. For example, double-click the canvas and start typing the block name. Then, select the Out Bus Element block.
To add an output bus element port to a Subsystem or Model block in the current component, click the edge of the block and select Create out bus port. For example, add an output bus element port to the Subsystem block.
To open the subsystem, double-click the Subsystem block.
The subsystem contains a default Out Bus Element block that corresponds to the output port you created on the Subsystem block. The block label uses default values for its two interactive text fields: the port name (OutBus
) and the bus element (signal1
).
To create another output bus element port from inside a model component, hold Ctrl while you drag an existing Out Bus Element block to a new location. Upon releasing the pointer, click New Port.
An Out Bus Element block with a unique port name appears.
In this example, the new port is named OutBus1
.
To edit the port name, click the port name in the block label. Then, enter a new name.
Alternatively, set the Port name block parameter.
When multiple blocks are associated with the same port and you change the name of the port, all blocks that share the port update to reflect the new port name.
Output Signal with Bus Element Port
When you have only one Out Bus Element block for a port, you can pass the block input to the output port without nesting it in a bus.
Open and compile the example model named SignalOutputBusPort
. To compile the model, on the Modeling tab of the Simulink Toolstrip, click Update Model or Run. Compiling the model updates the line styles, which you can use to visually identify buses.
A Subsystem block has an output port that passes a bus to a Scope block.
To view the Out Bus Element block that corresponds with the output port, open the subsystem.
In the subsystem, a Sine Wave block connects to an Out Bus Element block. Based on the block label, OutBus.signal1
, the port output is a bus that contains an element named signal1
. The dot in the block label indicates the bus hierarchy.
To pass the signal to the output port without nesting it in a bus, delete the second text field from the block label. For example, click signal1
to edit the text field.
Then, delete signal1
. To commit the change, click elsewhere on the canvas.
To change the name of the port associated with the block, edit the first text field in the block label. For example, click OutBus
to edit the text field.
Then, delete OutBus
and enter SineWave
. Ignore the placeholder text that shows where you can enter an element name.
Alternatively, set the Port name block parameter to the desired name for the port.
Navigate up to the parent model and recompile.
The output port of the Subsystem block now passes a signal rather than a bus to the Scope block.
Output Multiple Signals with One Port
To provide multiple signals to one output port, use an Out Bus Element block for each signal that you want in the output.
Open the model named BusOutputPort
.
An Out Bus Element block writes to an element named signal1
of a port named OutBus
.
To rename an element, edit the second text field in the block label. For example, double-click signal1
and enter constant
*5
.
Open the Property Inspector. Then, select the Out Bus Element block. Alternatively, double-click the block to open a dialog box.
The signal that the block selects is highlighted.
To add an element to the port with a block, select the element that you want to contain the new element. For this example, select OutBus
. Then, click and select Add element with block.
An Out Bus Element block labeled OutBus.signal2
appears in the block diagram.
In the Property Inspector or dialog box, double-click the name signal2
and enter sine+chirp
.
The corresponding block label updates.
Connect the new Out Bus Element block to the unconnected port of the Sum block.
All element names associated with the same output port must be unique. The software does not support overlapping writes to an output element.
Create Multilevel Bus Hierarchy at Output Port
The default Out Bus Element block nests the output element in a bus. When the output port has many elements, organize the elements in nested buses within the output bus.
Open the model named OutputBusPortHierarchy
, which contains three Out Bus Element blocks.
Each dot in an Out Bus Element block label indicates a new level of hierarchy. To nest an element under another bus in the output bus, edit the second text field of the corresponding block label and add a dot after each nested bus in the hierarchy.
For example, click the label constant
*5
. Then, change it to NestedBus.constant
*5
.
This label creates an intermediate bus named NestedBus
that contains constant
*5
.
To add elements to the new bus, you can similarly edit other block labels. Alternatively, double-click an Out Bus Element block or open the Property Inspector and select an Out Bus Element block.
To move elements within the output bus, select the elements to move and drag them to a new location. For example, drag the signal named sine+chirp
into the nested bus.
The block label indicates the new hierarchy.
In the Property Inspector or dialog box, you can add elements under an existing element in the bus hierarchy. Select the element that you want to contain a new element. Then, click and select Add element with block or Add element without block.
When an Out Bus Element block represents the element that you want to contain a new element, to avoid conflicts, your only option is Add element without block.
Define Output Bus Without Extra Blocks or Bus Objects
Since R2024a
To specify the elements of a bus at a bus element port, you can:
Add elements to the interface with or without adding blocks to the block diagram.
Define the bus hierarchy with a
Simulink.Bus
object.
This example shows how to define a bus at an output bus element port without a
Simulink.Bus
object.
In a blank model or subsystem, add an Out Bus Element block.
Open the Property Inspector. Then, select the Out Bus Element block. Alternatively, double-click the block to open a dialog box.
To add an element to the port without a block, select the element that you
want to contain the new element. For example, select
OutBus
. Then, click , and select Add
element without block.
The new element is nested under the previously selected element. The block diagram is unchanged.
The element name is gray and italicized to indicate that an Out Bus Element block does not represent the element directly.
By adding elements without adding blocks, you can define the entire output
bus hierarchy with only one Out Bus Element block and without
a Simulink.Bus
object.
Optionally:
Add more elements with or without blocks.
Rename elements by double-clicking their names and entering new names.
Reorder elements by dragging them to new locations.
Specify element attributes by pausing on an element name then clicking the pencil button that appears. Alternatively, click an attribute summary next to an element name to edit the attributes.
Defining the elements at an output port is useful when you create a file for reuse. The interface definition validates the hierarchy and properties of the output bus that the component provides.
Suppose you add elements without blocks then decide that you want
Out Bus Element blocks to represent the elements. To add
a block for an output element, click an element name. Then, click . For example, add a block for the element
named
Chirp
.
In the block diagram, an Out Bus Element block labeled
OutBus.NestedBus.Chirp
appears.
You cannot add blocks for elements that an existing Out Bus
Element block represents. For example, you cannot add a block
for NestedBus
. The Out Bus Element block
labeled OutBus.NestedBus.Chirp
already represents
NestedBus
because NestedBus
is the
parent bus for Chirp
.
Customize Appearance of In Bus Element and Out Bus Element Blocks
Use compact labels and block colors to customize the appearance of In Bus Element and Out Bus Element blocks.
Open the model named BusElementPortBlocks
.
The model contains:
In Bus Element blocks that represent two unique bus element ports named
InBus
andpulse
Out Bus Element blocks that represent a bus element port named
OutBus
To reduce the size of the block labels, display only the leaf element names. Select an In Bus Element or Out Bus Element block, pause on the ellipsis, and in the action bar, click Compact Notation.
All In Bus Element and Out Bus Element blocks in the block diagram display shortened block labels that use only the leaf element name.
To show the full block label, in the action bar, you can click Expanded Notation. For this example, keep the compact block labels.
Block colors can help differentiate unique ports when the block labels are compact.
Open the Property Inspector. Then, select an In Bus Element block that corresponds with the port named InBus
. For example, select the block labeled constant
. Alternatively, double-click the block to open a dialog box.
In the Property Inspector or dialog box, select InBus
. Then, click Set color and select a color from the menu.
The blocks related to the port use the chosen color.
To identify the blocks that select the nested bus named nonconstant
or its elements, select nonconstant
. Then, click Set color and select a different color from the menu.
The blocks related to the nested bus use the chosen color.
Extended Examples
Ports
Input
Port_1 — Full or partial output for external port
scalar | vector | matrix | array | bus
Connect a bus, signal, or message to pass to the corresponding external output port of the parent subsystem or model.
When multiple Out Bus Element blocks are associated with the same external port, the input to this block is an element of the bus at the output port. The second text field in the block label specifies the element name.
When one Out Bus Element block is associated with the external port, the input to this block is passed directly to the output port or nested in a bus at the output port. To pass the input of the block to the output port without nesting it in a bus, delete the text from the second text field in the block label.
Data Types: single
| double
| half
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| string
| Boolean
| fixed point
| enumerated
| bus
Complex Number Support: Yes
Parameters
To interactively edit the parameters of the block, the corresponding port, and the elements at the port, double-click the block or open the Property Inspector and select the block.
Port name — Name of output port
OutBus
(default) | port name
Specify a port name that is not already in use by another block or port. The name appears on the parent Subsystem or Model block. The name also appears next to the block. Multiple blocks can access the same port.
Programmatic Use
To programmatically set the attribute value for an element, use the set_param
function, specifying the element as the block path of the model
component with the element label.
Parameter: | PortName |
Values: | 'OutBus' (default) | port name in quotes |
Data Types: | char | string |
Example: set_param('mymodel/Subsystem1/PortBlock','PortName','myBus')
Port number — Position of port on parent block
1
(default) | real integer
Specify the order in which the port that corresponds to the block appears on the parent Subsystem or Model block.
If you add a block that creates another port, the port number is the next available number.
Deleting all blocks associated with a port deletes the port. Other ports are renumbered so that they are sequential and do not skip any numbers.
Specifying a port number that exceeds the number of ports creates a port for that number and for any skipped sequential numbers.
Programmatic Use
To set the block parameter value programmatically, use
the set_param
function.
Parameter: | Port |
Values: | '1' (default) | real integer in quotes |
Data Types: | char | string |
Example: set_param('mymodel/Subsystem1/PortBlock','Port','5')
Set color — Block background color
Black
(default) | White
| Red
| Green
| Blue
| Cyan
| Magenta
| Yellow
| Gray
| Light Blue
| Orange
| Dark Green
| More Colors
Specify the block background color. This specification sets the color of blocks associated with selected elements, or of all blocks associated with the port if you do not select any elements.
Programmatic Use
To set the block parameter value programmatically, use
the set_param
function.
Parameter: | BackgroundColor |
Values: | 'black' (default) | 'white | 'red' | 'green' | 'blue' | 'cyan' | 'magenta' | 'yellow' | 'gray' | 'lightBlue' | 'orange' | 'darkGreen' | '[r,g,b]' where r , g , and
b , are the red, green, blue values of the color in the range 0.0 to
1.0 |
Example: set_param('mymodel/Subsystem1/PortBlock','BackgroundColor','magenta')
Filter — Filter for displayed bus elements
no default
Specify a search term to use for filtering a long list of bus elements. Do not enclose the
search term in quotation marks. The filter does a partial string search and supports regular
expressions. To use a regular expression character as a literal, include an escape character
(\
). For example, to use a question mark, type
sig\?1
.
Attributes
To specify attributes, such as data type, pause on the name of a bus, signal, or message. Then, click the pencil button that appears.
When you specify attributes, they appear next to the name of the bus, signal, or message. Click an attribute summary to edit the attributes of the bus, signal, or message.
Data type — Data type
Inherit: auto
(default) | double
| single
| half
| int8
| uint8
| int16
| uint16
| ...
The data type of a bus, signal, or message can be inherited, specified directly, or
expressed as a data type object such as a Simulink.NumericType
object.
You can specify any of these options:
Inherited data type
Built-in Simulink® data type — For example, specify
single
oruint8
. See Data Types Supported by Simulink.Fixed-point data type — Use the
fixdt
function. For example, specifyfixdt(1,16,0)
.Enumerated data type — Use the name of the type preceded by
Enum:
. For example, specifyEnum: myEnumType
.Bus data type — Use the name of the
Simulink.Bus
object preceded byBus:
. For example, specifyBus: myBusObject
.Value type — Use the name of the
Simulink.ValueType
object preceded byValueType:
. For example, specifyValueType: windVelocity
.Custom data type — Use a MATLAB expression that specifies the type. For example, you can specify a
Simulink.NumericType
object whoseDataTypeMode
property is set to a value other than'Fixed-point: unspecified scaling'
.
When you specify a Simulink.ValueType
object as the data type, some parameters of the element are ignored. For example, the
Min, Max, and Unit parameters
are ignored. The software uses the corresponding properties of the
Simulink.ValueType
object. For example, suppose you set
Unit to ft/s
for an element. When the Data
type of the element specifies a ValueType
object that has
m/s
as its unit, the element uses m/s
instead of
ft/s
.
When you specify a Simulink.Bus
object
as the data type, some parameters of the element are reset to their default values. For
example, the Min, Max, and Unit
parameters are reset. The software uses the corresponding properties of the
Simulink.BusElement
objects in the Simulink.Bus
object
instead.
Tips
When you specify a bus using a Simulink.Bus
object or a
Simulink.ValueType
object with a Simulink.Bus
object
data type, the Property Inspector and block dialog box display the elements defined by the
corresponding Simulink.BusElement
objects.
Dependencies
To specify a Simulink.Bus
object as the data type of a bus at a bus
element port, an
Out Bus Element
block must represent the bus or an element of the bus.
Programmatic Use
To programmatically set the attribute value for an element, use the set_param
function, specifying the element as the block path of the model
component with the element label.
Parameter: | OutDataTypeStr |
Values: | 'Inherit: auto' (default) | 'double' | 'single' | 'half' | 'int8' | 'uint8' | 'int16' | 'uint16' | 'int32' | 'uint32' | 'int64' | 'uint64' | 'boolean' | 'fixdt(1,16)' | 'fixdt(1,16,0)' | 'fixdt(1,16,2^0,0)' | 'string' | 'Enum: <class name>' | 'Bus: <object name>' | 'ValueType: <object name>' | '<data type expression>' |
Example: set_param('mymodel/Subsystem1/myBus.signal1','OutDataTypeStr','int32')
Data mode — Data mode of output element
inherit
(default) | signal
| message
Specify the data mode of the output element.
inherit
— Output element inherits its data mode.signal
— Output element must be a signal or a bus that contains signals.message
— Output element must be a message or a bus that contains messages.
Dependencies
To enable this parameter, the block must be at the top level of a model.
Programmatic Use
To programmatically set the attribute value for an element, use the set_param
function, specifying the element as the block path of the model
component with the element label.
Parameter: | DataMode |
Values: | 'inherit' (default) | 'signal' | 'message' |
Example: set_param('mymodel/OutBus','DataMode','signal')
Bus virtuality — Virtual or nonvirtual bus
inherit
(default) | virtual
| nonvirtual
Specify whether to inherit the bus virtuality or define the bus as virtual or nonvirtual. For more information, see Composite Interface Guidelines.
This parameter determines whether the blocks inherit or define the bus virtuality. If the blocks define the bus virtuality and the virtuality of the input bus does not match, compiling the model produces an error.
Dependencies
To enable this parameter, Data type must resolve to a
Simulink.Bus
object. For example, set Data type to
a Simulink.Bus
object or a Simulink.ValueType
object that
specifies a Simulink.Bus
object as its data type.
Programmatic Use
To programmatically set the attribute value for an element, use the set_param
function, specifying the element as the block path of the model
component with the element label.
Parameter: | BusVirtuality |
Values: | 'inherit' (default) | 'virtual' | 'nonvirtual' |
Example: set_param('mymodel/Subsystem1/myBus.nestedBus','BusVirtuality','nonvirtual')
Dimensions — Signal dimensions
-1
(default) | integer | 1
-by-2
vector of integers
Specify the dimensions of a signal.
-1
— The signal can have any dimensions.N
— The signal must be a vector of sizeN
.[R C]
— The signal must be a matrix havingR
rows andC
columns.
Dependencies
When Data type specifies a
Simulink.Bus
object, the software sets this parameter to1
. The software uses the dimensions specified by theSimulink.BusElement
objects in theSimulink.Bus
object.When Data type specifies a
Simulink.ValueType
object, the software ignores the value of this parameter. The software uses the dimensions specified by theSimulink.ValueType
object instead.
Programmatic Use
To programmatically set the attribute value for an element, use the set_param
function, specifying the element as the block path of the model
component with the element label.
Parameter: | PortDimensions |
Values: | '-1' (default) | integer in quotes | 1 -by-2 vector of integers in quotes |
Data Types: | char | string |
Example: set_param('mymodel/Subsystem1/myBus.signal1','PortDimensions','[1
3]')
Dims mode — Option to allow only variable-size or fixed-size signals
Inherit
(default) | Fixed
| Variable
Specify the type of signals allowed.
Inherit
— Allow variable-size and fixed-size signals.Variable
— Allow only variable-size signals.Fixed
— Allow only fixed-size signals. Do not allow variable-size signals.
When the signal is variable-sized, the Dimensions parameter specifies the maximum dimensions of the signal.
Dependencies
When Data type specifies a
Simulink.Bus
object, the software sets this parameter toInherit
. The software uses the dimensions modes specified by theSimulink.BusElement
objects in theSimulink.Bus
object.When Data type specifies a
Simulink.ValueType
object, the software ignores the value of this parameter. The software uses the dimensions mode specified by theSimulink.ValueType
object instead.
Programmatic Use
To programmatically set the attribute value for an element, use the set_param
function, specifying the element as the block path of the model
component with the element label.
Parameter: | VarSizeSig |
Values: | 'Inherit' (default) | 'No' | 'Yes' |
Example: set_param('mymodel/Subsystem1/myBus.signal1','VarSizeSig','No')
Unit — Physical unit
inherit
(default) | unit supported by Simulink software
Specify the physical unit of the signal. For a list of supported units, in the MATLAB Command Window, enter showunitslist
.
Dependencies
When Data type specifies a
Simulink.Bus
object, the software sets this parameter toinherit
. The software uses the units specified by theSimulink.BusElement
objects in theSimulink.Bus
object.When Data type specifies a
Simulink.ValueType
object, the software ignores the value of this parameter. The software uses the unit specified by theSimulink.ValueType
object instead.
Programmatic Use
To programmatically set the attribute value for an element, use the set_param
function, specifying the element as the block path of the model
component with the element label.
Parameter: | Unit |
Values: | 'inherit' (default) | unit supported by Simulink software in quotes |
Data Types: | char | string |
Example: set_param('mymodel/Subsystem1/myBus.signal1','Unit','m/s')
Complexity — Numeric type
auto
(default) | real
| complex
Specify the numeric type of the signal. To choose the numeric type of the signal, select
auto
. Otherwise, choose a real or complex signal type.
Dependencies
When Data type specifies a
Simulink.Bus
object, the software sets this parameter toauto
. The software uses the complexity specified by theSimulink.BusElement
objects in theSimulink.Bus
object.When Data type specifies a
Simulink.ValueType
object, the software ignores the value of this parameter. The software uses the complexity specified by theSimulink.ValueType
object instead.
Programmatic Use
To programmatically set the attribute value for an element, use the set_param
function, specifying the element as the block path of the model
component with the element label.
Parameter: | SignalType |
Values: | 'auto' (default) | 'real' | 'complex' |
Example: set_param('mymodel/Subsystem1/myBus.signal1','SignalType','real')
Minimum — Minimum value
[]
(default) | scalar
Lower value of the range that the software checks.
This number must be a finite real double scalar value.
The software uses this value to perform:
Simulation range checking. For more information, see Specify Signal Ranges.
Automatic scaling of fixed-point data types.
Optimization of the code that you generate from the model. This optimization can remove algorithmic code and affect the results of some simulation modes such as SIL or external mode. For more information, see Optimize using the specified minimum and maximum values (Embedded Coder).
Dependencies
When Data type specifies a
Simulink.Bus
object, the software sets this parameter to[]
. The software uses the minimum values specified by theSimulink.BusElement
objects in theSimulink.Bus
object.When Data type specifies a
Simulink.ValueType
object, the software ignores the value of this parameter. The software uses the minimum value specified by theSimulink.ValueType
object instead.
Programmatic Use
To programmatically set the attribute value for an element, use the set_param
function, specifying the element as the block path of the model
component with the element label.
Parameter: | OutMin |
Values: | '[]' (default) | scalar in quotes |
Data Types: | char | string |
Example: set_param('mymodel/Subsystem1/myBus.signal1','OutMin','0')
Maximum — Maximum value
[]
(default) | scalar
Upper value of the range that the software checks.
This number must be a finite real double scalar value.
The software uses this value to perform:
Simulation range checking. For more information, see Specify Signal Ranges.
Automatic scaling of fixed-point data types.
Optimization of the code that you generate from the model. This optimization can remove algorithmic code and affect the results of some simulation modes such as SIL or external mode. For more information, see Optimize using the specified minimum and maximum values (Embedded Coder).
Dependencies
When Data type specifies a
Simulink.Bus
object, the software sets this parameter to[]
. The software uses the maximum values specified by theSimulink.BusElement
objects in theSimulink.Bus
object.When Data type specifies a
Simulink.ValueType
object, the software ignores the value of this parameter. The software uses the maximum value specified by theSimulink.ValueType
object instead.
Programmatic Use
To programmatically set the attribute value for an element, use the set_param
function, specifying the element as the block path of the model
component with the element label.
Parameter: | OutMax |
Values: | '[]' (default) | scalar in quotes |
Data Types: | char | string |
Example: set_param('mymodel/Subsystem1/myBus.signal1','OutMax','2')
Description — Description of bus, signal, or message
no default
Use the description to document information about the bus, signal, or message, such as where it is used. This information does not affect processing.
Dependencies
When Data type specifies a
Simulink.Bus
object, the software sets this parameter to''
(empty). The software uses the description specified by theSimulink.Bus
object.When Data type specifies a
Simulink.ValueType
object, the software ignores the value of this parameter. The software uses the description specified by theSimulink.ValueType
object instead.
Programmatic Use
To programmatically set the attribute value for an element, use the set_param
function, specifying the element as the block path of the model
component with the element label.
Parameter: | Description |
Values: | '' (default) | description in quotes |
Data Types: | char | string |
Example: set_param('mymodel/Subsystem1/myBus.signal1','Description','This
signal is used by...')
Output name — Name of output bus, signal, or message in parent subsystem or model
no default
Since R2023a
Specify the name of the output bus, signal, or message in the parent subsystem or model. The name appears as a label on the line.
To display propagated labels for individual lines or all lines in a model, see Display Propagated Signal Labels.
Dependencies
To enable this parameter:
The block must be at the top level of a model.
The element must be the top-level bus, signal, or message.
When Data type specifies a
Simulink.Bus
object, the software sets this parameter to""
(empty).
Programmatic Use
To programmatically set the attribute value for an element, use the set_param
function, specifying the element as the block path of the model
component with the element label.
Parameter: | OutputName |
Values: | "" (default) | output name in quotes |
Data Types: | char | string |
Example: set_param('mymodel/OutBus','OutputName','model-output')
Execution Attributes
To specify execution attributes, such as sample time, pause on the name of a bus, signal, or message. Then, click Specify execution attributes .
Sample time — Sample time
-1
(default) | scalar
Specify the discrete interval between sample time hits or specify
another type of sample time, such as continuous (0
)
or inherited (-1
). For more options, see Types of Sample Time.
By default, the signal inherits its sample time.
Programmatic Use
To programmatically set the attribute value for an element, use the set_param
function, specifying the element as the block path of the model
component with the element label.
Parameter: | SampleTime |
Values: | '-1' (default) | scalar in quotes |
Data Types: | char | string |
Example: set_param('mymodel/Subsystem1/myBus.signal1','SampleTime','0.01')
Block Characteristics
Data Types |
|
Direct Feedthrough |
|
Multidimensional Signals |
|
Variable-Size Signals |
|
Zero-Crossing Detection |
|
Alternative Configurations
Bus Element Out — Specify output that connects to external port
The Bus Element Out block differs from the Out Bus Element block by name only.
Libraries:
Simulink /
Signal Routing
HDL Coder /
Signal Routing
Extended Capabilities
C/C++ Code Generation
Generate C and C++ code using Simulink® Coder™.
HDL Code Generation
Generate VHDL, Verilog and SystemVerilog code for FPGA and ASIC designs using HDL Coder™.
This block can be used to simplify subsystem bus interfaces when you use the block in subsystems that generate HDL code, but it is not included in the hardware implementation.
To learn more about using buses for HDL code generation, see Buses (HDL Coder) and Use Bus Signals to Improve Readability of Model and Generate HDL Code (HDL Coder).
This block supports code generation for Simulink.ValueType
object. For
more information about value types, see Specify Common Set of Signal Properties as Value Type.
Fixed-Point Conversion
Design and simulate fixed-point systems using Fixed-Point Designer™.
Version History
Introduced in R2017aR2024a: Specify elements without bus objects or additional blocks
When a subsystem or model has an output bus element port, you do not need to
specify a Simulink.Bus
object or add Out Bus Element
blocks to:
Add elements to the output port.
Specify attributes of the elements at the output port.
To add an element to the port, select the element that you want to contain the new element. Then, click and select one of these options:
Add element with block — Add an element to the port and an Out Bus Element block that represents the element.
Add element without block — Add an element to the port without adding an Out Bus Element block that represents the element.
To programmatically add elements to the output bus without adding blocks to the
block diagram, use the Simulink.Bus.addElementToPort
function.
R2024a: Select new options when dragging block to new location
When you press Ctrl and drag an Out Bus Element block to a new location, you receive clearer options:
New Port — Create a port.
New Element — When the dragged block represents an element of the port and not the full port, add an element to the port.
In previous releases, you receive two options:
Create New Port — Create a port.
Use Existing Port — When the dragged block represents an element of the port and not the full port, add an element to the port. Otherwise, create a port.
R2024a: Adding or copying block creates a port
These actions now consistently create a port:
Double-click the canvas. Then, start typing
Out Bus Element
, and select the block from the menu.Copy and paste an Out Bus Element block.
In previous releases, these actions create a port or add an element to a port.
R2023a: Specify name of port output
For an Out Bus Element block at the top level of a model, use the Output name block parameter to specify the name of the top-level bus, signal, or message that appears in a parent subsystem or model.
R2023a: Property Inspector supports Out Bus Element blocks
The Property Inspector supports In Bus Element and Out Bus Element blocks.
R2023a: Diagnostic messages link to related Out Bus Element blocks
Warning and error messages for In Bus Element and Out Bus Element blocks now link to the corresponding block in the block diagram, helping you quickly find the source of the warning or error. In previous releases, warning and error messages refer to a hidden block and do not provide a link.
MATLAB-Befehl
Sie haben auf einen Link geklickt, der diesem MATLAB-Befehl entspricht:
Führen Sie den Befehl durch Eingabe in das MATLAB-Befehlsfenster aus. Webbrowser unterstützen keine MATLAB-Befehle.
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)