HP E1418A Service Manual page 42

8/16-channel d/a converter
Hide thumbs Also See for E1418A:
Table of Contents

Advertisement

/*** Routine to perform the current performance test ***/
void current_check ()
{
float i_out [9] = {0.02F, 0.015F, 0.01F,0.005F, 0, -0.005F,-0.01F, -0.015F, -0.02F};
int i,j,opc_check; */
char function [6] = {"CURR:DC\0"},range [6] = {"0.100\0"};
dmm_setup (function,range);
printf ("\n\n");
printf ("DC CURRENT OUTPUT PERFORMANCE TEST\n\n\n\n");
for (i = 0;i != num_chan;i++)
{
/** connection instructions **/
printf ("Channel %d\n",i+1);
printf ("1.\tMake a two-wire connection from channel %d \n",i+1);
printf ("\tto the DMM current input terminals.\n");
printf ("2.\tThe DMM is set to make DC current measurements on \n");
printf ("\tthe 100 mA range.\n");
printf ("3.\tFor each channel in the HP E1418A,\n");
printf ("\t\tOutput 20 mA, 15 mA, 10 mA, 5 mA, 0 mA, -5 mA, -10 mA, -15 mA, -20 mA.\n");
printf ("\t\tMeasure each current output.\n");
printf ("\n\n");
pause();
/** current output loop **/
for (j=0;j<9 ;j++)
{
}
printf ("Current Output Test on channel %d complete\n\n",i+1);
err=viPrintf(dac, "OUTPUT%d OFF;*OPC?\n",i+1); /* Turn output off
if(err VI_SUCCESS) err_handler(dac, err);
err=viScanf(dac, "%d", &opc_check);
if(err VI_SUCCESS) err_handler(dac, err);
sys_err (dac);
}
printf ("Current Output Verification Test completed");
err=viPrintf(dac, "*RST\n");
if(err VI_SUCCESS) err_handler(dac, err);
}
/*** End of current_check ***/
42 Verification Tests
/* Currents to output */
err=viPrintf(dac, "APPLY%d:CURRENT %f;*OPC?\n",i+1,i_out[j]); /* voltage output */
if(err VI_SUCCESS) err_handler(dac, err);
err=viScanf(dac, "%d", &opc_check);
if(err VI_SUCCESS) err_handler(dac, err);
current_results [i][j] = dmm_measure();
/* SCPI error check */
/* reset the dac
/* enter OPC integer */
*/
/* enter OPC integer */
*/
Chapter 4

Advertisement

Table of Contents
loading

Table of Contents