}
//********************************************************** // error checking routine
void check (ViSession vi, ViStatus errStatus)
{
ViInt32 inst_err;
ViChar err_message[256];
if(VI_SUCCESS > errStatus)
{
if(INSTR_ERROR == errStatus)
{
// query instrument error
hpe1410_dcl(vi);// send a device clear
hpe1410_error_query(vi, &inst_err, err_message);
// display the error
printf("Instrument Error : %ld, %s\n", inst_err, err_message);
}
else
{
// get driver error message
hpe1410_error_message(vi, errStatus, err_message);
// display the error
printf("HP E1410 Driver Error : %ld, %s\n", errStatus, err_message);
}
hpe1410_reset(vi);// reset the multimeter hpe1410_close(vi);// close the multimeter handle
exit(1);
}
return;
}
//************************************************************** // Error handling function
void err_handler (ViSession vi, ViStatus err)
{
char buf[1024]={0}; viStatusDesc(vi,err,buf); printf("ERROR = %s\n", buf); return;
}
Chapter 3 | VXI Programming Using the IEEE 1394 Serial Bus 53 |