SciSDK Library
SDK for SciCompiler projects
Loading...
Searching...
No Matches
DT5771 Board Driver

The board has a versatile analog front-end with single channel analog input . The Front-End has configurable gain, offset, impedance, input division and coupling

SciSDK allows to configure the front end of the board from code in a very simple way.

The board expose a node in the device tree called boardapi/analog that allows to configure the front end of the board.

Parameter Description Valid Values Default Value Example node
gain Gain of the front end 0, 1, ... 15 0dB (1V/V) board0:/boardapi/analog/CH0.gain
impedance Impedance of the front end 1k, 50r 1k board0:/boardapi/analog/CH0.impedance
range Select input range 2v, 10v 2v board0:/boardapi/analog/CH0.rage
offset Offset of the front end -32768, ... 32767 0 board0:/boardapi/analog/CH0.offset
shaper Coupling of the front end dc, 300ns, 1us, 10us, floating dc board0:/boardapi/analog/CH0.shaper
bw Bandwidth limit full, 20mhz, 100mhz, 200mhz, 350mhz, 650mhz, 750mhz full board0:/boardapi/analog/CH0.bw

The board expose a node in the device tree called boardapi/digitalio used to configure digital lemo.

Parameter Description Valid Values Default Value Example node
impedance Impedance of the Lemo connector hi, 50r hi board0:/boardapi/digitalio/LEMO0.impedance

How to use the boardapi/analog node

In order to access to the node board0:/boardapi/analog/CH you have to access to the node board0:/boardapi/analog/CH where x is the number of the channel. For example to access to the offset of channel 0 you have to access to the node board0:/boardapi/analog/CH0.offset

The shaper is common for all channels. In order to access to the shaper you have to access to the node board0:/boardapi/analog.shaper

Applying the configuration

Parameters are applied immediately after setting them.

Example

Configure a single channels

C/C++

int op_res=0;
op_res |= SCISDK_SetParameterInteger("board0:/boardapi/analog/CH0.gain", 5, _sdk);
op_res |= SCISDK_SetParameterString("board0:/boardapi/analog/CH0.impedance", "1k", _sdk);
op_res |= SCISDK_SetParameterString("board0:/boardapi/analog/CH0.range", "2v", _sdk);
op_res |= SCISDK_SetParameterInteger("board0:/boardapi/analog/CH0.offset", 100, _sdk);
op_res |= SCISDK_SetParameterString("board0:/boardapi/analog/CH0.shaper", "dc", _sdk);
op_res |= SCISDK_SetParameterString("board0:/boardapi/analog/CH0.bw", "20mhz", _sdk);
op_res |= SCISDK_SetParameterString("board0:/boardapi/digitalio/LEMO0.impedance", "50r", _sdk);
op_res |= SCISDK_SetParameterString("board0:/boardapi/digitalio/LEMO1.impedance", "hi", _sdk);
SCISDK_DLL_API int SCISDK_SetParameterString(char *Path, char *value, void *handle)
Set the value of a parameter for the specific SciCompiler Memory Mapped Component or route the value ...
SCISDK_DLL_API int SCISDK_SetParameterInteger(char *Path, int value, void *handle)
Set the value of a parameter for the specific SciCompiler Memory Mapped Component or route the value ...

Python

sdk.SetParameter("board0:/boardapi/analog/CH0.gain", 5)
sdk.SetParameter("board0:/boardapi/analog/CH0.impedance", "1k")
sdk.SetParameter("board0:/boardapi/analog/CH0.range", "2v")
sdk.SetParameter("board0:/boardapi/analog/CH0.offset", 100)
sdk.SetParameter("board0:/boardapi/analog.CH0.shaper", "dc")
sdk.SetParameter("board0:/boardapi/analog.CH0.bw", "20mhz")
sdk.SetParameter("board0:/boardapi/digitalio/LEMO0.impedance", "50r")
sdk.SetParameter("board0:/boardapi/digitalio/LEMO1.impedance", "hi")