cvt_V812.h File Reference

V812 VME board definitions. More...

#include "cvt_common_defs.h"
#include "cvt_board_commons.h"

Go to the source code of this file.

Data Structures

struct  cvt_V812_data
 V812 board data structure. More...

Defines

#define CVT_V812_THRESHOLD_0_ADD   0x0000
 Threshold 0 register relative address.
#define CVT_V812_THRESHOLD_1_ADD   0x0002
 Threshold 1 register relative address.
#define CVT_V812_THRESHOLD_2_ADD   0x0004
 Threshold 2 register relative address.
#define CVT_V812_THRESHOLD_3_ADD   0x0006
 Threshold 3 register relative address.
#define CVT_V812_THRESHOLD_4_ADD   0x0008
 Threshold 4 register relative address.
#define CVT_V812_THRESHOLD_5_ADD   0x000A
 Threshold 5 register relative address.
#define CVT_V812_THRESHOLD_6_ADD   0x000C
 Threshold 6 register relative address.
#define CVT_V812_THRESHOLD_7_ADD   0x000E
 Threshold 7 register relative address.
#define CVT_V812_THRESHOLD_8_ADD   0x0010
 Threshold 8 register relative address.
#define CVT_V812_THRESHOLD_9_ADD   0x0012
 Threshold 9 register relative address.
#define CVT_V812_THRESHOLD_10_ADD   0x0014
 Threshold 10 register relative address.
#define CVT_V812_THRESHOLD_11_ADD   0x0016
 Threshold 11 register relative address.
#define CVT_V812_THRESHOLD_12_ADD   0x0018
 Threshold 12 register relative address.
#define CVT_V812_THRESHOLD_13_ADD   0x001A
 Threshold 13 register relative address.
#define CVT_V812_THRESHOLD_14_ADD   0x001C
 Threshold 14 register relative address.
#define CVT_V812_THRESHOLD_15_ADD   0x001E
 Threshold 15 register relative address.
#define CVT_V812_OUT_WIDTH_0_7_ADD   0x0040
 Output width register Ch 0-7 relative address.
#define CVT_V812_OUT_WIDTH_8_15_ADD   0x0042
 Output width register Ch 8-15 relative address.
#define CVT_V812_DEAD_TIME_0_7_ADD   0x0044
 Dead time register Ch 0-7 relative address.
#define CVT_V812_DEAD_TIME_8_15_ADD   0x0046
 Dead time register Ch 8-15 relative address.
#define CVT_V812_MAJORITY_ADD   0x0048
 CVT_V812_MAJORITY threshold register relative address.
#define CVT_V812_PATTERN_INHIBIT_ADD   0x004A
 Pattern inhibit register relative address.
#define CVT_V812_TEST_PULSE_ADD   0x004C
 Test pulse register relative address.
#define CVT_V812_FIXED_CODE_ADD   0x00FA
 Fixed code register relative address.
#define CVT_V812_MANUFACTURER_ADD   0x00FC
 Manufacturer and Module type register relative address.
#define CVT_V812_VERSION_ADD   0x00FD
 Version and serial number register relative address.
#define CVT_V812_THRESHOLD_ADD_STEP   2
 Threshold registers address step for V812.
#define CVT_V812_THRESHOLD_DATA_SIZE   cvD16
 First threshold register data size.
#define CVT_V812_OUT_WIDTH_0_7_DATA_SIZE   cvD16
 Output width register Ch 0-7 data size.
#define CVT_V812_OUT_WIDTH_8_15_DATA_SIZE   cvD16
 Output width register Ch 8-15 data size.
#define CVT_V812_DEAD_TIME_0_7_DATA_SIZE   cvD16
 Dead time register Ch 0-7 data size.
#define CVT_V812_DEAD_TIME_8_15_DATA_SIZE   cvD16
 Dead time register Ch 8-15 data size.
#define CVT_V812_MAJORITY_DATA_SIZE   cvD16
 CVT_V812_MAJORITY threshold register data size.
#define CVT_V812_PATTERN_INHIBIT_DATA_SIZE   cvD16
 Pattern inhibit register data size.
#define CVT_V812_TEST_PULSE_DATA_SIZE   cvD16
 Test pulse register relative data size.
#define CVT_V812_FIXED_CODE_DATA_SIZE   cvD16
 Fixed code register relative data size.
#define CVT_V812_MANUFACTURER_DATA_SIZE   cvD16
 Manufacturer and Module type register relative data size.
#define CVT_V812_VERSION_DATA_SIZE   cvD16
 Version and serial number register relative data size.
#define CVT_V812_THRESHOLD_AM   cvA32_S_DATA
 First threshold register address modifier.
#define CVT_V812_OUT_WIDTH_0_7_AM   cvA32_S_DATA
 Output width register Ch 0-7 address modifier.
#define CVT_V812_OUT_WIDTH_8_15_AM   cvA32_S_DATA
 Output width register Ch 8-15 address modifier.
#define CVT_V812_DEAD_TIME_0_7_AM   cvA32_S_DATA
 Dead time register Ch 0-7 address modifier.
#define CVT_V812_DEAD_TIME_8_15_AM   cvA32_S_DATA
 Dead time register Ch 8-15 address modifier.
#define CVT_V812_MAJORITY_AM   cvA32_S_DATA
 CVT_V812_MAJORITY threshold register address modifier.
#define CVT_V812_PATTERN_INHIBIT_AM   cvA32_S_DATA
 Pattern inhibit register address modifier.
#define CVT_V812_TEST_PULSE_AM   cvA32_S_DATA
 Test pulse register relative address modifier.
#define CVT_V812_FIXED_CODE_AM   cvA32_S_DATA
 Fixed code register relative address modifier.
#define CVT_V812_MANUFACTURER_AM   cvA32_S_DATA
 Manufacturer and Module type register relative address modifier.
#define CVT_V812_VERSION_AM   cvA32_S_DATA
 Version and serial number register relative address modifier.
#define CVT_V812_FIXED_CODE_VALUE   0xFAF5
 The fixed code register value.
#define CVT_V812_MANUFACTURER_NUMBER_VALUE   0x02
 The manufacturer number register value.
#define CVT_V812_MODULE_TYPE_VALUE   0x0051
 The type of module register value.
#define CVT_V812_THRESHOLD_ADD_STEP   2
 Threshold registers address step for V812.

Enumerations

enum  CVT_V812_REG_INDEX {
  CVT_V812_THRESHOLD_0_INDEX, CVT_V812_THRESHOLD_1_INDEX, CVT_V812_THRESHOLD_2_INDEX, CVT_V812_THRESHOLD_3_INDEX,
  CVT_V812_THRESHOLD_4_INDEX, CVT_V812_THRESHOLD_5_INDEX, CVT_V812_THRESHOLD_6_INDEX, CVT_V812_THRESHOLD_7_INDEX,
  CVT_V812_THRESHOLD_8_INDEX, CVT_V812_THRESHOLD_9_INDEX, CVT_V812_THRESHOLD_10_INDEX, CVT_V812_THRESHOLD_11_INDEX,
  CVT_V812_THRESHOLD_12_INDEX, CVT_V812_THRESHOLD_13_INDEX, CVT_V812_THRESHOLD_14_INDEX, CVT_V812_THRESHOLD_15_INDEX,
  CVT_V812_OUT_WIDTH_0_7_INDEX, CVT_V812_OUT_WIDTH_8_15_INDEX, CVT_V812_DEAD_TIME_0_7_INDEX, CVT_V812_DEAD_TIME_8_15_INDEX,
  CVT_V812_MAJORITY_INDEX, CVT_V812_PATTERN_INHIBIT_INDEX, CVT_V812_TEST_PULSE_INDEX, CVT_V812_FIXED_CODE_INDEX,
  CVT_V812_MANUFACTURER_INDEX, CVT_V812_VERSION_INDEX
}
 The registers indexes. More...
enum  cvt_V812_threshold_id {
  CVT_V812_THRESHOLD_ALL = -1, CVT_V812_THRESHOLD_0 = 0, CVT_V812_THRESHOLD_1, CVT_V812_THRESHOLD_2,
  CVT_V812_THRESHOLD_3, CVT_V812_THRESHOLD_4, CVT_V812_THRESHOLD_5, CVT_V812_THRESHOLD_6,
  CVT_V812_THRESHOLD_7, CVT_V812_THRESHOLD_8, CVT_V812_THRESHOLD_9, CVT_V812_THRESHOLD_10,
  CVT_V812_THRESHOLD_11, CVT_V812_THRESHOLD_12, CVT_V812_THRESHOLD_13, CVT_V812_THRESHOLD_14,
  CVT_V812_THRESHOLD_15, CVT_V812_MAX_THRESHOLD
}
 V812 discriminator threshold IDs. More...

Functions

BOOL cvt_V812_open (cvt_V812_data *p_data, UINT16 base_address, long vme_handle)
 V812 VME boards data initialization.
BOOL cvt_V812_close (cvt_V812_data *p_data)
 V812 VME boards closing and resource free.
BOOL cvt_V812_set_threshold (cvt_V812_data *p_data, cvt_V812_threshold_id threshold_id, UINT16 value)
 Set the specified discriminator threshold register.
BOOL cvt_V812_set_output_width (cvt_V812_data *p_data, UINT8 value)
 Set the output width register.
BOOL cvt_V812_set_dead_time (cvt_V812_data *p_data, UINT8 value)
 Set the dead time register.
BOOL cvt_V812_set_majority_threshold (cvt_V812_data *p_data, UINT8 value)
 Set the CVT_V812_MAJORITY threshold register.
BOOL cvt_V812_set_pattern_inhibit (cvt_V812_data *p_data, UINT16 value)
 Set the pattern of inhibit register.
BOOL cvt_V812_set_test_pulse (cvt_V812_data *p_data)
 Set the test pulse register.
BOOL cvt_V812_get_fixed_code (cvt_V812_data *p_data, UINT16 *p_value)
 Gets the board fixed code.
BOOL cvt_V812_get_manufacturer_number (cvt_V812_data *p_data, UINT8 *p_value)
 Gets the manufacturer number.
BOOL cvt_V812_get_module_type (cvt_V812_data *p_data, UINT16 *p_value)
 Gets the module type.
BOOL cvt_V812_get_version (cvt_V812_data *p_data, UINT8 *p_value)
 Gets the module version.
BOOL cvt_V812_get_serial_number (cvt_V812_data *p_data, UINT16 *p_value)
 Gets the serial number.


Detailed Description

V812 VME board definitions.

Author:
NDA
Version:
1.0
Date:
03/2006
Provides methods, properties and defines to handle with V812 VME boards

Definition in file cvt_V812.h.


Enumeration Type Documentation

enum CVT_V812_REG_INDEX
 

The registers indexes.

Provides an entry for each register: This is the index into the CVT_V812_REG_TABLE board table

Enumerator:
CVT_V812_THRESHOLD_0_INDEX  Threshold 0 register index.
CVT_V812_THRESHOLD_1_INDEX  Threshold 1 register index.
CVT_V812_THRESHOLD_2_INDEX  Threshold 2 register index.
CVT_V812_THRESHOLD_3_INDEX  Threshold 3 register index.
CVT_V812_THRESHOLD_4_INDEX  Threshold 4 register index.
CVT_V812_THRESHOLD_5_INDEX  Threshold 5 register index.
CVT_V812_THRESHOLD_6_INDEX  Threshold 6 register index.
CVT_V812_THRESHOLD_7_INDEX  Threshold 7 register index.
CVT_V812_THRESHOLD_8_INDEX  Threshold 8 register index.
CVT_V812_THRESHOLD_9_INDEX  Threshold 9 register index.
CVT_V812_THRESHOLD_10_INDEX  Threshold 10 register index.
CVT_V812_THRESHOLD_11_INDEX  Threshold 11 register index.
CVT_V812_THRESHOLD_12_INDEX  Threshold 12 register index.
CVT_V812_THRESHOLD_13_INDEX  Threshold 13 register index.
CVT_V812_THRESHOLD_14_INDEX  Threshold 14 register index.
CVT_V812_THRESHOLD_15_INDEX  Threshold 15 register index.
CVT_V812_OUT_WIDTH_0_7_INDEX  Output width register Ch 0-7 index.
CVT_V812_OUT_WIDTH_8_15_INDEX  Output width register Ch 8-15 index.
CVT_V812_DEAD_TIME_0_7_INDEX  Dead time register Ch 0-7 index.
CVT_V812_DEAD_TIME_8_15_INDEX  Dead time register Ch 8-15 index.
CVT_V812_MAJORITY_INDEX  CVT_V812_MAJORITY threshold register index.
CVT_V812_PATTERN_INHIBIT_INDEX  Pattern inhibit register index.
CVT_V812_TEST_PULSE_INDEX  Test pulse register relative index.
CVT_V812_FIXED_CODE_INDEX  Fixed code register relative index.
CVT_V812_MANUFACTURER_INDEX  Manufacturer and Module type register relative index.
CVT_V812_VERSION_INDEX  Version and serial number register relative index.

Definition at line 109 of file cvt_V812.h.

enum cvt_V812_threshold_id
 

V812 discriminator threshold IDs.

Enumerator:
CVT_V812_THRESHOLD_ALL  Catch all the thresholds
CVT_V812_THRESHOLD_0  Threshold 0 register
CVT_V812_THRESHOLD_1  Threshold 1 register
CVT_V812_THRESHOLD_2  Threshold 2 register
CVT_V812_THRESHOLD_3  Threshold 3 register
CVT_V812_THRESHOLD_4  Threshold 4 register
CVT_V812_THRESHOLD_5  Threshold 5 register
CVT_V812_THRESHOLD_6  Threshold 6 register
CVT_V812_THRESHOLD_7  Threshold 7 register
CVT_V812_THRESHOLD_8  Threshold 8 register
CVT_V812_THRESHOLD_9  Threshold 9 register
CVT_V812_THRESHOLD_10  Threshold 10 register
CVT_V812_THRESHOLD_11  Threshold 11 register
CVT_V812_THRESHOLD_12  Threshold 12 register
CVT_V812_THRESHOLD_13  Threshold 13 register
CVT_V812_THRESHOLD_14  Threshold 14 register
CVT_V812_THRESHOLD_15  Threshold 15 register
CVT_V812_MAX_THRESHOLD  Dummy last command: define as last to know the number of thresholds

Definition at line 149 of file cvt_V812.h.


Function Documentation

BOOL cvt_V812_close cvt_V812_data p_data  ) 
 

V812 VME boards closing and resource free.

Provides specific handling for V812 boards closing.

Parameters:
p_data Pointer to board data
Returns:
TRUE: board successfully closed
Note:
Must be called when done with any other board specific API.

Definition at line 95 of file cvt_V812.c.

References cvt_board_close(), FALSE, cvt_V812_data::m_common_data, and TRUE.

BOOL cvt_V812_get_fixed_code cvt_V812_data p_data,
UINT16 p_value
 

Gets the board fixed code.

Reads the fixed code register. It must return CVT_V812_FIXED_CODE_VALUE

Parameters:
p_data Pointer to board data
p_value The value read
Returns:
TRUE: Procedure successfully executed
See also:
CVT_V812_FIXED_CODE_VALUE

Definition at line 255 of file cvt_V812.c.

References cvt_read_reg(), CVT_V812_FIXED_CODE_INDEX, FALSE, cvt_V812_data::m_common_data, TRACE, and TRUE.

BOOL cvt_V812_get_manufacturer_number cvt_V812_data p_data,
UINT8 p_value
 

Gets the manufacturer number.

Reads the manufacturer number register. It must return CVT_V812_MANUFACTURER_NUMBER_VALUE

Parameters:
p_data Pointer to board data
p_value The value read
Returns:
TRUE: Procedure successfully executed
See also:
CVT_V812_MANUFACTURER_NUMBER_VALUE

Definition at line 271 of file cvt_V812.c.

References cvt_read_reg(), CVT_V812_MANUFACTURER_INDEX, FALSE, cvt_V812_data::m_common_data, TRACE, and TRUE.

BOOL cvt_V812_get_module_type cvt_V812_data p_data,
UINT16 p_value
 

Gets the module type.

Reads the module type register. It must return CVT_V812_MODULE_TYPE_VALUE

Parameters:
p_data Pointer to board data
p_value The value read
Returns:
TRUE: Procedure successfully executed
See also:
CVT_V812_MODULE_TYPE_VALUE

Definition at line 287 of file cvt_V812.c.

References cvt_read_reg(), CVT_V812_MANUFACTURER_INDEX, FALSE, cvt_V812_data::m_common_data, TRACE, and TRUE.

BOOL cvt_V812_get_serial_number cvt_V812_data p_data,
UINT16 p_value
 

Gets the serial number.

Reads the serial number register.

Parameters:
p_data Pointer to board data
p_value The value read
Returns:
TRUE: Procedure successfully executed
See also:
CVT_V812_MODULE_TYPE_VALUE

Definition at line 319 of file cvt_V812.c.

References cvt_read_reg(), CVT_V812_VERSION_INDEX, FALSE, cvt_V812_data::m_common_data, TRACE, and TRUE.

BOOL cvt_V812_get_version cvt_V812_data p_data,
UINT8 p_value
 

Gets the module version.

Reads the module version register.

Parameters:
p_data Pointer to board data
p_value The value read
Returns:
TRUE: Procedure successfully executed

Definition at line 303 of file cvt_V812.c.

References cvt_read_reg(), CVT_V812_VERSION_INDEX, FALSE, cvt_V812_data::m_common_data, TRACE, and TRUE.

BOOL cvt_V812_open cvt_V812_data p_data,
UINT16  base_address,
long  vme_handle
 

V812 VME boards data initialization.

Provides specific handling for V812 boards opening.

Parameters:
p_data Pointer to board data
base_address The board base address (MSW)
vme_handle The VME handle
Returns:
TRUE: board successfully opened
Note:
Must be called before any other board specific API.

Definition at line 81 of file cvt_V812.c.

References cvt_board_open(), FALSE, cvt_V812_data::m_common_data, and TRUE.

BOOL cvt_V812_set_dead_time cvt_V812_data p_data,
UINT8  value
 

Set the dead time register.

Writes the specified value to the dead time register for channel 0-7 and 8-15.

Parameters:
p_data Pointer to board data
value The value to set
Returns:
TRUE: Procedure successfully executed

Definition at line 190 of file cvt_V812.c.

References CVT_V812_DEAD_TIME_0_7_INDEX, CVT_V812_DEAD_TIME_8_15_INDEX, cvt_write_reg(), FALSE, cvt_V812_data::m_common_data, TRACE, and TRUE.

BOOL cvt_V812_set_majority_threshold cvt_V812_data p_data,
UINT8  value
 

Set the CVT_V812_MAJORITY threshold register.

Writes the specified value to the CVT_V812_MAJORITY threshold register.

Parameters:
p_data Pointer to board data
value The value to set
Returns:
TRUE: Procedure successfully executed

Definition at line 210 of file cvt_V812.c.

References CVT_V812_MAJORITY_INDEX, cvt_write_reg(), FALSE, cvt_V812_data::m_common_data, TRACE, and TRUE.

BOOL cvt_V812_set_output_width cvt_V812_data p_data,
UINT8  value
 

Set the output width register.

Writes the specified value to the output width register for channel 0-7 and 8-15.

Parameters:
p_data Pointer to board data
value The value to set
Returns:
TRUE: Procedure successfully executed

Definition at line 170 of file cvt_V812.c.

References CVT_V812_OUT_WIDTH_0_7_INDEX, CVT_V812_OUT_WIDTH_8_15_INDEX, cvt_write_reg(), FALSE, cvt_V812_data::m_common_data, TRACE, and TRUE.

BOOL cvt_V812_set_pattern_inhibit cvt_V812_data p_data,
UINT16  value
 

Set the pattern of inhibit register.

Writes the specified value to the pattern of inhibit register.

Parameters:
p_data Pointer to board data
value The value to set
Returns:
TRUE: Procedure successfully executed

Definition at line 225 of file cvt_V812.c.

References CVT_V812_PATTERN_INHIBIT_INDEX, cvt_write_reg(), FALSE, cvt_V812_data::m_common_data, TRACE, and TRUE.

BOOL cvt_V812_set_test_pulse cvt_V812_data p_data  ) 
 

Set the test pulse register.

Writes a dummy value to the test pulse register.

Parameters:
p_data Pointer to board data
Returns:
TRUE: Procedure successfully executed

Definition at line 240 of file cvt_V812.c.

References CVT_V812_TEST_PULSE_INDEX, cvt_write_reg(), FALSE, cvt_V812_data::m_common_data, TRACE, and TRUE.

BOOL cvt_V812_set_threshold cvt_V812_data p_data,
cvt_V812_threshold_id  threshold_id,
UINT16  value
 

Set the specified discriminator threshold register.

Writes the specified value to the specified discriminator threshold register. If threshold_id is CVT_V812_THRESHOLD_ALL every threshold will be setted to the same value.

Parameters:
p_data Pointer to board data
threshold_id The threshold to set. It must be a cvt_V812_threshold_id valid id.
value The value to set
Returns:
TRUE: Procedure successfully executed
See also:
cvt_V812_threshold_id

Definition at line 118 of file cvt_V812.c.

References CVT_V812_MAX_THRESHOLD, CVT_V812_THRESHOLD_0, CVT_V812_THRESHOLD_0_INDEX, CVT_V812_THRESHOLD_ALL, cvt_write_reg(), FALSE, cvt_V812_data::m_common_data, and TRACE1.


Generated on Wed Oct 18 12:36:56 2006 for CAEVMEToolLib by  doxygen 1.4.6-NO