Documentation search search close
CONTENTS
https://www.speedgoat.com/help/slrt/page/icon_documentation.jpg
v10.0.1.x for R2026a
View other versions

IO207 - Setup

IO207 - Setup — Configure the IO207 read/write block

Library

Simulink Real-Time - Speedgoat

Description

Your model can contain only one Setup block for each I/O module in your target machine.

Ports

This driver block has no input or output ports.

Parameters

Tab: Module Setup
Module ID

The Module ID has two functions:

  • It defines the logical connection between the Setup block and its I/O blocks

  • It also informs the auto-search feature of the PCI Slot parameter. If only one I/O module of this type is installed, the Module ID must be set to 1. If n modules are installed, it must be in the range 1:n. Not all the I/O modules installed in the target machine need to be used. To see how each I/O module maps to a Module ID, use this Speedgoat API:

    speedgoat.getIoInterfaces("TargetName", "mySpeedgoat")
PCI Slot (-1: auto-search)

There are two approaches for mapping this block to a specific I/O module installed in your target machine. All modules of the same type must be configured using the same method.

  • Auto-Search: with the default value -1 the I/O module will be automatically located in the target machine. If you have multiple modules of the same kind, the Module ID defines which module is associated with this block. To see how each I/O module maps to a Module ID, use this Speedgoat API:

    speedgoat.getIoInterfaces("TargetName", "mySpeedgoat")

  • Explicit Addressing: to explicitly define the logical address of the I/O module in the target machine, you can provide the PCI bus and slot numbers as a vector: [bus, slot]. To determine these numbers, run the following command in the MATLAB command window:

    speedgoat.getIoInterfaces("TargetName", "mySpeedgoat", "Advanced", true)

    Note that the PCI address can change whenever an I/O module is added or removed – usually, auto-search is the best option.

Tab: Front Channels Setup
Enabled Channels

This field enables either the first half of the channels (the rest of the channels will be disabled) or all the channels. The value IO1 ... IO32 only enables the channels 1 to 32, and the value IO1 ... IO64 enables all the channels 1 to 64.

Simultaneous Update

Available only when all the channels are enabled (see Enabled Channels). When set to OFF, the first group of channels, 1 to 32, and the second group of channels, 33 to 64, are updated sequentially. When set to ON, all 64 channels are updated simultaneously. Enabling this option leads to greater latencies.

Directions

This field specifies whether the enabled channels act as inputs or outputs. Enter a scalar or a vector with a width of either four or eight (depending on the Enabled Channels field). When a scalar value is specified, its value is used for all enabled channels. When a vector is specified, one value of this vector represents a group of eight channels (in sequential order, see the Pin Mapping). A value of 0 defines the group of channels as input, and a value of 1 defines the group of channels as output. Examples with all channels enabled: a scalar of 1 will set all channels as output, and a vector of [1 1 1 1 0 0 0 0] will set the first four groups as output (channels 1 to 32) and set the next 4 groups as input (channels 33 to 64).

Pull Resistors

This field configures the pull-up/-down resistors of the enabled channels. Enter a scalar or a vector with a width of either four or eight (depending on the Enabled Channels field). When a scalar value is specified, its value is used for all enabled channels. When a vector is specified, one value of this vector represents a group of eight channels (in sequential order, see the Pin Mapping). A value of 0 specifies a pull-down resistor, and a value of 1 specifies a pull-up resistor of 5 V, 2 specifies a pull-up resistor of 3.3 V and 3 specifies a floating line. Examples with all channels enabled: a scalar of 1 will set a pull-up resistor of 5 V to all channels, and a vector of [0 0 3 3 2 2 2 2] will set channels 1 to 16 with pull-down resistors, channels 17 to 32 with floating lines and channels 33 to 64 with pull-up resistors of 3.3 V.

Initial Values

This field specifies the initial value of the channels after the model has downloaded. Enter a scalar or a vector with a width of either 32 or 64 (depending on the Enabled Channels field). When a scalar value is specified, its value is used for all enabled channels. When a vector is specified, one value of this vector represents one channel (in sequential order, see the Pin Mapping). A value of 0 causes the corresponding channel to output a low level, and a value of 1 causes the corresponding channel to output a high level.

Reset to Initial Values

This field specifies the behavior of the channels at model termination. Enter a scalar or a vector with a width of either 32 or 64 (depending on the Enabled Channels field). When a scalar value is specified, its value is used for all enabled channels. When a vector is specified, one value of this vector represents one channel (in sequential order, see the Pin Mapping). A value of 0 causes the channel to remain at the last used value when the model was running, and a value of 1 causes the corresponding channel to be reset to the value specified in the Initial Values field.

Tab: Rear Channels Setup
Enabled Channels

This field enables either the first half of the channels (the rest of the channels will be disabled) or all the channels. The value IO65 ... IO96 only enables channels 65 to 96 and the value IO65 ... IO128 enables all the channels 65 to 128.

Simultaneous Update

Available only when all the channels are enabled (see Enabled Channels). When set to OFF, the first group of channels, 65 to 96, and the second group of channels, 97 to 128, are updated sequentially. When set to ON, all 64 channels are updated simultaneously. Enabling this option leads to greater latencies.

Directions

This field specifies whether the enabled channels act as inputs or outputs. Enter a scalar or a vector with a width of either four or eight (depending on the Enabled Channels field). When a scalar value is specified, its value is used for all enabled channels. When a vector is specified, one value of this vector represents a group of eight channels (in sequential order, see the Pin Mapping). A value of 0 defines the group of channels as input, a value of 1 defines the group of channels as output. Examples with all channels enabled: a scalar of 1 will set all channels as output, and a vector of [1 1 1 1 0 0 0 0] will set the first four groups as output (channels 65 to 96) and the next four groups as input (channels 97 to 128).

Pull Resistors

This field configures the pull-up/-down resistors of the enabled channels. Enter a scalar or a vector with a width of either four or eight (depending on the Enabled Channels field). When a scalar value is specified, its value is used for all enabled channels. When a vector is specified, one value of this vector represents a group of eight channels (in sequential order, see the Pin Mapping). A value of 0 specifies a pull-down resistor, 1 specifies a pull-up resistor of 5 V, 2 specifies a pull-up resistor of 3.3 V and 3 specifies a floating line. Examples with all channels enabled: a scalar of 1 will set a pull-up resistor of 5 V to all channels, and a vector of [0 0 3 3 2 2 2 2] will set channels 65 to 80 with pull-down resistors, channels 81 to 96 with floating lines, and channels 97 to 128 with pull-up resistors of 3.3 V.

Initial Values

This field specifies the initial value of the channels after the model has downloaded. Enter a scalar or a vector with a width of either 32 or 64 (depending on the Enabled Channels field). When a scalar value is specified, its value is used for all enabled channels. When a vector is specified, one value of this vector represents one channel (in sequential order, see the Pin Mapping). A value of 0 causes the corresponding channel to output a low level, a value of 1 causes the corresponding channel to output a high level.

Reset to Initial Values

This field specifies the behavior of the channels at model termination. Enter a scalar or a vector with a width of either 32 or 64 (depending on the Enabled Channels field). When a scalar value is specified, its value is used for all enabled channels. When a vector is specified, one value of this vector represents one channel (in sequential order, see the Pin Mapping). A value of 0 causes the channel to remain at the last used value when the model was running, and a value of 1 causes the corresponding channel to be reset to the value specified in the Initial Values field.