beautypg.com

Configuration example – HP E1418A User Manual

Page 43

background image

Configuration

Example

The following program segment demonstrates how to read the module
identification string and the configuration. The configuration integers are
bit manipulated using the C operator for bit shifting

result = result <<1

(a one bit shift to the left).

/** FUNCTION PROTOTYPES **/
void main (void);
void err_handler(ViSession vi, ViStatus x); /* VTL error routine */
void sys_err(ViSession resource); /* Checks for SCPI programming errors */

/** GLOBAL **/
ViStatus err;
ViSession defaultRM, cmd, dac;

void main (void)
{

int i,num_chan,result = {0},config [6]={0};
char buf[256] = { 0 };

/*** Check the module identification ***/

err=viPrintf(dac, “*IDN?\n”); /* request id from the module */
err=viScanf(dac, “%t”, &buf); /* enter string returned */
printf (“Module is identified as a %s\n”, buf); /* print the result */

/*** Get the module configuration ***/

err=viPrintf(dac, “DIAG:CONF?\n”); /* request module configuration */
err=viScanf(dac, “%,6d”, &config); /* returns six integers */

/* Decode the first integer */

result=config[0]; /* Expansion board */
if (result < 7)

{
printf (“Module is a 16 channel device\n”);
num_chan = 16;
}

else

{
printf (“Module is an 8 channel device\n”);
num_chan=8;
}

42 Programming Examples

Chapter 2

Artisan Technology Group - Quality Instrumentation ... Guaranteed | (888) 88-SOURCE | www.artisantg.com