Programming examples gpib operation – Anritsu ML2430A User Manual

Page 221

Advertising
background image

/* Read and cast the data */

while (count < length)

{

real_data1[loop++] = ((float)(*bin_value++))/1024.0;

count += 4;

}

real1_entries = loop;

}

else if (decode_type == OFFSET_TABLE_BINARY_DATA)

{

/* Decode header */

/* Find # character. */

cptr = strtok(&buffer[0],"#");

cptr = strtok(NULL,"#");

/* Get the number of characters for binary length */

ch_val[0] = *cptr++;

ch_val[1] = NULL;

count = atoi(&ch_val[0]);

/* Get length of binary data */

for (loop = 0; loop < count; loop++)

{

ch_val[loop] = *cptr++;

}

ch_val[count] = NULL;

length = atoi(&ch_val[0]);

*cptr++; /* Read past comma for offset tables. */

/* The binary offset table is 200 sets frequency and dB */

/* These are held in single precision floating point. */

/* To convert to the real values, re-order the bytes. */

/*

*/

count = 0;

loop = 0;

while (count < length)

{

/* Frequency conversion */

bin_data.cval[2] = *cptr++;

bin_data.cval[3] = *cptr++;

bin_data.cval[0] = *cptr++;

bin_data.cval[1] = *cptr++;

real_data1[loop] = bin_data.fval;

/* dB conversion */

bin_data.cval[2] = *cptr++;

bin_data.cval[3] = *cptr++;

bin_data.cval[0] = *cptr++;

bin_data.cval[1] = *cptr++;

real_data2[loop++] = bin_data.fval;

count += 8;

}

real1_entries = loop;

real2_entries = loop;

}

6-134

ML2430A OM

PROGRAMMING EXAMPLES

GPIB OPERATION

Advertising