| MIL 10 Reference
| Customize Help
| Save Settings

MsysControl



See also
Availability
Available in MIL-Lite
Available in MIL

Available on Windows
Available on Linux

Partially supported on:
Partially supported on Host system
Partially supported on Matrox CronosPlus
Partially supported on Matrox GPU processing driver
Partially supported on Matrox GigE Vision driver
Partially supported on Matrox IEEE 1394 IIDC driver
Partially supported on Matrox Iris GT
Partially supported on Matrox Morphis
Partially supported on Matrox Morphis QxT
Partially supported on Matrox Orion HD
Partially supported on Matrox Radient eCL
Partially supported on Matrox Radient eV-CXP
Partially supported on Matrox Solios eA/XA
Partially supported on Matrox Solios ecl/xcl/ev-cl
Partially supported on Matrox USB3 Vision driver (requires Update 19)
Partially supported on Matrox Vio

For any information regarding a MIL system added during a MIL Update, see the MIL system’s release note

Available on Matrox 4Sight-X with restrictions
Available on Matrox Supersight with restrictions
Available on Non-Matrox computer with restrictions
Available on Matrox 4Sight GP
function map Function map
Examples
Synopsis
Control a system setting.
Syntax
void MsysControl(
MIL_ID SysId, //in
MIL_INT64 ControlType, //in
MIL_DOUBLE ControlValue //in
)
Description

This function allows you to control the specified system setting.

Note that, when a control type has only one supported control value on a given system, it is not documented in this function because it cannot be changed to another value. Instead, it can only be inquired.

To inquire the current value of a particular system setting, use MsysInquire().

You can also interactively control and test most of the system settings in real-time, using Matrox Intellicam's Feature Browser.

Note that when compiling C code, it is suggested to use the type-specific versions of this particular function, rather than the standard function prototype at the top of this page. An exhaustive list of type-specific versions of this function can be found at the bottom of this page.
Note that this function reference has not been updated for a MIL system added during a MIL update. Refer to the MIL system's release note to see which MIL system’s documentation you should use in its place and any possible differences.
Parameters
This function is not supported on the selected boards.
This function reference has not been updated for the selected MIL system. To show the content of this page, choose a second MIL system; refer to the MIL system's release note to see which MIL system’s documentation to choose and any possible differences.
Parameters
SysId

Specifies the system identifier. This parameter should be set to one of the following values:

function map For the system identifier
CollapseValue Description
Collapse M_DEFAULT_HOST

Specifies the default Host system of the current MIL application.

Collapse MIL system identifier

Specifies a valid system identifier, previously allocated using MsysAlloc().

ControlType

Specifies the type of setting to control.

See the Parameter associations section for possible values that can be specified.

ControlValue

Specifies the new value to assign to the system setting specified by the ControlType parameter.

See the Parameter associations section for possible values that can be specified.

The following control types allow you to control the general system settings.

function map For general system settings
CollapseControlType Description
MIL system-specific
tooltip (†)
ControlValue
Collapse M_ALLOCATION_OVERSCAN

Sets whether image buffers, allocated on the system, are allocated by default with an overscan region. Specify the size of the overscan region using M_ALLOCATION_OVERSCAN_SIZE.

Note that you can override this setting when allocating a buffer using the M_ALLOCATION_OVERSCAN attribute. INQ

(summarize)
a b c d e f g h i j k l m n o p q r s
Collapse M_DEFAULT

Same as M_ENABLE.

a b c d e f g h i j k l m n o p q r s
Collapse M_DISABLE

Specifies that image buffers allocated on the system will have no overscan region.

a b c d e f g h i j k l m n o p q r s
Collapse M_ENABLE

Specifies that image buffers are allocated on the system with an overscan region.

a b c d e f g h i j k l m n o p q r s
Collapse M_ALLOCATION_OVERSCAN_SIZE

Sets the size of the overscan region, added around all subsequently allocated image buffers (MbufAlloc...()). The overscan settings previously allocated image buffers are not changed. For more information, see the Buffer overscan region section of Chapter 19: Data buffers.

To enable or disable the allocation of an overscan region, change the setting of M_ALLOCATION_OVERSCAN. INQ

(summarize)
a b c d e f g h i j k l m n o p q r s
Collapse M_DEFAULT

Specifies the default size of the overscan region.

(summarize)
a b c d e f g h i j k l m n o p q r s
MIL system specific

The default size is 8 pixels.

a b c e f g h i j k l m n o p q r s

The default size is 0 pixels.

d
Collapse Value

Specifies the size of the overscan region, in pixels. For example, if you specify a size of 2, a 2-pixel overscan border is added around subsequently allocated image buffers.

(summarize)
a b c d e f g h i j k l m n o p q r s
Collapse M_DEFAULT_PITCH_BYTE_MULTIPLE

Sets the pitch (or stride) multiple (in bytes) for the buffers allocated on the system. The pitch is the number of bytes between the beginnings of any two adjacent rows of the buffer's data. The pitch multiple is the factor by which the pitch of a buffer must be divisible. When a buffer is allocated, if the specified width is not a multiple of this value, padding is added to the buffer so that the buffer's pitch meets this constraint. You would typically change this value when you need to reduce the padding of your buffer.

Note that, allocating a buffer with an overscan region can also be a cause of buffer padding. For more information, refer to M_ALLOCATION_OVERSCAN and the Accessing a MIL buffer directly section of Chapter 19: Data buffers.

When dealing with an on-board operation, changing the pitch multiple might force on-board operations to be performed off-board due to hardware limitations, thereby increasing the amount of time the operation might take. INQ

(summarize)
a b c d e f g h i j k l m n o p q r s
Collapse M_DEFAULT

Specifies the default value for the pitch multiple. The default value is highly MIL system-dependent. Always inquire the current pitch multiple before setting it, using MsysInquire() with M_DEFAULT_PITCH_BYTE_MULTIPLE.

(summarize)
a b c d e f g h i j k l m n o p q r s
Collapse Value

Specifies the pitch multiple, in bytes.

(summarize)
a b c d e f g h i j k l m n o p q r s
MIL system specific

The pitch multiple must be 4.

d
Collapse M_MODIFIED_BUFFER_HOOK_MODE

Sets whether to run user-defined functions hooked to a buffer modification on separate threads, up to the number of CPU cores present in the computer. This is particularly useful when functions are hooked using MdigProcess(). INQ

(summarize)
c g h i j k l m n o p q r s
Collapse M_DEFAULT

Same as M_SINGLE_THREAD.

c g h i j k l m n o p q r s
Collapse M_MULTI_THREAD +

Specifies to run user-defined functions hooked to a buffer modification on separate threads. The hooked functions are executed by any available CPU core. MIL cannot guarantee the processing order of any image on such a computer, because they are executed concurrently. If required, use Microsoft Windows functions to synchronize the threads.

Note that by default, this control value will allocate, as necessary, up to 16 threads, or the total number of CPU cores in the computer, whichever is least.

(summarize)
c g h i j k l m n o p q r s
Collapse M_SINGLE_THREAD

Specifies that only one thread should be created and that all user-defined functions hooked to buffer modifications are run on the same thread.

c g h i j k l m n o p q r s
Collapse M_THREAD_MODE

Sets whether threads allocated on the system can execute in asynchronous mode.

If you specify that threads on the system can execute in asynchronous mode, the MthrControl() M_THREAD_MODE control type setting of each of its threads is taken into account; otherwise, their M_THREAD_MODE control type setting is ignored. INQ

(summarize)
a b c d e f g h i j k l m n o p q r s
Collapse M_DEFAULT

Specifies the default value.

(summarize)
a b c d e f g h i j k l m n o p q r s
MIL system specific

Same as M_ASYNCHRONOUS.

b c d e g h i j k l m n o p q r s

Same as M_SYNCHRONOUS.

a f
Collapse M_ASYNCHRONOUS

Specifies that threads allocated on the system can execute in asynchronous mode. In asynchronous mode, control is returned to the Host immediately after a MIL function is sent to the processor of the system (when the system and function allow an immediate return).

(summarize)
b c d e g h i j k l m n o p q r s
Collapse M_SYNCHRONOUS

Specifies that threads allocated on the system can only execute in synchronous mode. In synchronous mode, the execution of a MIL function sent to the processor of a system must be completed (execution terminated) before returning control to the Host.

(summarize)
a b c d e f g h i j k l m n o p q r s
Collapse M_TIMEOUT

Sets the maximum amount of time for the Host to wait for a synchronous function to return before generating a time-out error.

Note that this value only works with functions that are performed on-board, such as MbufCopy() when copying from (or to) on-board memory or functions using an on-board processing FPGA. INQ

(summarize)
a b c e f g h i j k l m n o p q r s
Collapse M_DEFAULT

Specifies the default value.

(summarize)
a b c e f g h i j k l m n o p q r s
MIL system specific

The default value is 20 secs.

a b c e f g h i j k m n o p q r s

Same as M_INFINITE.

l
Collapse M_INFINITE

Waits indefinitely.

f l
Collapse Value

Specifies the time to wait, in secs.

a b c e f g h i j k l m n o p q r s
Combination constant for M_MULTI_THREAD (when ControlType=M_MODIFIED_BUFFER_HOOK_MODE and ControlValue=M_MULTI_THREAD).

You can add the following value to the above-mentioned value to set the number of hook threads to allocate.

function map For specifying the number of hook threads
CollapseCombination value Description
MIL system-specific
tooltip (†)
Collapse Value >= 1

Specifies the number of hook threads to allocate. Note that this value cannot exceed the number of CPU cores available.

(summarize)
c g h j k l m n o p q r s

The following control types allow you to set the mode and the routing of your Matrox imaging board's I/O signals (such as, auxiliary signal). Once the routing and mode are determined for an I/O signal, the MIL function that you should use to act upon an input signal or setup the source of an output signal depends on the functionality. For example, you can use MsysControl() with M_USER_BIT... control types, MdigControl() with M_GRAB_TRIGGER... control types, or MdigControl() with M_TIMER... control types.

Note that for other Matrox imaging boards that have auxiliary I/O signals, but are not supported with the constants below, see MdigControl().

Each Matrox imaging board and MIL driver has its own list of limitations regarding the signals you can control with this function. While general limitations are listed in the table below, for a complete list of the available signals and their limitations, see the Connectors and signal names section of the MIL Hardware-specific Notes chapter for your Matrox imaging board or MIL driver.

function map For routing I/O signals and setting their mode
CollapseControlType Description
MIL system-specific
tooltip (†)
ControlValue
Collapse M_IO_DEBOUNCE_TIME +

Sets the amount of time that the specified auxiliary input signal is debounced. INQ


You must specify a combination value from the following table:
(summarize)
a f
MIL system specific
[This is only applicable to Matrox 4Sight GP platform]

When a signal is debounced on Matrox 4Sight GPm, after detecting a valid input signal edge any other transitions are considered noise and are suppressed for the specified time, to ignore any additional transitions caused by the contact bounce of mechanical switches.

a

When a signal is debounced on Matrox Iris GT, debouncing ignores pulses of less than a specified width.

f
Collapse M_DEFAULT

Specifies the default value; the default value is 250 nsecs.

f
Collapse 0 <= Value <= 503316450
[This is only applicable to Matrox 4Sight GP platform]

Specifies the minimum amount of time to ignore any additional signal transitions after accepting a signal transition, in nsecs.

This is only available on Matrox 4Sight GPm with MIL 10 Update 26 installed.

(summarize)
a
Collapse 250;1000;5000;10000;1000000;10000000;25000000

Specifies the amount of time that an auxiliary input signal must be active for it to be accepted, in nsecs.

f
Collapse M_IO_GLITCH_FILTER_STATE +
[This is only applicable to Matrox 4Sight GP platform]

Sets whether to enable a glitch filter on input signals. A glitch is an unexpected signal transition of a short duration. Enabling the glitch filter will eliminate glitches of less than 500 nsecs on all input signals.

This is only available on Matrox 4Sight GPm with MIL 10 Update 26 installed. INQ


You must specify a combination value from the following table:
(summarize)
a
Collapse M_DEFAULT

Same as M_DISABLE.

a
Collapse M_DISABLE

Specifies not to use a glitch filter.

a
Collapse M_ENABLE

Specifies to use a glitch filter.

a
Collapse M_IO_INTERRUPT_ACTIVATION +

Sets the signal transition upon which to generate an interrupt, if interrupt generation has been enabled for the specified I/O signal. Use M_IO_INTERRUPT_STATE to enable interrupt generation.

Note that this only applies to input signals.

Note that this control type only has an effect when M_IO_INTERRUPT_STATE is enabled. INQ


You must specify a combination value from the following table:
(summarize)
a b e f g h
MIL system specific

This control type is only available with auxiliary I/O signal 0.

b
[This is only applicable to Matrox 4Sight GP and Matrox 4Sight-X platforms]

This constant is only available on a Host system if the Host system has been allocated on a Matrox 4Sight.

a
Collapse M_DEFAULT

Same as M_EDGE_RISING.

a b e f g h
Collapse M_ANY_EDGE

Specifies to generate an interrupt upon both a low-to-high and a high-to-low signal transition.

b e g h
Collapse M_EDGE_FALLING

Specifies that an interrupt will be generated upon a high-to-low signal transition.

a b e f g h
Collapse M_EDGE_RISING

Specifies that an interrupt will be generated upon a low-to-high signal transition.

a b e f g h
Collapse M_IO_INTERRUPT_STATE +

Sets whether to generate an interrupt upon the specified transition of the I/O signal. Use M_IO_INTERRUPT_ACTIVATION to specify the transition. Note that this only applies to input signals, or I/O signals set to input (using M_IO_MODE). INQ


You must specify a combination value from the following table:
(summarize)
a b e f g h
MIL system specific

This control type is only available with auxiliary I/O signal 0.

b
[This is only applicable to Matrox 4Sight GP and Matrox 4Sight-X platforms]

This constant is only available on a Host system if the Host system has been allocated on a Matrox 4Sight.

a
Collapse M_DEFAULT

Same as M_DISABLE.

a b e f g h
Collapse M_DISABLE

Specifies not to generate an interrupt.

a b e f g h
Collapse M_ENABLE

Specifies to generate an interrupt.

a b e f g h
Collapse M_IO_MODE +

Sets the mode of the specified I/O signal. Note that you can only change the mode of a bidirectional (I/O) signal. INQ


You must specify a combination value from the following table:
(summarize)
g h
Collapse M_INPUT

Specifies that the signal is for input.

g h
Collapse M_OUTPUT

Specifies that the signal is for output.

g h
Collapse M_IO_SOURCE +

Sets the type of signal to route to an output signal, or a bidirectional signal set to output mode. INQ


You must specify a combination value from the following table:
(summarize)
a f
MIL system specific
[This is only applicable to Matrox 4Sight GP and Matrox 4Sight-X platforms]

This constant is only available on a Host system if the Host system has been allocated on a Matrox 4Sight.

a
Collapse M_DEFAULT

Same as M_USER_BITn.

a f
Collapse M_AUX_IOn
[This is only applicable to Matrox 4Sight GP and Matrox 4Sight-X platforms]

Specifies to route auxiliary signal n, where n is a number of the auxiliary signal.

Note that you cannot route an auxiliary input signal to an auxiliary output signal.

For a list of the available auxiliary I/O signals, see the Connectors and signal names section of the MIL Hardware-specific Notes chapter for your Matrox imaging board or Matrox 4Sight.

(summarize)
a
Collapse M_EXPOSURE

Specifies to route the exposure signal of the camera.

f
Collapse M_GRAB_TRIGGER

Specifies to route the grab trigger signal.

f
Collapse M_IO_COMMAND_LISTn +
[This is only applicable to Matrox 4Sight GP platform]

Specifies to route the output a bit of the I/O command register of I/O command list n, where n is the number of the I/O command list.

This is only available on Matrox 4Sight GPm with MIL 10 Update 26 installed.

[Matrox 4Sight GP]

For the Matrox 4Sight GPm, n can be either 1 or 2.


You must specify a combination value from the following table:
(summarize)
a
Collapse M_ROTARY_ENCODERn
[This is only applicable to Matrox 4Sight GP platform]

Specifies to route the output of rotary encoder n, where n is the number of rotary encoders available.

This is only available on Matrox 4Sight GPm with MIL 10 Update 26 installed.

[Matrox 4Sight GP]

For the Matrox 4Sight GPm, n can be either 1 or 2.

(summarize)
a
Collapse M_TIMER2

Specifies to route the output of timer 2.

f
Collapse M_TIMERn
[This is only applicable to Matrox 4Sight GP platform]

Specifies to route the output of timer n, where n is the number of timers available.

This is only available on Matrox 4Sight GPm with MIL 10 Update 26 installed.

[Matrox 4Sight GP]

For the Matrox 4Sight GPm, n can be a value from 1 to 16.

(summarize)
a
Collapse M_USER_BITn

Specifies to route the state of bit n of the main static-user-output register, where n is the bit number.

For the number of the user-bit that can drive the specified output signal, see the Connectors and signal names section of the MIL Hardware-specific Notes chapter for your Matrox imaging board or Matrox 4Sight.

(summarize)
a f
Combination constant for the values listed in For routing I/O signals and setting their mode.

You must add the following value to the above-mentioned values to set the type and number of the I/O signal to affect.

function map For specifying the type and number of the I/O signal to affect
CollapseCombination value Description
MIL system-specific
tooltip (†)
Collapse M_AUX_IOn

Specifies to affect auxiliary signal n, where n is the signal number.

Note that, when using this value with M_IO_SOURCE, the auxiliary signal n must be an output signal, or an I/O signal set to output (using M_IO_MODE).

For a list of the available auxiliary I/O signals, see the Connectors and signal names section of the MIL Hardware-specific Notes chapter for your Matrox imaging board or Matrox 4Sight.

(summarize)
a b e f g h

The following control types and control values allow you to set the bits in a static-user-output register. You can route the bits to output signals or I/O signals set to output; to do so use M_IO_SOURCE with M_USER_BIT...). To establish which user-bits can be routed to a specific signal, see the connectors and signal names section of the MIL Hardware-specific Notes chapter for your Matrox imaging board or Matrox 4Sight.

Note that for other Matrox imaging boards that have user-bits, but are not supported with the constants below, see MdigControl().

function map For setting the state of specified user-bits in a static-user-output register
CollapseControlType Description
MIL system-specific
tooltip (†)
ControlValue
Collapse M_USER_BIT_STATE +

Sets the state of the specified bit of a static-user-output register. INQ


You must specify a combination value from the following table:
(summarize)
a b e f g h
MIL system specific
[This is only applicable to Matrox 4Sight GP and Matrox 4Sight-X platforms]

This constant is only available on a Host system if the Host system has been allocated on a Matrox 4Sight.

a
Collapse M_OFF

Specifies that the specified bit is set to off.

a b e f g h
Collapse M_ON

Specifies that the specified bit is set to on.

a b e f g h
Collapse M_USER_BIT_STATE_ALL

Sets the state of all the bits in the main static-user-output register. INQ

(summarize)
a b e f g h
MIL system specific
[This is only applicable to Matrox 4Sight GP and Matrox 4Sight-X platforms]

This constant is only available on a Host system if the Host system has been allocated on a Matrox 4Sight.

a
Collapse Value

Specifies a bit-encoded value that establishes the value of all the bits of the specified static-user-output register. It is recommended to specify the value in hexadecimal notation (0x), so that it is more legible to what you are setting each bit of the register.

(summarize)
a b e f g h
Combination constant for M_USER_BIT_STATE.

You must add the following value to the above-mentioned value to specify the bit in a static-user-output register to affect.

function map For specifying the bit in a static-user-output register to affect
CollapseCombination value Description
MIL system-specific
tooltip (†)
Collapse M_USER_BITn

Specifies to affect bit n of the main static-user-output register.

a b e f g h

The following control types and control values specify the settings for controlling timers and the signals generated from a timer (timer output signals). For more information, see the Timers and coordinating events section of Chapter 24: I/O signals and communicating with external devices.

function map For controlling the settings of a timer
CollapseControlType Description
MIL system-specific
tooltip (†)
ControlValue
Collapse M_TIMER_ARM +
[This is only applicable to Matrox 4Sight GP platform]

Sets whether to enable the timer arming mechanism. If timer arming is enabled, then the timer will ignore its trigger signal (M_TIMER_TRIGGER_SOURCE) until a signal transition specified using M_TIMER_ARM_ACTIVATION occurs on the signal specified using M_TIMER_ARM_SOURCE.

This is only available on Matrox 4Sight GPm with MIL 10 Update 26 installed. INQ


You must specify a combination value from the following table:
(summarize)
a
Collapse M_DEFAULT

Same as M_DISABLE.

a
Collapse M_DISABLE

Specifies that timer arming is disabled.

a
Collapse M_ENABLE

Specifies that timer arming is enabled.

a
Collapse M_TIMER_ARM_ACTIVATION +
[This is only applicable to Matrox 4Sight GP platform]

Sets the signal transition upon which to arm the timer, if timer arming is enabled. Use M_TIMER_ARM to enable timer arming. Use M_TIMER_ARM_SOURCE to set which input signal will arm the timer.

This is only available on Matrox 4Sight GPm with MIL 10 Update 26 installed. INQ


You must specify a combination value from the following table:
(summarize)
a
Collapse M_DEFAULT

Same as M_EDGE_RISING.

a
Collapse M_ANY_EDGE

Specifies that the timer will be armed by both a high-to-low and a low-to-high signal transition.

a
Collapse M_EDGE_FALLING

Specifies that the timer will be armed upon a high-to-low signal transition.

a
Collapse M_EDGE_RISING

Specifies that the timer will be armed upon a low-to-high signal transition.

a
Collapse M_LEVEL_HIGH

Specifies that a timer is continuously armed during a high signal polarity.

a
Collapse M_LEVEL_LOW

Specifies that a timer is continuously armed during a low signal polarity.

a
Collapse M_TIMER_ARM_SOFTWARE +
[This is only applicable to Matrox 4Sight GP platform]

Issues a software trigger to arm the timer.

To use this setting, the timer's arm source must be set to software (M_TIMER_ARM_SOURCE set to M_SOFTWARE).

This is only available on Matrox 4Sight GPm with MIL 10 Update 26 installed.


You must specify a combination value from the following table:
(summarize)
a
Collapse M_DEFAULT

Specifies the default behavior.

a
Collapse M_TIMER_ARM_SOURCE +
[This is only applicable to Matrox 4Sight GP platform]

Sets which input signal will arm the timer, if timer arming is enabled. Use M_TIMER_ARM to enable timer arming.

This is only available on Matrox 4Sight GPm with MIL 10 Update 26 installed. INQ


You must specify a combination value from the following table:
(summarize)
a
Collapse M_AUX_IOn

Specifies to use auxiliary input signal n as the source signal used to arm the specified timer, where n is the number of the auxiliary signal.

[Matrox 4Sight GP]

For Matrox 4Sight GPm, n can be a value of 8 to 15.

(summarize)
a
Collapse M_SOFTWARE

Specifies to use software to arm the specified timer.

a
Collapse M_TIMERn

Specifies to use the output signal of the specified timer as the source signal to arm the timer, where n is the timer number.

[Matrox 4Sight GP]

For Matrox 4Sight GPm, n can be a value of 1 to 16.

(summarize)
a
Collapse M_TIMER_CLOCK_ACTIVATION +
[This is only applicable to Matrox 4Sight GP platform]

Sets the edge of the signal that will increment the clock used to control the active portion of the timer's output signal.

This is only available on Matrox 4Sight GPm with MIL 10 Update 26 installed. INQ


You must specify a combination value from the following table:
(summarize)
a
Collapse M_DEFAULT

Same as M_EDGE_RISING.

a
Collapse M_ANY_EDGE

Specifies that the clock will be incremented by both a high-to-low and a low-to-high signal transition.

a
Collapse M_EDGE_FALLING

Specifies that the clock will be incremented by a high-to-low signal transition.

a
Collapse M_EDGE_RISING

Specifies that the clock will be incremented by a low-to-high signal transition.

a
Collapse M_TIMER_CLOCK_FREQUENCY +
[This is only applicable to Matrox 4Sight GP platform]

Sets the frequency of the clock source signal for the active portion of the timer's output signal (M_TIMER_CLOCK_SOURCE).

Note that if M_TIMER_CLOCK_SOURCE is set to M_AUX_IOn or M_ROTARY_ENCODERn, and no clock source frequency is specified, the values that are normally specified or returned in units of time will be in number of ticks (clock signal transitions on the clock source).

If M_TIMER_CLOCK_SOURCE is set to M_SYSCLK, changing the frequency to any value different than the system clock's frequency will cause an error.

This is only available on Matrox 4Sight GPm with MIL 10 Update 26 installed. INQ


You must specify a combination value from the following table:
(summarize)
a
Collapse M_UNKNOWN

Specifies that the signal is not periodic or the frequency is unknown.

a
Collapse 0 < Value <= Frequency of M_SYSCLK

Specifies the frequency, in Hz.

a
Collapse M_TIMER_CLOCK_SOURCE +
[This is only applicable to Matrox 4Sight GP platform]

Specifies the source of the clock that drives the active portion of the specified timer's output signal.

This is only available on Matrox 4Sight GPm with MIL 10 Update 26 installed. INQ

[Matrox 4Sight GP]

For Matrox 4Sight GPm, the clock source used for the delay can be different from the clock source used for the active portion of the timer's output signal. This is useful, for example, if you want to specify the delay in signal transitions and the active portion in nsecs.


You must specify a combination value from the following table:
(summarize)
a
Collapse M_DEFAULT

Same as M_SYSCLK.

a
Collapse M_AUX_IOn

Specifies to use auxiliary input signal n as the clock source, where n is the number of the auxiliary signal. If the signal is periodic, specify its frequency using M_TIMER_CLOCK_FREQUENCY.

[Matrox 4Sight GP]

For Matrox 4Sight GPm, n can be a value of 8 to 15.

(summarize)
a
Collapse M_ROTARY_ENCODERn

Specifies to use rotary decoder n as the clock source, where n is the number of the rotary decoder. If the signal is periodic, specify its frequency using M_TIMER_CLOCK_FREQUENCY.

[Matrox 4Sight GP]

For Matrox 4Sight GPm, n can be 1 or 2.

(summarize)
a
Collapse M_SYSCLK

Specifies to use the allocated system's clock source.

a
Collapse M_TIMER_DELAY +
[This is only applicable to Matrox 4Sight GP platform]

Sets the delay between the timer trigger and the active portion of the timer's output signal.

Note, an error is generated if the specified delay cannot be respected.

This is only available on Matrox 4Sight GPm with MIL 10 Update 26 installed. INQ

[Matrox 4Sight GP]

For Matrox 4Sight GPm, the clock source used for the delay can be different from the clock source used for the active portion of the timer's output signal. This is useful, for example, if you want to specify the delay in signal transitions and the active portion in nsecs.


You must specify a combination value from the following table:
(summarize)
a
Collapse 0 <= Value <= Max. value

Specifies the delay. If M_TIMER_DELAY_CLOCK_SOURCE is set to M_SYSCLK or a frequency is specified using M_TIMER_DELAY_CLOCK_FREQUENCY, this value is specified in nsecs. Otherwise, it is specified in number of clock ticks (signal transitions on the clock source).

Use MsysInquire() to determine the maximum possible value.

(summarize)
a
Collapse M_TIMER_DELAY_CLOCK_ACTIVATION +
[This is only applicable to Matrox 4Sight GP platform]

Sets the signal transition that will increment the clock used to control the delay between the timer's trigger and the active portion of the timer's output signal.

If M_TIMER_DELAY_CLOCK_SOURCE is set to M_FOLLOW_TIMER_CLOCK, changing this setting to a value different than the value of M_TIMER_CLOCK_ACTIVATION will cause an error.

This is only available on Matrox 4Sight GPm with MIL 10 Update 26 installed. INQ


You must specify a combination value from the following table:
(summarize)
a
Collapse M_DEFAULT

Same as M_EDGE_RISING.

a
Collapse M_ANY_EDGE

Specifies that the clock will be incremented by both a high-to-low and a low-to-high signal transition.

a
Collapse M_EDGE_FALLING

Specifies that the clock will be incremented by a high-to-low signal transition.

a
Collapse M_EDGE_RISING

Specifies that the clock will be incremented by a low-to-high signal transition.

a
Collapse M_TIMER_DELAY_CLOCK_FREQUENCY +
[This is only applicable to Matrox 4Sight GP platform]

Sets the frequency of the clock source signal for the delay between the timer's trigger and the active portion of the timer's output signal (M_TIMER_DELAY_CLOCK_SOURCE).

Note that if M_TIMER_DELAY_CLOCK_SOURCE is set to M_AUX_IOn or M_ROTARY_ENCODERn, and no clock source frequency is specified, the values that are normally specified or returned in units of time will be in number of ticks.

If M_TIMER_DELAY_CLOCK_SOURCE is set to M_SYSCLK, changing the frequency to any value different than system clock's frequency will cause an error. If M_TIMER_DELAY_CLOCK_SOURCE is set to M_FOLLOW_TIMER_CLOCK, changing the frequency to a value different than the value of M_TIMER_CLOCK_FREQUENCY will cause an error.

This is only available on Matrox 4Sight GPm with MIL 10 Update 26 installed. INQ


You must specify a combination value from the following table:
(summarize)
a
Collapse M_UNKNOWN

Specifies that the signal is not periodic or the frequency is unknown.

a
Collapse 0 < Value <= Frequency of M_SYSCLK

Specifies the frequency, in Hz.

a
Collapse M_TIMER_DELAY_CLOCK_SOURCE +
[This is only applicable to Matrox 4Sight GP platform]

Specifies the source of the clock that drives the delay between the timer's trigger and the active portion of the specified timer's output signal.

This is only available on Matrox 4Sight GPm with MIL 10 Update 26 installed. INQ

[Matrox 4Sight GP]

For Matrox 4Sight GPm, the clock source used for the delay can be different from the clock source used for the active portion of the timer's output signal. This is useful, for example, if you want to specify the delay in signal transitions and the active portion in nsecs.


You must specify a combination value from the following table:
(summarize)
a
Collapse M_DEFAULT

Same as M_FOLLOW_TIMER_CLOCK.

a
Collapse M_AUX_IOn

Specifies to use auxiliary input signal n as the clock source, where n is the number of the auxiliary signal.

[Matrox 4Sight GP]

For Matrox 4Sight GPm, n can be a value of 8 to 15.

(summarize)
a
Collapse M_FOLLOW_TIMER_CLOCK

Specifies to use the clock source specified by M_TIMER_CLOCK_SOURCE. If the clock source is set to this value and M_TIMER_CLOCK_SOURCE is changed, this clock source changes as well. Additionally, any changes to M_TIMER_CLOCK_ACTIVATION and M_TIMER_CLOCK_FREQUENCY will also be reflected in M_TIMER_DELAY_CLOCK_ACTIVATION and M_TIMER_DELAY_CLOCK_FREQUENCY.

(summarize)
a
Collapse M_ROTARY_ENCODERn

Specifies to use rotary decoder n as the clock source, where n is the number of the rotary decoder.

[Matrox 4Sight GP]

For Matrox 4Sight GPm, n can be 1 or 2.

(summarize)
a
Collapse M_SYSCLK

Specifies to use the allocated system's clock source.

a
Collapse M_TIMER_DURATION +
[This is only applicable to Matrox 4Sight GP platform]

Sets the duration for the active portion of the timer's output signal.

Note, an error is generated if the specified duration cannot be respected.

This is only available on Matrox 4Sight GPm with MIL 10 Update 26 installed. INQ

[Matrox 4Sight GP]

For Matrox 4Sight GPm, the clock source used for the delay can be different from the clock source used for the active portion of the timer's output signal. This is useful, for example, if you want to specify the delay in signal transitions and the active portion in nsecs.


You must specify a combination value from the following table:
(summarize)
a
Collapse 0 <= Value <= Max. value

Specifies the duration of the active portion of the timer output signal. If M_TIMER_CLOCK_SOURCE is set to M_SYSCLK or a frequency is specified using M_TIMER_CLOCK_FREQUENCY, this value is specified in nsecs. Otherwise, it is specified in number of clock ticks (signal transitions on the clock source).

Use MsysInquire() to determine the maximum possible value.

(summarize)
a
Collapse M_TIMER_OUTPUT_INVERTER +
[This is only applicable to Matrox 4Sight GP platform]

Sets whether the output of the timer should be inverted. This causes the low portion of the signal (the delay period) to be high and the high portion of the signal (the active portion) to be low.

This is only available on Matrox 4Sight GPm with MIL 10 Update 26 installed. INQ


You must specify a combination value from the following table:
(summarize)
a
Collapse M_DEFAULT

Same as M_DISABLE.

a
Collapse M_DISABLE

Specifies not to invert the output of the timer.

a
Collapse M_ENABLE

Specifies to invert the output of the timer.

a
Collapse M_TIMER_STATE +
[This is only applicable to Matrox 4Sight GP platform]

Sets the state of the specified timer.

When a timer is enabled, the timer waits for a trigger to be received. To set the source of the trigger, use M_TIMER_TRIGGER_SOURCE. Once the trigger is received, the timer starts by outputting a low signal. This lasts for the duration of the delay period (set using M_TIMER_DELAY). The timer then changes to output a high signal for the duration of the active period (set using M_TIMER_DURATION). To invert this signal, use M_TIMER_OUTPUT_INVERTER.

This is only available on Matrox 4Sight GPm with MIL 10 Update 26 installed. INQ


You must specify a combination value from the following table:
(summarize)
a
Collapse M_DEFAULT

Same as M_DISABLE.

a
Collapse M_DISABLE

Specifies that the timer is disabled.

a
Collapse M_ENABLE

Specifies that the timer is enabled.

a
Collapse M_TIMER_TRIGGER_ACTIVATION +
[This is only applicable to Matrox 4Sight GP platform]

Sets the signal variation upon which to generate a timer trigger. The timer will be triggered when the specified signal transition occurs on the source signal specified by M_TIMER_TRIGGER_SOURCE.

This is only available on Matrox 4Sight GPm with MIL 10 Update 26 installed. INQ


You must specify a combination value from the following table:
(summarize)
a
Collapse M_DEFAULT

Same as M_EDGE_RISING.

a
Collapse M_ANY_EDGE

Specifies that a timer trigger will be generated both upon a high-to-low and a low-to-high signal transition.

a
Collapse M_EDGE_FALLING

Specifies that a timer trigger will be generated upon a high-to-low signal transition.

a
Collapse M_EDGE_RISING

Specifies that a timer trigger will be generated upon a low-to-high signal transition.

a
Collapse M_LEVEL_HIGH

Specifies that a timer trigger is continuously issued during a high signal polarity.

a
Collapse M_LEVEL_LOW

Specifies that a timer trigger is continuously issued during a low signal polarity.

a
Collapse M_TIMER_TRIGGER_SOFTWARE +
[This is only applicable to Matrox 4Sight GP platform]

Issues a software trigger for the specified timer.

To use this setting, the timer's trigger source must be set to software (M_TIMER_TRIGGER_SOURCE set to M_SOFTWARE).

This is only available on Matrox 4Sight GPm with MIL 10 Update 26 installed.


You must specify a combination value from the following table:
(summarize)
a
Collapse M_DEFAULT

Specifies the default behavior.

a
Collapse M_TIMER_TRIGGER_SOURCE +
[This is only applicable to Matrox 4Sight GP platform]

Sets the trigger source for the specified timer. The timer will be triggered when the signal transition specified using M_TIMER_TRIGGER_ACTIVATION occurs on the selected source.

This is only available on Matrox 4Sight GPm with MIL 10 Update 26 installed. INQ


You must specify a combination value from the following table:
(summarize)
a
Collapse M_AUX_IOn

Specifies to use auxiliary input signal n as the trigger source for the specified timer, where n is the number of the auxiliary signal.

[Matrox 4Sight GP]

For Matrox 4Sight GPm, n can be a value of 8 to 15.

(summarize)
a
Collapse M_CONTINUOUS

Specifies to run the specified timer in periodic mode; no actual trigger signal is used. The timer is automatically reset after the timer's duration expires. The timer loops between a delay and an active period.

(summarize)
a
Collapse M_IO_COMMAND_LISTn +

Specifies to use a bit of the I/O command register of I/O command list n, where n is the number of the I/O command list.

[Matrox 4Sight GP]

For Matrox 4Sight GPm, n can be either 1 or 2.


You must specify a combination value from the following table:
(summarize)
a
Collapse M_ROTARY_ENCODERn

Specifies to use rotary decoder n as the trigger source, where n is the number of the rotary decoder.

[Matrox 4Sight GP]

For Matrox 4Sight GPm, n can be 1 or 2.

(summarize)
a
Collapse M_SOFTWARE

Specifies to use a software trigger as the trigger source. Use M_TIMER_TRIGGER_SOFTWARE to issue the trigger.

(summarize)
a
Collapse M_TIMERn

Specifies to use the output signal of the specified timer as the trigger source, where n is the timer number.

[Matrox 4Sight GP]

For Matrox 4Sight GPm, n can be a value of 1 to 16.

(summarize)
a
Collapse M_TIMER_USAGE +
[This is only applicable to Matrox 4Sight GP platform]

Sets the purpose of the timer.

This is only available on Matrox 4Sight GPm with MIL 10 Update 26 installed. INQ


You must specify a combination value from the following table:
(summarize)
a
Collapse M_DEFAULT

Same as M_PULSE_GENERATION.

a
Collapse M_PULSE_GENERATION

Specifies the normal use of the timer, as described in the Timers and coordinating events section of Chapter 24: I/O signals and communicating with external devices.

a
Collapse M_PULSE_MEASUREMENT

Specifies to use the timer to measure the duration of the pulse that occurs on the timer's trigger source. Note that when in this mode, the timer's output always remains low, and the values set using M_TIMER_DELAY_CLOCK_SOURCE, M_TIMER_DELAY, and M_TIMER_DURATION are ignored.

When a timer is set in this mode, the duration of pulses that occur on the timer's trigger source (M_TIMER_TRIGGER_SOURCE) are measured with respect to the timer's clock source (M_TIMER_CLOCK_SOURCE). To measure active-high pulses, set M_TIMER_TRIGGER_ACTIVATION to M_LEVEL_HIGH; to measure active-low pulses, set M_TIMER_TRIGGER_ACTIVATION to M_LEVEL_LOW. The duration of the pulse can be inquired using MsysInquire() with M_TIMER_VALUE.

Between pulses, you can reset the timer value using MsysControl() with M_TIMER_VALUE.

(summarize)
a
Collapse M_TIMER_VALUE +
[This is only applicable to Matrox 4Sight GP platform]

Resets the timer value.

This is only available on Matrox 4Sight GPm with MIL 10 Update 26 installed.


You must specify a combination value from the following table:
(summarize)
a
Collapse 0

Specifies to reset the timer value to 0.

a
Combination constant for the values listed in For controlling the settings of a timer.

You must add the following value to the above-mentioned values to specify which on-board timer to control.

function map For specifying which on-board timer to control
CollapseCombination value Description
MIL system-specific
tooltip (†)
Collapse M_TIMERn
[This is only applicable to Matrox 4Sight GP platform]

Specifies on-board timer n, where n is the number of the timer.

This is only available on Matrox 4Sight GPm with MIL 10 Update 26 installed.

[Matrox 4Sight GP]

For Matrox 4Sight GPm, n can be a value from 1 to 16.

(summarize)
a
Combination constant for M_IO_COMMAND_LISTn (when ControlType=M_IO_SOURCE and ControlValue=M_IO_COMMAND_LISTn); M_IO_COMMAND_LISTn (when ControlType=M_TIMER_TRIGGER_SOURCE and ControlValue=M_IO_COMMAND_LISTn).

You must add the following value to the above-mentioned values to specify which I/O command register bit to use.

function map For specifying which I/O command register bit to use
CollapseCombination value Description
MIL system-specific
tooltip (†)
Collapse M_IO_COMMAND_BITn
[This is only applicable to Matrox 4Sight GP platform]

Specifies I/O command register bit n, where n represents the bit number.

This is only available on Matrox 4Sight GPm with MIL 10 Update 26 installed.

[Matrox 4Sight GP]

For Matrox 4Sight GPm, n can be a value from 0 to 7.

(summarize)
a

The following control types allow you to control the settings of a rotary decoder.

function map For controlling the settings of a rotary decoder
CollapseControlType Description
MIL system-specific
tooltip (†)
ControlValue
Collapse M_ROTARY_ENCODER_BIT0_SOURCE +
[This is only applicable to Matrox 4Sight GP platform]

Sets the auxiliary input signal on which to receive bit 0 of the 2-bit Gray code.

This is only available on Matrox 4Sight GPm with MIL 10 Update 26 installed. INQ


You must specify a combination value from the following table:
(summarize)
a
Collapse M_AUX_IOn

Specifies to use auxiliary input signal n as the signal on which to receive bit 0 of the 2-bit Gray code, where n is the number of the auxiliary signal.

[Matrox 4Sight GP]

For Matrox 4Sight GPm, n can be a value from 8 to 15.

(summarize)
a
Collapse M_ROTARY_ENCODER_BIT1_SOURCE +
[This is only applicable to Matrox 4Sight GP platform]

Sets the auxiliary input signal on which to receive bit 1 of the 2-bit Gray code.

This is only available on Matrox 4Sight GPm with MIL 10 Update 26 installed. INQ


You must specify a combination value from the following table:
(summarize)
a
Collapse M_AUX_IOn

Specifies to use auxiliary input signal n as the signal on which to receive bit 1 of the 2-bit Gray code, where n is the number of the auxiliary signal.

[Matrox 4Sight GP]

For Matrox 4Sight GPm, n can be a value from 8 to 15.

(summarize)
a
Collapse M_ROTARY_ENCODER_OUTPUT_MODE +
[This is only applicable to Matrox 4Sight GP platform]

Sets the rotary decoder's counter value and/or the direction of movement upon which the rotary decoder should output a pulse. The pulse can be used to trigger a timer. To trigger a timer, set M_TIMER_TRIGGER_SOURCE to M_ROTARY_ENCODERn.

To decimate (subsample) the rotary decoder output signal before sending it to a timer or a grab controller, set this control type to M_POSITION_TRIGGER and set M_ROTARY_ENCODER_POSITION_TRIGGER to the required decimation value. For more information, refer to the Pixel aspect ratio subsection of the Using quadrature input from a rotary encoder section of Chapter 24: I/O signals and communicating with external devices.

This is only available on Matrox 4Sight GPm with MIL 10 Update 26 installed. INQ


You must specify a combination value from the following table:
(summarize)
a
Collapse M_POSITION_TRIGGER

Specifies to output a pulse upon the trigger generated by M_ROTARY_ENCODER_POSITION_TRIGGER.

a
Collapse M_STEP_ANY

Specifies to output a pulse upon any change in the rotary decoder's counter value (position change in any direction).

a
Collapse M_STEP_BACKWARD

Specifies to output a pulse upon a rotary decoder counter decrement only.

a
Collapse M_STEP_FORWARD

Specifies to output a pulse upon a rotary decoder counter increment only.

a
Collapse M_STEP_FORWARD_NEW_POSITIVE

Specifies to output a pulse upon a rotary decoder counter increment of a new value that has not been reached before. For example, if the counter value is at 10, and is decremented down to 7, the rotary decoder will only output a pulse when the counter is incremented up to 11.

(summarize)
a
Collapse M_ROTARY_ENCODER_POSITION_TRIGGER +
[This is only applicable to Matrox 4Sight GP platform]

Sets the value of the rotary decoder's counter upon which a trigger is generated.

You can output this trigger to a timer or a grab controller using M_ROTARY_ENCODER_OUTPUT_MODE set to M_POSITION_TRIGGER.

This is only available on Matrox 4Sight GPm with MIL 10 Update 26 installed. INQ


You must specify a combination value from the following table:
(summarize)
a
Collapse 0 <= Value <= 0xFFFFFFFF

Specifies the value of the counter upon which a trigger is generated. If a value beyond the supported range is specified, an error is generated.

If you are treating the counter values as a signed range of values (for example, forcing the counter to reset to 0 at 0x80000000) and you want to generate a trigger upon a negative value, specify the equivalent value in the range of 0x80000000 to 0xFFFFFFFF.

(summarize)
a
Collapse M_ROTARY_ENCODER_RESET_ACTIVATION +
[This is only applicable to Matrox 4Sight GP platform]

Sets the signal transition upon which to reset the rotary decoder's counter to 0. The rotary decoder will reset the counter to 0 when the signal transition occurs on the source signal specified by M_ROTARY_ENCODER_RESET_SOURCE.

This is only available on Matrox 4Sight GPm with MIL 10 Update 26 installed. INQ


You must specify a combination value from the following table:
(summarize)
a
Collapse M_DEFAULT

Same as M_EDGE_RISING.

a
Collapse M_EDGE_FALLING

Specifies to reset the rotary decoder upon a high-to-low signal transition.

a
Collapse M_EDGE_RISING

Specifies to reset the rotary decoder upon a low-to-high signal transition.

a
Collapse M_ROTARY_ENCODER_RESET_SOURCE +
[This is only applicable to Matrox 4Sight GP platform]

Sets the source signal to use to reset the rotary decoder's counter to 0. The rotary decoder will reset the counter to 0 when the signal transition specified using M_ROTARY_ENCODER_RESET_ACTIVATION occurs on the selected source.

This is only available on Matrox 4Sight GPm with MIL 10 Update 26 installed. INQ


You must specify a combination value from the following table:
(summarize)
a
Collapse M_NULL

Specifies not to reset using a hardware signal source.

a
Collapse M_AUX_IOn

Specifies to use auxiliary input signal n as the trigger source for the specified timer, where n is the number of the auxiliary signal.

[Matrox 4Sight GP]

With Matrox 4Sight GPm, n can be a value from 8 to 15.

(summarize)
a
Collapse M_POSITION_TRIGGER

Specifies to use the trigger signal generated by the rotary decoder when the counter reaches the value specified with M_ROTARY_ENCODER_POSITION_TRIGGER.

a
Collapse M_ROTARY_ENCODER_STATE +
[This is only applicable to Matrox 4Sight GP platform]

Sets whether to enable the rotary decoder.

This is only available on Matrox 4Sight GPm with MIL 10 Update 26 installed. INQ


You must specify a combination value from the following table:
(summarize)
a
Collapse M_DEFAULT

Same as M_DISABLE.

a
Collapse M_DISABLE

Specifies that the rotary decoder is disabled.

a
Collapse M_ENABLE

Specifies that the rotary decoder is enabled.

a
Combination constant for the values listed in For controlling the settings of a rotary decoder.

You must add the following value to the above-mentioned values to specify which rotary decoder to set.

function map For specifying which rotary decoder to set
CollapseCombination value Description
MIL system-specific
tooltip (†)
Collapse M_ROTARY_ENCODERn
[This is only applicable to Matrox 4Sight GP platform]

Specifies rotary decoder n, where n is the number of the rotary decoder.

This is only available on Matrox 4Sight GPm with MIL 10 Update 26 installed.

[Matrox 4Sight GP]

For Matrox 4Sight GPm, n can be 1 or 2.

(summarize)
a

The following control types and control values specify the settings for UARTs. To specify a particular UART, see the For specifying which UART to control combination value below.

Note that for other Matrox imaging boards that have a UART, but are not supported with the constants below, see MdigControl().

function map For UART settings
CollapseControlType Description
MIL system-specific
tooltip (†)
ControlValue
Collapse M_UART_DATA_SIZE +

Sets the number of data bits per character that are sent or received by the UART. INQ

(summarize)
g j l m p r
Collapse M_DEFAULT

Same as 8.

g j l m p r
Collapse 7

Specifies that the data length is 7 bits.

g j l m p r
Collapse 8

Specifies that the data length is 8 bits.

g j l m p r
Collapse M_UART_FREE +

Stops all MIL UART operations and frees all UART resources used by MIL.

(summarize)
g j l m p r
Collapse M_DEFAULT

Specifies the default behavior.

g j l m p r
Collapse M_UART_PARITY +

Sets whether character data is sent or received with a parity bit and how the parity bit is set. The parity bit is an extra data bit (0 or 1) that is added to each character for error checking purposes. INQ

(summarize)
g j l m p r
Collapse M_DEFAULT

Same as M_DISABLE.

g j l m p r
Collapse M_DISABLE

Species that no extra bit is added (no parity).

g j l m p r
Collapse M_EVEN

Specifies that the number of 1's will be even.

g j l m p r
Collapse M_ODD

Specifies that the number of 1's will be odd.

g j l m p r
Collapse M_UART_READ_CHAR +

Reads one character from the UART input buffer. If the input buffer is empty, the function will wait for the amount of time specified by M_UART_TIMEOUT. If a time-out occurs, the '?' character will be returned.

(summarize)
g j l m p r
Collapse Value

Specifies the address of the variable in which to save the character read from the UART.

g j l m p r
Collapse M_UART_READ_STRING +

Reads a string of incoming data from the UART. The number of characters to read can be specified with M_UART_READ_STRING_SIZE or M_UART_STRING_DELIMITER. M_UART_TIMEOUT specifies the maximum time to wait between each byte when reading incoming data. Use MsysInquire() with M_UART_BYTES_READ to wait for the read operation to complete and retrieve the actual number of bytes read.

(summarize)
g j l m p r
Collapse Value

Specifies the address of the character array in which to save the string read from the UART. The size of this array must be set to the same value as the M_UART_READ_STRING_MAXIMUM_SIZE control type.

(summarize)
g j l m p r
Collapse M_UART_READ_STRING_MAXIMUM_SIZE +

Sets the maximum length of the string to read. This prevents global protection faults from happening when using the M_UART_READ_STRING control type. INQ

(summarize)
g j l m p r
Collapse Value

Specifies the maximum length of the string, in bytes.

g j l m p r
Collapse M_UART_READ_STRING_SIZE +

Sets the length of the string to read using M_UART_READ_STRING. INQ

(summarize)
g j l m p r
Collapse M_DEFAULT

Specifies the use of M_UART_STRING_DELIMITER to delineate the end of the string to read.

g j l m p r
Collapse Value

Specifies the string length, in bytes.

g j l m p r
Collapse M_UART_SPEED +

Sets the baud rate of the UART. INQ

(summarize)
g j l m p r
Collapse M_DEFAULT

Specifies the default value; the default value is 14400.

g j l m p r
Collapse 300;600;1200;1800;2400;4800;7200;9600;14400;
19200;38400;57600;115200

Specifies the baud rate of the UART. Note that the maximum baud rate is highly dependent on the amount of computer resources available.

(summarize)
g j l m p r
Collapse M_UART_STOP_BITS +

Sets the number of extra data bit(s) (1 or 2) that are added to each character to indicate the end of the character. INQ

(summarize)
g j l m p r
Collapse M_DEFAULT

Same as 1.

g j l m p r
Collapse 1

Specifies that there is 1 stop bit.

g j l m p r
Collapse 2

Specifies that there are 2 stop bits.

g j l m p r
Collapse M_UART_STRING_DELIMITER +

Sets the character used to terminate strings of incoming or outgoing data. The delimiter is used but not sent when writing data with M_UART_WRITE_STRING; it is read for incoming data with M_UART_READ_STRING. INQ

(summarize)
g j l m p r
Collapse M_DEFAULT

Specifies the default value; the default value is '\0'.

g j l m p r
Collapse Value

Specifies the character used to terminate strings.

g j l m p r
Collapse M_UART_TIMEOUT +

Sets the maximum time to wait between each byte when reading incoming data. INQ

(summarize)
g j l m p r
Collapse M_DEFAULT

Same as M_INFINITE.

g j l m p r
Collapse M_INFINITE

Waits indefinitely.

g j l m p r
Collapse Value

Specifies the time to wait, in msecs.

g j l m p r
Collapse M_UART_WRITE_CHAR +

Sends one character to the UART for transmission.

(summarize)
g j l m p r
Collapse Value

Specifies the character to send.

g j l m p r
Collapse M_UART_WRITE_STRING +

Sends a string of data through the UART for transmission. The number of characters to send can be specified with M_UART_WRITE_STRING_SIZE or M_UART_STRING_DELIMITER. Use MsysInquire() with M_UART_BYTES_WRITTEN to wait for the write operation to complete and retrieve the actual number of bytes written.

(summarize)
g j l m p r
Collapse Value

Specifies the character array.

g j l m p r
Collapse M_UART_WRITE_STRING_SIZE +

Sets the length of the string to be sent to the UART for transmission. INQ

(summarize)
g j l m p r
Collapse M_DEFAULT

Specifies the use of M_UART_STRING_DELIMITER to end the string. The delimiter will not be sent through the UART.

(summarize)
g j l m p r
Collapse Value

Specifies the string length, in bytes.

g j l m p r
Combination constant for the values listed in For UART settings.

You can add the following value to the above-mentioned values to set which UART to control.

function map For specifying which UART to control
CollapseCombination value Description
MIL system-specific
tooltip (†)
Collapse

Specifies which UART to control.

Use MsysInquire() with M_UART_PRESENT to determine the number of UARTS on the system.

(summarize)
g j l m p r
Parameters

Specifies a device (UART) to control.

g j l m p r
M_DEVn

Specifies the device to control, where n can be from 0 and 15.

g j l m p r
MIL system specific

There is 1 UART available on Matrox Morphis.

g

There are 4 UARTs available on Matrox Solios eA/XA Quad, 2 on Matrox Solios eA/XA Dual, and 1 on Matrox Solios eA/XA Single.

l

There are 2 UARTs available on Matrox Solios eCL/XCL dual-Base/single-Medium operating in dual-Base mode, and 1 is available on Matrox Solios eCL/XCL-B, eCL/XCL-F, and eCL/XCL dual-Base/single-Medium operating in single-Medium mode.

j m p r

There are 2 UARTS available on Matrox Radient eCL-DB and eCL-DF, 3 on Matrox Radient eCL-QB, and 1 on Matrox Radient eCL-SF. Note that, using the CLProtocol will occupy one COM port per allocated digitizer.

j p r

The following control types and control values specify the settings for the Watchdog.

function map For Watchdog settings
CollapseControlType Description
MIL system-specific
tooltip (†)
ControlValue
Collapse M_WATCHDOG_MODE

Sets the current state of the Watchdog. INQ

(summarize)
g h
Collapse M_DEFAULT

Same as M_DISABLE.

g h
Collapse M_DISABLE

Disables the Watchdog.

g h
Collapse M_ENABLE

Enables the Watchdog. The application should be ready to reset the Watchdog and all timeouts (M_WATCHDOG_REBOOT_TIMEOUT & M_WATCHDOG_TIMEOUT) should be programmed before enabling the Watchdog.

(summarize)
g h
Collapse M_WATCHDOG_REBOOT_TIMEOUT

Sets the timeout value of the Watchdog's reboot timer. If, during a reboot, the Host computer does not reset the Watchdog reboot timer before the specified interval expires, the Host computer is assumed to have hung. The Watchdog's reboot timer will then force the Host computer to reboot again. INQ

(summarize)
g h
Collapse Value

Specifies the timeout value, in msecs.

g h
Collapse M_WATCHDOG_RESET

Resets the Watchdog main, reboot, and warning timers.

(summarize)
g h
Collapse M_DEFAULT

Implements the default behavior.

g h
Collapse M_WATCHDOG_RESET_COUNTER

Clears the "number of reboots" counter that counts the number of times the Watchdog has rebooted your Host computer. Note that this count includes both reboots caused by the reboot timer and the main timer.

(summarize)
g h
Collapse M_DEFAULT

Implements the default behavior.

g h
Collapse M_WATCHDOG_TIMEOUT

Sets the timeout value of the Watchdog's main timer. If, during the course of regular operations, the Host computer does not reset the main timer before the specified interval expires, it is assumed to have hung. The Watchdog's main timer will then force the Host computer to reboot. To receive a warning before the reboot, you can set the Watchdog's warning timer, using M_WATCHDOG_WARNING_TIME.

When the Watchdog's warning timer expires, an interrupt is generated to warn you to reset the Watchdog's main timer. You can hook a function to this interrupt using MsysHookFunction(). Set the Watchdog's main timer to a value greater than that of the Watchdog's warning timer to allow enough time for the interrupt to be generated. INQ

(summarize)
g h
Collapse Value

Specifies the timeout value, in msecs.

g h
Collapse M_WATCHDOG_WARNING_TIME

Sets the timeout value of the Watchdog's warning timer. If, during the course of regular operations, the Host computer does not reset the warning timer before the specified interval expires, the Host computer is assumed to have hung. The Watchdog's warning timer will then generate a warning interrupt. You can hook a function to this interrupt using MsysHookFunction().

The warning timeout value should be less than M_WATCHDOG_TIMEOUT to give the computer enough time to finish the hooked function. INQ

(summarize)
g h
Collapse M_INFINITE

Specifies that the Watchdog will never receive a warning.

g h
Collapse Value

Specifies the warning time interval, in msecs.

g h
Remark
Type-specific versions of the function
void MsysControlDouble (MIL_ID SysId, MIL_INT64 ControlType, MIL_DOUBLE ControlValue)
Parameters

SysId

See SysId of the main function for a description.

ControlType

See ControlType of the main function for a description.

ControlValue

See ControlValue of the main function for a description.

void MsysControlInt64 (MIL_ID SysId, MIL_INT64 ControlType, MIL_INT64 ControlValue)
Parameters

SysId

See SysId of the main function for a description.

ControlType

See ControlType of the main function for a description.

ControlValue

See ControlValue of the main function for a description.

Compilation information
Header Include mil.h.
Library Use mil.lib.
DLL Requires mil.dll.
DEFAULT HOST ALLOCATION OVERSCAN DEFAULT DISABLE ENABLE ALLOCATION OVERSCAN SIZE DEFAULT DEFAULT PITCH BYTE MULTIPLE DEFAULT MODIFIED BUFFER HOOK MODE DEFAULT MULTI THREAD SINGLE THREAD THREAD MODE DEFAULT ASYNCHRONOUS SYNCHRONOUS TIMEOUT DEFAULT INFINITE IO DEBOUNCE TIME DEFAULT IO GLITCH FILTER STATE DEFAULT DISABLE ENABLE IO INTERRUPT ACTIVATION DEFAULT ANY EDGE EDGE FALLING EDGE RISING IO INTERRUPT STATE DEFAULT DISABLE ENABLE IO MODE INPUT OUTPUT IO SOURCE DEFAULT AUX IOn EXPOSURE GRAB TRIGGER IO COMMAND LISTn ROTARY ENCODERn TIMER2 TIMERn USER BITn AUX IOn USER BIT STATE OFF ON USER BIT STATE ALL USER BITn TIMER ARM DEFAULT DISABLE ENABLE TIMER ARM ACTIVATION DEFAULT ANY EDGE EDGE FALLING EDGE RISING LEVEL HIGH LEVEL LOW TIMER ARM SOFTWARE DEFAULT TIMER ARM SOURCE AUX IOn SOFTWARE TIMERn TIMER CLOCK ACTIVATION DEFAULT ANY EDGE EDGE FALLING EDGE RISING TIMER CLOCK FREQUENCY UNKNOWN SYSCLK TIMER CLOCK SOURCE DEFAULT AUX IOn ROTARY ENCODERn SYSCLK TIMER DELAY TIMER DELAY CLOCK ACTIVATION DEFAULT ANY EDGE EDGE FALLING EDGE RISING TIMER DELAY CLOCK FREQUENCY UNKNOWN SYSCLK TIMER DELAY CLOCK SOURCE DEFAULT AUX IOn FOLLOW TIMER CLOCK ROTARY ENCODERn SYSCLK TIMER DURATION TIMER OUTPUT INVERTER DEFAULT DISABLE ENABLE TIMER STATE DEFAULT DISABLE ENABLE TIMER TRIGGER ACTIVATION DEFAULT ANY EDGE EDGE FALLING EDGE RISING LEVEL HIGH LEVEL LOW TIMER TRIGGER SOFTWARE DEFAULT TIMER TRIGGER SOURCE AUX IOn CONTINUOUS IO COMMAND LISTn ROTARY ENCODERn SOFTWARE TIMERn TIMER USAGE DEFAULT PULSE GENERATION PULSE MEASUREMENT TIMER VALUE TIMERn IO COMMAND BITn ROTARY ENCODER BIT0 SOURCE AUX IOn ROTARY ENCODER BIT1 SOURCE AUX IOn ROTARY ENCODER OUTPUT MODE POSITION TRIGGER STEP ANY STEP BACKWARD STEP FORWARD STEP FORWARD NEW POSITIVE ROTARY ENCODER POSITION TRIGGER ROTARY ENCODER RESET ACTIVATION DEFAULT EDGE FALLING EDGE RISING ROTARY ENCODER RESET SOURCE NULL AUX IOn POSITION TRIGGER ROTARY ENCODER STATE DEFAULT DISABLE ENABLE ROTARY ENCODERn UART DATA SIZE DEFAULT UART FREE DEFAULT UART PARITY DEFAULT DISABLE EVEN ODD UART READ CHAR UART READ STRING UART READ STRING MAXIMUM SIZE UART READ STRING SIZE DEFAULT UART SPEED DEFAULT UART STOP BITS DEFAULT UART STRING DELIMITER DEFAULT UART TIMEOUT DEFAULT INFINITE UART WRITE CHAR UART WRITE STRING UART WRITE STRING SIZE DEFAULT DEVn WATCHDOG MODE DEFAULT DISABLE ENABLE WATCHDOG REBOOT TIMEOUT WATCHDOG RESET DEFAULT WATCHDOG RESET COUNTER DEFAULT WATCHDOG TIMEOUT WATCHDOG WARNING TIME INFINITE