EasyManua.ls Logo

Keysight Technologies N5172B EXG - Page 280

Keysight Technologies N5172B EXG
398 pages
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Loading...
280 Keysight CXG, EXG, and MXG X-Series Signal Generators Programming Guide
Creating and Downloading Waveform Files
Programming Examples
// 32767 gives positive full-scale output
// From these ranges, it appears you should offset the
// data by 8192 and scale it by 4. However, due to the
// interpolators in these products, it is better to scale
// the data by a number less than four. Commonly a good
// choice is 70% of 4 which is 2.8.
// By default, the signal generator scales data to 70%
// If you scale the data here, you may want to change the
// signal generator scaling to 100%
// Also we need to swap the byte order on a little endian
// computer. This code also works for big endian order data
// since it swaps bytes based on the order.
for(index=0; index<numsamples; index++)
{
int iscaled = 2.8*(idata[index]-8192); // shift and scale
int qscaled = 2.8*(qdata[index]-8192); // shift and scale
iqbuffer[index*4] = (iscaled >> 8) & 0xFF; // high byte of
i
iqbuffer[index*4+1] = iscaled & 0xFF; // low byte of i
iqbuffer[index*4+2] = (qscaled >> 8) & 0xFF; // high byte of
q
iqbuffer[index*4+3] = qscaled & 0xFF; // low byte of q
}
// Open a connection to write to the instrument
INST id=iopen(instOpenString);
if (!id)
{
fprintf(stderr, “iopen failed (%s)\n”, instOpenString);
return -1;
}
// Declare variables which will be used later
int bytesToSend;

Table of Contents

Other manuals for Keysight Technologies N5172B EXG

Related product manuals