C++ programming examples – Agilent Technologies N5183A MXG User Manual

Page 242

Advertising
background image

232

Agilent N518xA, E8663B, E44x8C, and E82x7D Signal Generators Programming Guide

Creating and Downloading Waveform Files
Programming Examples

C++ Programming Examples

This section contains the following programming examples:

“Creating and Storing Offset I/Q Data—Big and Little Endian Order” on page 232

“Creating and Storing I/Q Data—Little Endian Order” on page 236

“Creating and Downloading I/Q Data—Big and Little Endian Order” on page 238

“Importing and Downloading I/Q Data—Big Endian Order” on page 242

“Importing and Downloading Using VISA—Big Endian Order” on page 245

“Importing, Byte Swapping, Interleaving, and Downloading I and Q Data—Big and Little Endian
Order” on page 249

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 255

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 Agilent 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; // Size of waveform

const char *computer = “PCWIN”;

int main(int argc, char* argv[])

{

Advertising
This manual is related to the following products: