Agilent Technologies InfiniiVision 3000 DSO-X 3054A Manual de servicio Pagina 905

  • Descarga
  • Añadir a mis manuales
  • Imprimir
  • Pagina
    / 970
  • Tabla de contenidos
  • MARCADORES
  • Valorado. / 5. Basado en revisión del cliente
Vista de pagina 904
Programming Examples 37
Agilent InfiniiVision 3000 X-Series Oscilloscopes Programmer's Guide 905
char *query;
{
char message[80];
strcpy(message, query);
strcat(message, "\n");
err = viPrintf(vi, message);
if (err != VI_SUCCESS) error_handler();
err = viScanf(vi, "%,10lf\n", dbl_results);
if (err != VI_SUCCESS) error_handler();
check_instrument_errors();
}
/* Query for an IEEE definite-length block result.
* --------------------------------------------------------------- */
int do_query_ieeeblock(query)
char *query;
{
char message[80];
int data_length;
strcpy(message, query);
strcat(message, "\n");
err = viPrintf(vi, message);
if (err != VI_SUCCESS) error_handler();
data_length = IEEEBLOCK_SPACE;
err = viScanf(vi, "%#b\n", &data_length, ieeeblock_data);
if (err != VI_SUCCESS) error_handler();
if (data_length == IEEEBLOCK_SPACE )
{
printf("IEEE block buffer full: ");
printf("May not have received all data.\n");
}
check_instrument_errors();
return(data_length);
}
/* Check for instrument errors.
* --------------------------------------------------------------- */
void check_instrument_errors()
{
char str_err_val[256] = {0};
char str_out[800] = "";
err = viQueryf(vi, ":SYSTem:ERRor?\n", "%t", str_err_val);
if (err != VI_SUCCESS) error_handler();
while(strncmp(str_err_val, "+0,No error", 3) != 0 )
{
strcat(str_out, ", ");
strcat(str_out, str_err_val);
Vista de pagina 904
1 2 ... 900 901 902 903 904 905 906 907 908 909 910 ... 969 970

Comentarios a estos manuales

Sin comentarios