xPCI-3009 API
PCI-3009 analog input compare logic functions

Data Structures

struct  str_CompareLogicResult
 
struct  str_AutoRefreshDataPackage
 

Typedefs

typedef struct
str_CompareLogicResult
pstr_CompareLogicResult
 
typedef struct
str_AutoRefreshDataPackage
pstr_AutoRefreshDataPackage
 

Functions

_INT_ i_PCI3009_AnalogInputInitCompareLogic (DWORD_ dw_BoardHandle, BYTE_ b_Channel, BYTE_ b_CompareLevelAMode, DOUBLE d_CompareLevelAValue, BYTE_ b_CompareLevelBMode, DOUBLE d_CompareLevelBValue)
 
_INT_ i_PCI3009_AnalogInputEnableDisableCompareLogic (DWORD_ dw_BoardHandle, BYTE_ b_CompareLogicFlag)
 
_INT_ i_PCI3009_AnalogInputGetSingleCompareLogicStates (DWORD_ dw_BoardHandle, BYTE_ b_Channel, PBYTE_ pb_CompareLogicStates)
 
_INT_ i_PCI3009_AnalogInputGetAllCompareLogicStates (DWORD_ dw_BoardHandle, PDWORD_ pdw_CompareLogicStates)
 
_INT_ i_PCI3009_AnalogInputGetAutoRefreshCompareLogicStates (DWORD_ dw_BoardHandle, BYTE_ b_Channel, pstr_AutoRefreshDataPackage ps_AutoRefreshDataPackage, DWORD_ dw_StructSize)
 

Detailed Description

Typedef Documentation

Function Documentation

_INT_ i_PCI3009_AnalogInputInitCompareLogic ( DWORD_  dw_BoardHandle,
BYTE_  b_Channel,
BYTE_  b_CompareLevelAMode,
DOUBLE  d_CompareLevelAValue,
BYTE_  b_CompareLevelBMode,
DOUBLE  d_CompareLevelBValue 
)

Initialises the selected analog input channel compare logic. You can define 2 levels for each channel

Parameters
[in]dw_BoardHandle: Handle of board PCI-3009
[in]b_Channel: Channel number of the input to be initialise
[in]b_CompareLevelAMode: Level A compare mode:
0 : Compare logic disabled
1 : Compare logic analog value = compare value enabled
2 : Compare logic analog value > compare value enabled
3 : Compare logic analog value < compare value enabled
4 : Compare logic analog value >= compare value enabled
5 : Compare logic analog value <= compare value enabled
[in]d_CompareLevelAValue: Level A compare value
[in]b_CompareLevelBMode: Level B compare mode:
0 : Compare logic disabled
1 : Compare logic analog value = compare value enabled
2 : Compare logic analog value > compare value enabled
3 : Compare logic analog value < compare value enabled
4 : Compare logic analog value >= compare value enabled
5 : Compare logic analog value <= compare value enabled
[in]d_CompareLevelBValue: Level B compare value
Returns
0: No error
-1: The handle parameter of the board is wrong
-2: Wrong channel number
-3: Channel not initialised
-4: Functionality not available
-5: Wrong compare level A
-6: Wrong compare value A
-7: Wrong compare level B
-8: Wrong compare value B
-9: A conversion is already started
_INT_ i_PCI3009_AnalogInputEnableDisableCompareLogic ( DWORD_  dw_BoardHandle,
BYTE_  b_CompareLogicFlag 
)

Enable or disable the compare logic from all channels

Parameters
[in]dw_BoardHandle: Handle of board PCI-3009
[in]b_CompareLogicFlag: Enable/disable compare logic flag
PCI3009_DISABLE : Disable the compare logic
PCI3009_ENABLE : Enable the compare logic
Returns
0: No error
-1: The handle parameter of the board is wrong
-2: Wrong compare logic flag
_INT_ i_PCI3009_AnalogInputGetSingleCompareLogicStates ( DWORD_  dw_BoardHandle,
BYTE_  b_Channel,
PBYTE_  pb_CompareLogicStates 
)

Get the selected compare logic channel state

Parameters
[in]dw_BoardHandle: Handle of board PCI-3009
[in]b_Channel: Channel number of the input to be get the compare state
[out]pb_CompareLogicStates: Compare logic state.
D0 : 0 -> Compare level A not occur
1 -> Compare level A occur
D1 : 0 -> Compare level B not occur
1 -> Compare level B occur
Returns
0: No error
-1: The handle parameter of the board is wrong
-2: Wrong channel number
-3: Channel not initialised
-4: Compare logic not enabled
-5: No conversion started
_INT_ i_PCI3009_AnalogInputGetAllCompareLogicStates ( DWORD_  dw_BoardHandle,
PDWORD_  pdw_CompareLogicStates 
)

Get all compare logic channels state

Parameters
[in]dw_BoardHandle: Handle of board PCI-3009
[out]pdw_CompareLogicStates: Compare logic state.
D0 : 0 -> Channel 0 compare level A not occur
1 -> Channel 0 compare level A occur
D1 : 0 -> Channel 0 compare level B not occur
1 -> Channel 0 compare level B occur
.
.
.
D30: 0 -> Channel 15 compare level A not occur
1 -> Channel 15 compare level A occur
D31: 0 -> Channel 15 compare level B not occur
1 -> Channel 15 compare level B occur
Returns
0: No error
-1: The handle parameter of the board is wrong
-2: Compare logic not enabled
-3: No conversion started
_INT_ i_PCI3009_AnalogInputGetAutoRefreshCompareLogicStates ( DWORD_  dw_BoardHandle,
BYTE_  b_Channel,
pstr_AutoRefreshDataPackage  ps_AutoRefreshDataPackage,
DWORD_  dw_StructSize 
)

Get the selected auto refresh compare logic channel status. For this start the auto refresh

Parameters
[in]dw_BoardHandle: Handle of board PCI-3009
[in]b_Channel: Channel number of the input to be get the compare state
[in]dw_StructSize: str_AutoRefreshDataPackage struct size (sizeof(str_AutoRefreshDataPackage))
[out]ps_AutoRefreshDataPackage: str_AutoRefreshDataPackage, return the analog value and the compare states.
Returns
0: No error
-1: The handle parameter of the board is wrong
-2: Wrong channel number
-3: Channel not initialised
-4: Wrong ps_AutoRefreshDataPackage struct size -5: Compare logic not enabled
-6: No conversion started