C++ Programming Examples; Creating And Storing Offset I/Q Data-Big And Little Endian Order - Keysight E4428C ESG RF Programming Manual

Signal generators
Table of Contents

Advertisement

C++ Programming Examples

This section contains the following programming examples:
• "Importing, Byte Swapping, Interleaving, and Downloading I and Q Data-Big and Little Endian Order" on
page 278

Creating and Storing Offset I/Q Data-Big and Little Endian Order

On the documentation CD, this programming example's name is "offset_iq_c++.txt."
This C++ programming example (compiled using Microsoft Visual C++ 6.0) follows the same coding
algorithm as the MATLAB programming example "Creating and Storing I/Q Data" on page 285 and
performs the following functions:
• error checking
• data creation
• data normalization
• data scaling
• I/Q signal offset from the carrier (single sideband suppressed carrier signal)
• byte swapping and interleaving for little endian order data
• I and Q interleaving for big endian order data
• binary data file storing to a PC or workstation
• reversal of the data formatting process (byte swapping, interleaving, and normalizing the data)
After creating the binary file, you can use FTP, one of the download utilities, or one of the C++
download programming examples to download the file to the signal generator.
// This C++ example shows how to
// 1.) Create a simple IQ waveform
// 2.) Save the waveform into the ESG/PSG Internal Arb format
//
This format is for the E4438C, E8267C, E8267D
//
This format will not work with the ESG E443xB or the Keysight MXG N518xA
// 3.) Load the internal Arb format file into an array
#include <stdio.h>
#include <string.h>
#include <math.h>
const int POINTS = 1000;
const char *computer = "PCWIN";
int main(int argc, char* argv[])
Keysight Signal Generators Programming Guide
// Size of waveform
Creating and Downloading Waveform Files
Programming Examples
263

Advertisement

Table of Contents
loading

Table of Contents