- more portable
*/
+/***************************************************************************
+ * *
+ * This program is free software; you can redistribute it and/or modify *
+ * it under the terms of the GNU Lesser General Public License as *
+ * published by *
+ * the Free Software Foundation; either version 2.1 of the License, or *
+ * (at your option) any later version. *
+ * *
+ ***************************************************************************/
+
#define _GNU_SOURCE
#include <stdio.h>
void (*setup_observables)( calibration_setup_t *setup );
};
-int ni_setup_board( calibration_setup_t *setup , const char *device_name );
-void ni_setup_observables( calibration_setup_t *setup );
-void ni_setup_observables_611x( calibration_setup_t *setup );
-
-int cal_ni_at_mio_16e_2(calibration_setup_t *setup);
-int cal_ni_daqcard_ai_16xe_50(calibration_setup_t *setup);
-int cal_ni_at_mio_16e_1(calibration_setup_t *setup);
-int cal_ni_pci_mio_16e_1(calibration_setup_t *setup);
-int cal_ni_pci_6025e(calibration_setup_t *setup);
-int cal_ni_pci_6035e(calibration_setup_t *setup);
-int cal_ni_pci_6071e(calibration_setup_t *setup);
-int cal_ni_pxi_6071e(calibration_setup_t *setup);
-int cal_ni_at_mio_16e_10(calibration_setup_t *setup);
-int cal_ni_pci_mio_16xe_50(calibration_setup_t *setup);
-int cal_ni_pci_6023e(calibration_setup_t *setup);
-int cal_ni_pci_6024e(calibration_setup_t *setup);
-int cal_ni_at_mio_16xe_50(calibration_setup_t *setup);
-int cal_ni_pci_mio_16xe_10(calibration_setup_t *setup);
-int cal_ni_pci_6052e(calibration_setup_t *setup);
-int cal_ni_pci_mio_16e_4(calibration_setup_t *setup);
-int cal_ni_pci_6032e(calibration_setup_t *setup);
-int cal_ni_daqcard_ai_16e_4(calibration_setup_t *setup);
-int cal_ni_pci_611x(calibration_setup_t *setup);
-
-double ni_get_reference( calibration_setup_t *setup, int lsb_loc,int msb_loc);
+static int ni_setup_board( calibration_setup_t *setup , const char *device_name );
+static void ni_setup_observables( calibration_setup_t *setup );
+static void ni_setup_observables_611x( calibration_setup_t *setup );
+
+static int cal_ni_at_mio_16e_2(calibration_setup_t *setup);
+static int cal_ni_daqcard_ai_16xe_50(calibration_setup_t *setup);
+static int cal_ni_at_mio_16e_1(calibration_setup_t *setup);
+static int cal_ni_pci_mio_16e_1(calibration_setup_t *setup);
+static int cal_ni_pci_6025e(calibration_setup_t *setup);
+static int cal_ni_pci_6035e(calibration_setup_t *setup);
+static int cal_ni_pci_6071e(calibration_setup_t *setup);
+static int cal_ni_pxi_6071e(calibration_setup_t *setup);
+static int cal_ni_at_mio_16e_10(calibration_setup_t *setup);
+static int cal_ni_pci_mio_16xe_50(calibration_setup_t *setup);
+static int cal_ni_pci_6023e(calibration_setup_t *setup);
+static int cal_ni_pci_6024e(calibration_setup_t *setup);
+static int cal_ni_at_mio_16xe_50(calibration_setup_t *setup);
+static int cal_ni_pci_mio_16xe_10(calibration_setup_t *setup);
+static int cal_ni_pci_6052e(calibration_setup_t *setup);
+static int cal_ni_pci_mio_16e_4(calibration_setup_t *setup);
+static int cal_ni_pci_6032e(calibration_setup_t *setup);
+static int cal_ni_daqcard_ai_16e_4(calibration_setup_t *setup);
+static int cal_ni_pci_611x(calibration_setup_t *setup);
+
+static double ni_get_reference( calibration_setup_t *setup, int lsb_loc,int msb_loc);
static struct board_struct boards[]={
{ "at-mio-16e-2", STATUS_DONE, cal_ni_at_mio_16e_2, ni_setup_observables },
return 0;
}
-int ni_setup_board( calibration_setup_t *setup, const char *device_name )
+static int ni_setup_board( calibration_setup_t *setup, const char *device_name )
{
int i;
return 0;
}
-void ni_setup_observables( calibration_setup_t *setup )
+static void ni_setup_observables( calibration_setup_t *setup )
{
comedi_insn tmpl;
int bipolar_lowgain;
return ( ref_source & 0xf ) | ( ( cal_gain_bits << 4 ) & 0xff0 );
}
-void ni_setup_observables_611x( calibration_setup_t *setup )
+static void ni_setup_observables_611x( calibration_setup_t *setup )
{
comedi_insn tmpl;
comedi_insn po_tmpl;
setup->n_observables = 4 + 2 * num_chans;
}
-int cal_ni_at_mio_16e_2(calibration_setup_t *setup)
+static int cal_ni_at_mio_16e_2(calibration_setup_t *setup)
{
postgain_cal( setup, ni_zero_offset_low,ni_zero_offset_high,1);
cal1( setup, ni_zero_offset_high,0);
* caldac[2] gain=7.8670(11)e-5 V/bit S_min=903.291 dof=254
* caldac[8] gain=2.7732(74)e-7 V/bit S_min=415.399 dof=254
*/
-int cal_ni_daqcard_ai_16xe_50(calibration_setup_t *setup)
+static int cal_ni_daqcard_ai_16xe_50(calibration_setup_t *setup)
{
postgain_cal( setup, ni_zero_offset_low,ni_zero_offset_high,2);
cal1( setup, ni_zero_offset_high,8);
return 0;
}
-int cal_ni_at_mio_16xe_50(calibration_setup_t *setup)
+static int cal_ni_at_mio_16xe_50(calibration_setup_t *setup)
{
postgain_cal( setup, ni_zero_offset_low,ni_zero_offset_high,2);
cal1( setup, ni_zero_offset_high,8);
return 0;
}
-int cal_ni_pci_mio_16xe_10(calibration_setup_t *setup)
+static int cal_ni_pci_mio_16xe_10(calibration_setup_t *setup)
{
postgain_cal( setup, ni_zero_offset_low, ni_zero_offset_high, 2);
postgain_cal( setup, ni_zero_offset_low, ni_zero_offset_high, 3);
return 0;
}
-int cal_ni_at_mio_16e_1(calibration_setup_t *setup)
+static int cal_ni_at_mio_16e_1(calibration_setup_t *setup)
{
return cal_ni_at_mio_16e_2( setup );
}
-int cal_ni_pci_mio_16e_1(calibration_setup_t *setup)
+static int cal_ni_pci_mio_16e_1(calibration_setup_t *setup)
{
//cal_ni_at_mio_16e_2();
return 0;
}
-int cal_ni_pci_6032e(calibration_setup_t *setup)
+static int cal_ni_pci_6032e(calibration_setup_t *setup)
{
postgain_cal(setup, ni_zero_offset_low, ni_zero_offset_high, 2);
postgain_cal(setup, ni_zero_offset_low, ni_zero_offset_high, 3);
return 0;
}
-int cal_ni_pci_6035e(calibration_setup_t *setup)
+static int cal_ni_pci_6035e(calibration_setup_t *setup)
{
/* this is for the ad8804_debug caldac */
return 0;
}
-int cal_ni_pci_6071e(calibration_setup_t *setup)
+static int cal_ni_pci_6071e(calibration_setup_t *setup)
{
postgain_cal( setup, ni_zero_offset_low,ni_zero_offset_high,1);
cal1( setup, ni_zero_offset_high,0);
return 0;
}
-int cal_ni_pxi_6071e(calibration_setup_t *setup)
+static int cal_ni_pxi_6071e(calibration_setup_t *setup)
{
// 6071e (old)
postgain_cal( setup, ni_zero_offset_low,ni_zero_offset_high,1);
return 0;
}
-int cal_ni_at_mio_16e_10(calibration_setup_t *setup)
+static int cal_ni_at_mio_16e_10(calibration_setup_t *setup)
{
// 16e-10 (old)
postgain_cal( setup, ni_zero_offset_low,ni_zero_offset_high,1);
return 0;
}
-int cal_ni_pci_mio_16xe_50(calibration_setup_t *setup)
+static int cal_ni_pci_mio_16xe_50(calibration_setup_t *setup)
{
postgain_cal( setup, ni_zero_offset_low,ni_zero_offset_high,2);
cal1( setup, ni_zero_offset_high,8);
return 0;
}
-int cal_ni_pci_6023e(calibration_setup_t *setup)
+static int cal_ni_pci_6023e(calibration_setup_t *setup)
{
/* for comedi-0.7.65 */
return 0;
}
-int cal_ni_pci_6024e(calibration_setup_t *setup)
+static int cal_ni_pci_6024e(calibration_setup_t *setup)
{
postgain_cal( setup, ni_zero_offset_low,ni_zero_offset_high,4);
cal1( setup, ni_zero_offset_high,0);
return 0;
}
-int cal_ni_pci_6025e(calibration_setup_t *setup)
+static int cal_ni_pci_6025e(calibration_setup_t *setup)
{
postgain_cal( setup, ni_zero_offset_low,ni_zero_offset_high,4);
cal1( setup, ni_zero_offset_high,0);
return 0;
}
-int cal_ni_pci_6052e(calibration_setup_t *setup)
+static int cal_ni_pci_6052e(calibration_setup_t *setup)
{
/*
* This board has noisy caldacs
return 0;
}
-int cal_ni_pci_mio_16e_4(calibration_setup_t *setup)
+static int cal_ni_pci_mio_16e_4(calibration_setup_t *setup)
{
/* this is for the ad8804_debug caldac */
return 0;
}
-int cal_ni_daqcard_ai_16e_4(calibration_setup_t *setup)
+static int cal_ni_daqcard_ai_16e_4(calibration_setup_t *setup)
{
cal_postgain_binary(setup, ni_zero_offset_low, ni_zero_offset_high, 1);
//cal_postgain_fine(setup, ni_zero_offset_low, ni_zero_offset_high, 1);
return 0;
}
-int cal_ni_pci_611x( calibration_setup_t *setup )
+static int cal_ni_pci_611x( calibration_setup_t *setup )
{
int i;
int num_chans;
return 0;
}
-double ni_get_reference( calibration_setup_t *setup, int lsb_loc,int msb_loc)
+static double ni_get_reference( calibration_setup_t *setup, int lsb_loc,int msb_loc)
{
int lsb,msb;
int16_t uv;
}
#if 0
-void cal_ni_results(void)
+static void cal_ni_results(void)
{
comedi_range *range;
int bipolar_lowgain;
}
-void ni_mio_ai_postgain_cal(void)
+static void ni_mio_ai_postgain_cal(void)
{
linear_fit_t l;
double offset_r0;
printf("offset r7 %g\n",offset_r7);
gain=l.slope;
-
+
a=(offset_r0-offset_r7)/(200.0-1.0);
a=caldacs[1].current-a/gain;
update_caldac(1);
}
-void ni_mio_ai_postgain_cal_2(int chan,int dac,int range_lo,int range_hi,double gain)
+static void ni_mio_ai_postgain_cal_2(int chan,int dac,int range_lo,int range_hi,double gain)
{
double offset_lo,offset_hi;
linear_fit_t l;