58
M3i.48xx / M3i.48xx-exp Manual
Gathering information from the card
Programming the Board
.
Hardware version
Since all of the boards from Spectrum are modular boards, they consist of one base board and one or two piggy-back front-end modules and
eventually of an extension module like the star-hub. Each of these three kinds of hardware has its own version register. Normally you do not
need this information but if you have a support question, please provide the revision together with it.
If your board has a additional piggy-back extension module mounted you can get the hardware version with the following register.
Production date
This register informs you about the production date, which is returned as one 32 bit long word. The upper word is holding the information
about the year, while the lower byte informs about the week of the year.
The following example shows how to read out a date and how to interpret the value:
Last calibration date (analog cards only)
This register informs you about the date of the last factory calibration. When receiving a new card this date is similar to the delivery date
when the production calibration is done. When returning the card to calibration this information is updated. This date is not updated when
just doing an on-board calibration by the user. The date is returned as one 32 bit long word. The upper word is holding the information about
the year, while the lower byte informs about the week of the year.
Serial number
This register holds the information about the serial number of the board. This number is unique and should always be sent together with a
support question. Normally you use this information together with the register SPC_PCITYP to verify that multiple measurements are done with
the exact same board.
Card type
Card type
as defined in
regs.h
Value
hexadecimal
Value
decimal
Card type
Card type
as defined in
regs.h
Value
hexadecimal
Value
decimal
M3i.4830
TYP_M3I4830
54830h
346160
M3i.4141
TYP_M3I4841
54841h
346177
M3i.4831
TYP_M3I4831
54831h
346161
M3i.4160
TYP_M3I4860
54860h
346208
M3i.4840
TYP_M3I4840
54840h
346176
M3i.4161
TYP_M3I4861
54861h
346209
M3i.4830-exp
TYP_M3I4830EXP
64830h
411696
M3i.4841-exp
TYP_M3I4841EXP
64841h
411713
M3i.4831-exp
TYP_M3I4831EXP
64831h
411697
M3i.4860-exp
TYP_M3I4860EXP
64860h
411744
M3i.4840-exp
TYP_M3I4840EXP
64840h
411712
M3i.4861-exp
TYP_M3I4861EXP
64861h
411745
Register
Value
Direction
Description
SPC_PCIVERSION
2010
read
Base card version: the upper 16 bit show the hardware (PCB) version, the lower 16 bit show the firm-
ware version.
SPC_PCIMODULEVERSION
2012
read
Module version: the upper 16 bit show the hardware (PCB) version, the lower 16 bit show the firm-
ware version.
Register
Value
Direction
Description
SPC_PCIEXTVERSION
2011
read
Extension module version: the upper 16 bit show the hardware (PCB) version, the lower 16 bit show
the firmware version.
Register
Value
Direction
Description
SPC_PCIDATE
2020
read
Production date: week in bit 31 to 16, year in bit 15 to 0
spcm_dwGetParam_i32 (hDrv, SPC_PCIDATE, &lProdDate);
printf ("Production: week &d of year &d\n“, (lProdDate >> 16) & 0xffff, lProdDate & 0xffff);
Register
Value
Direction
Description
SPC_CALIBDATE
2025
read
Last calibration date: week in bit 31 to 16, year in bit 15 to 0
Register
Value
Direction
Description
SPC_PCISERIALNO
2030
read
Serial number of the board