Error processing – VXI TECHNOLOGY SVM2608 User Manual

Page 47

Advertising
background image

www.vxitech.com

SVM2608 Programming

47

0x1028

Set the V Negative 0.1177 calibration gain value, calibration value.

All the calibration commands use the channel’s base address at offset zero (0x000000 for
Channel 0, 0x200000 for Channel 1, 0x400000 for Channel 2 and 0x600000 for Channel 3) for
communication with the processor. This is where the user places the data it wants the processor to
write when it issues a “Set …” command. This is also where the processor places the data for the
user to read when the user issues a “Read …” command.

When the user issues a “Set …” command, the value is read by the processor from the channel’s
base address at offset zero and it is stored in its local volatile calibration memory. Each calibration
value has its own location in the volatile calibration memory.

The 0x1001 command takes the values from the volatile calibration memory and stores them in
non-volatile memory. If the values in the non-volatile calibration memory have been changed by
the user, issuing this command will permanently erase the values set by the factory and replace
them with the new values set by the user.

The 0x1000 command reloads the values stored in the non-volatile memory into the volatile
calibration memory. This operation is executed by the microprocessor at power-up automatically.
This is useful for the user in the event that the calibration memory is accidentally changed and the
user wants to recall the factory preset values from the non-volatile memory.

Error Processing
Each channel has its own ERROR queue. Sending the 0x1024 command to a channel’s command
register will return an error code to the channel’s base address at offset zero. If several errors occur
at the same time or if the user does not read the error queue to clear the error codes, the error codes
will accumulate in a queue. The error queue is five positions deep. Only the first error in the queue
is returned when a “Read the error queue command” is sent. When there are no more errors in the
queue, the error code returned is 0x0000. Here is the list of error codes returned by the processor:

NO_ERROR

0x0000

ERROR_UNKNOWN_COMMAND

0x0001

ERROR_PRE_GT_SIZE

0x0002

ERROR_RESISTANCE_OVER_RANGE

0x0101

ERROR_UNSTABLE_RESISTANCE

0x0102

ERROR_UNSTABLE_VOLTAGE

0x0103

ERROR_INVALID_RES_CH

0x0104

ERROR_INVALID_CH

0x0105

ERROR_MULTIPLE_TEST_SOURCES

0x0201

ERROR_NONVOL_READ

0x0202

ERROR_NONVOL_WRITE

0x0203

ERROR_NONVOL_DEFAULTED

0x0204

ERROR_FLASH_BURN

0x0205

ERROR_HS_NONVOL_READ

0x0206

ERROR_HS_NONVOL_WRITE

0x0207

ERROR_HS_NONVOL_DEFALTED

0x0208

ERROR_INTERNAL_SOFTWARE

0x0911

ERROR_INTERNAL_RANGE

0x0912

ERROR_QUEUE_OVFL

0xFFFF

Advertising