337 lines
6.2 KiB
Zig
337 lines
6.2 KiB
Zig
|
pub extern fn EAnalogIn(
|
||
|
idnum: *c_long,
|
||
|
demo: c_long,
|
||
|
channel: c_long,
|
||
|
gain: c_long,
|
||
|
overVoltage: *c_long,
|
||
|
voltage: *f32,
|
||
|
) c_long;
|
||
|
|
||
|
pub extern fn EAnalogOut(
|
||
|
idnum: *c_long,
|
||
|
demo: c_long,
|
||
|
analogOut0: f32,
|
||
|
analogOut1: f32,
|
||
|
) c_long;
|
||
|
|
||
|
pub extern fn ECount(
|
||
|
idnum: *c_long,
|
||
|
demo: c_long,
|
||
|
resetCounter: c_long,
|
||
|
count: *f64,
|
||
|
ms: *f64,
|
||
|
) c_long;
|
||
|
|
||
|
pub extern fn EDigitalIn(
|
||
|
idnum: *c_long,
|
||
|
demo: c_long,
|
||
|
channel: c_long,
|
||
|
readD: c_long,
|
||
|
state: [*c]c_long,
|
||
|
) c_long;
|
||
|
|
||
|
pub extern fn EDigitalOut(
|
||
|
idnum: *c_long,
|
||
|
demo: c_long,
|
||
|
channel: c_long,
|
||
|
writeD: c_long,
|
||
|
state: c_long,
|
||
|
) c_long;
|
||
|
|
||
|
pub extern fn AsynchConfig(
|
||
|
idnum: *c_long,
|
||
|
demo: c_long,
|
||
|
timeoutMult: c_long,
|
||
|
configA: c_long,
|
||
|
configB: c_long,
|
||
|
configTE: c_long,
|
||
|
fullA: c_long,
|
||
|
fullB: c_long,
|
||
|
fullC: c_long,
|
||
|
halfA: c_long,
|
||
|
halfB: c_long,
|
||
|
halfC: c_long,
|
||
|
) c_long;
|
||
|
|
||
|
pub extern fn Asynch(
|
||
|
idnum: *c_long,
|
||
|
demo: c_long,
|
||
|
portB: c_long,
|
||
|
enableTE: c_long,
|
||
|
enableTO: c_long,
|
||
|
enableDel: c_long,
|
||
|
baudrate: c_long,
|
||
|
numWrite: c_long,
|
||
|
numRead: c_long,
|
||
|
data: [*c]c_long,
|
||
|
) c_long;
|
||
|
|
||
|
pub extern fn AISample(
|
||
|
idnum: *c_long,
|
||
|
demo: c_long,
|
||
|
stateIO: [*c]c_long,
|
||
|
updateIO: c_long,
|
||
|
ledOn: c_long,
|
||
|
numChannels: c_long,
|
||
|
channels: [*c]c_long,
|
||
|
gains: [*c]c_long,
|
||
|
disableCal: c_long,
|
||
|
overVoltage: [*c]c_long,
|
||
|
voltages: [*c]f32,
|
||
|
) c_long;
|
||
|
|
||
|
pub extern fn AIBurst(
|
||
|
idnum: *c_long,
|
||
|
demo: c_long,
|
||
|
stateIOin: c_long,
|
||
|
updateIO: c_long,
|
||
|
ledOn: c_long,
|
||
|
numChannels: c_long,
|
||
|
channels: [*c]c_long,
|
||
|
gains: [*c]c_long,
|
||
|
scanRate: [*c]f32,
|
||
|
disableCal: c_long,
|
||
|
triggerIO: c_long,
|
||
|
triggerState: c_long,
|
||
|
numScans: c_long,
|
||
|
timeout: c_long,
|
||
|
voltages: [*c][4]f32,
|
||
|
stateIOout: [*c]c_long,
|
||
|
overVoltage: [*c]c_long,
|
||
|
transferMode: c_long,
|
||
|
) c_long;
|
||
|
|
||
|
pub extern fn AIStreamStart(
|
||
|
idnum: *c_long,
|
||
|
demo: c_long,
|
||
|
stateIOin: c_long,
|
||
|
updateIO: c_long,
|
||
|
ledOn: c_long,
|
||
|
numChannels: c_long,
|
||
|
channels: [*c]c_long,
|
||
|
gains: [*c]c_long,
|
||
|
scanRate: [*c]f32,
|
||
|
disableCal: c_long,
|
||
|
reserved1: c_long,
|
||
|
readCount: c_long,
|
||
|
) c_long;
|
||
|
|
||
|
pub extern fn AIStreamRead(
|
||
|
localID: c_long,
|
||
|
numScans: c_long,
|
||
|
timeout: c_long,
|
||
|
voltages: [*c][4]f32,
|
||
|
stateIOout: [*c]c_long,
|
||
|
reserved: [*c]c_long,
|
||
|
ljScanBacklog: [*c]c_long,
|
||
|
overVoltage: [*c]c_long,
|
||
|
) c_long;
|
||
|
|
||
|
pub extern fn AIStreamClear(
|
||
|
localID: c_long,
|
||
|
) c_long;
|
||
|
|
||
|
pub extern fn AOUpdate(
|
||
|
idnum: *c_long,
|
||
|
demo: c_long,
|
||
|
trisD: c_long,
|
||
|
trisIO: c_long,
|
||
|
stateD: [*c]c_long,
|
||
|
stateIO: [*c]c_long,
|
||
|
updateDigital: c_long,
|
||
|
resetCounter: c_long,
|
||
|
count: [*c]c_ulong,
|
||
|
analogOut0: f32,
|
||
|
analogOut1: f32,
|
||
|
) c_long;
|
||
|
|
||
|
pub extern fn BitsToVolts(
|
||
|
chnum: c_long,
|
||
|
chgain: c_long,
|
||
|
bits: c_long,
|
||
|
volts: [*c]f32,
|
||
|
) c_long;
|
||
|
|
||
|
pub extern fn VoltsToBits(
|
||
|
chnum: c_long,
|
||
|
chgain: c_long,
|
||
|
volts: f32,
|
||
|
bits: [*c]c_long,
|
||
|
) c_long;
|
||
|
|
||
|
pub extern fn Counter(
|
||
|
idnum: *c_long,
|
||
|
demo: c_long,
|
||
|
stateD: [*c]c_long,
|
||
|
stateIO: [*c]c_long,
|
||
|
resetCounter: c_long,
|
||
|
enableSTB: c_long,
|
||
|
count: [*c]c_ulong,
|
||
|
) c_long;
|
||
|
|
||
|
pub extern fn DigitalIO(
|
||
|
idnum: *c_long,
|
||
|
demo: c_long,
|
||
|
trisD: [*c]c_long,
|
||
|
trisIO: c_long,
|
||
|
stateD: [*c]c_long,
|
||
|
stateIO: [*c]c_long,
|
||
|
updateDigital: c_long,
|
||
|
outputD: [*c]c_long,
|
||
|
) c_long;
|
||
|
|
||
|
pub extern fn GetDriverVersion() f32;
|
||
|
|
||
|
pub extern fn GetErrorString(
|
||
|
errorcode: c_long,
|
||
|
errorString: *[50]u8,
|
||
|
) void;
|
||
|
|
||
|
pub extern fn GetFirmwareVersion(idnum: *c_long) f32;
|
||
|
|
||
|
pub extern fn ListAll(
|
||
|
productIDList: *[127]c_long,
|
||
|
serialnumList: *[127]c_long,
|
||
|
localIDList: *[127]c_long,
|
||
|
powerList: *[127]c_long,
|
||
|
calMatrix: *[127][20]c_long,
|
||
|
numberFound: *c_long,
|
||
|
fcddMaxSize: *c_long,
|
||
|
hvcMaxSize: *c_long,
|
||
|
) c_long;
|
||
|
|
||
|
pub extern fn LocalID(
|
||
|
idnum: *c_long,
|
||
|
localID: c_long,
|
||
|
) c_long;
|
||
|
|
||
|
pub extern fn PulseOut(
|
||
|
idnum: *c_long,
|
||
|
demo: c_long,
|
||
|
lowFirst: c_long,
|
||
|
bitSelect: c_long,
|
||
|
numPulses: c_long,
|
||
|
timeB1: c_long,
|
||
|
timeC1: c_long,
|
||
|
timeB2: c_long,
|
||
|
timeC2: c_long,
|
||
|
) c_long;
|
||
|
|
||
|
pub extern fn PulseOutStart(
|
||
|
idnum: *c_long,
|
||
|
demo: c_long,
|
||
|
lowFirst: c_long,
|
||
|
bitSelect: c_long,
|
||
|
numPulses: c_long,
|
||
|
timeB1: c_long,
|
||
|
timeC1: c_long,
|
||
|
timeB2: c_long,
|
||
|
timeC2: c_long,
|
||
|
) c_long;
|
||
|
|
||
|
pub extern fn PulseOutFinish(
|
||
|
idnum: *c_long,
|
||
|
demo: c_long,
|
||
|
timeoutMS: c_long,
|
||
|
) c_long;
|
||
|
|
||
|
pub extern fn PulseOutCalc(
|
||
|
frequency: [*c]f32,
|
||
|
timeB: [*c]c_long,
|
||
|
timeC: [*c]c_long,
|
||
|
) c_long;
|
||
|
|
||
|
pub extern fn ReEnum(
|
||
|
idnum: *c_long,
|
||
|
) c_long;
|
||
|
|
||
|
pub extern fn Reset(
|
||
|
idnum: *c_long,
|
||
|
) c_long;
|
||
|
|
||
|
pub extern fn ResetLJ(
|
||
|
idnum: *c_long,
|
||
|
) c_long;
|
||
|
|
||
|
pub extern fn SHT1X(
|
||
|
idnum: *c_long,
|
||
|
demo: c_long,
|
||
|
softComm: c_long,
|
||
|
mode: c_long,
|
||
|
statusReg: c_long,
|
||
|
tempC: [*c]f32,
|
||
|
tempF: [*c]f32,
|
||
|
rh: [*c]f32,
|
||
|
) c_long;
|
||
|
|
||
|
pub extern fn SHTComm(
|
||
|
idnum: *c_long,
|
||
|
softComm: c_long,
|
||
|
waitMeas: c_long,
|
||
|
serialReset: c_long,
|
||
|
dataRate: c_long,
|
||
|
numWrite: c_long,
|
||
|
numRead: c_long,
|
||
|
datatx: [*c]u8,
|
||
|
datarx: [*c]u8,
|
||
|
) c_long;
|
||
|
|
||
|
pub extern fn SHTCRC(
|
||
|
statusReg: c_long,
|
||
|
numWrite: c_long,
|
||
|
numRead: c_long,
|
||
|
datatx: [*c]u8,
|
||
|
datarx: [*c]u8,
|
||
|
) c_long;
|
||
|
|
||
|
pub extern fn Synch(
|
||
|
idnum: *c_long,
|
||
|
demo: c_long,
|
||
|
mode: c_long,
|
||
|
msDelay: c_long,
|
||
|
husDelay: c_long,
|
||
|
controlCS: c_long,
|
||
|
csLine: c_long,
|
||
|
csState: c_long,
|
||
|
configD: c_long,
|
||
|
numWriteRead: c_long,
|
||
|
data: [*c]c_long,
|
||
|
) c_long;
|
||
|
|
||
|
pub extern fn Watchdog(
|
||
|
idnum: *c_long,
|
||
|
demo: c_long,
|
||
|
active: c_long,
|
||
|
timeout: c_long,
|
||
|
reset: c_long,
|
||
|
activeD0: c_long,
|
||
|
activeD1: c_long,
|
||
|
activeD8: c_long,
|
||
|
stateD0: c_long,
|
||
|
stateD1: c_long,
|
||
|
stateD8: c_long,
|
||
|
) c_long;
|
||
|
|
||
|
pub extern fn ReadMem(
|
||
|
idnum: *c_long,
|
||
|
address: c_long,
|
||
|
data3: [*c]c_long,
|
||
|
data2: [*c]c_long,
|
||
|
data1: [*c]c_long,
|
||
|
data0: [*c]c_long,
|
||
|
) c_long;
|
||
|
|
||
|
pub extern fn WriteMem(
|
||
|
idnum: *c_long,
|
||
|
unlocked: c_long,
|
||
|
address: c_long,
|
||
|
data3: c_long,
|
||
|
data2: c_long,
|
||
|
data1: c_long,
|
||
|
data0: c_long,
|
||
|
) c_long;
|
||
|
|
||
|
pub extern fn CloseLabJack(
|
||
|
localID: c_long,
|
||
|
) c_long;
|