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

IO901/IO902 - Send Interrupt

IO901/IO902 - Send Interrupt — Set State of the driver resource

Library

Simulink Real-Time - Speedgoat

Description

This function generates a Broadcast or Unicast interrupt at the specified sample rate.

For Unicast interrupts set type equal to zero, set Id equal to the node Id of the node you want to send an interupt to and set value equal to any user defined data value. For broadcast interrupts set type equal to one, set Id to any desired broadcast level in the range 0 to 31, and set value equal to any user define data value.

Ports

Inputs
Type

Interrupt Type. Set to one for Broadcast interrupts or Zero for Unicast Interrupts.

State ID

Broadcast interupt ID in range 0 to 31 or unicast interrupt destination node id.

Value

Enter the new user defined value you want to send.

Parameters

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.