03-01-2019 07:23 PM
I am adapting an advanced electrochemical software running on FreeBSD which where written for the NI PCI-6251 (M-Series) for a new customer to the NI PCIe-6351 (X-Series).
The new board is installed and the X-Series DDK examples work as expected. In said EC software I got AI, AO (both with and without DMA) as well as DIO and PFI already working without major problems.
Now I am stuck in finding even the command for doing internal signal routing which would be necessary for porting the self calibration routines, which I wrote in 2009 for the PCI-6251, see here: https://forums.ni.com/t5/Driver-Development-Kit-DDK/self-calibration-of-NI-PCI-6251-M-series-using-t...
I attached to this message my working calibration sub-routines for said M series board.
Questions:
1) How would I set the internal routing?
2) What are the selectors for the positive and negative internal sources?
On the M series board I had:
typedef enum
{
noCalsrc=-1,
scxi0 = 0,
scxi1 = 1,
calRef = 2,
calSrc05 = 3,
calSrc2 = 4,
calSrc10 = 5,
gndAI = 6,
selAO = 7,
// derived selectors
calSrc01 = 8, // => calSrc05, PWMlo = 3, PWMhi = 2
calSrc02 = 9, // => calSrc05, PWMlo = 7, PWMhi = 3
calSrc1 = 10, // => calSrc2, PWMlo = 9, PWMhi = 3
calSrc5 = 11 // => calSrc10, PWMlo = 9, PWMhi = 3
} pos_src;
enum
{
noCalSrcNeg = -1,
scxiNeg0 = 0,
scxiNeg1 = 1,
Tsensor = 2, // according to a measurement series T in °C = 100*Ut - 50
senseAI = 3,
sense2AI = 4,
gndAONeg = 5,
gndAINeg = 6,
calSrc10Neg = 7
} neg_src;
How do I set a PWM source?
4) Does the eepromHelper method getSelfCalVoltRef() give the actual value of the internal reference voltage?
I am searching already for several hours in the X Series DDK and its relevant documentation and I could not find anything which is even remotely with similar to the M Series respect to internal signal routing.Many thanks in advance for any help.
Best regards
Rolf