Generating an internal fm signal using visa and c – Agilent Technologies N5183A MXG User Manual
Page 91

Agilent N518xA, E8663B, E44x8C, and E82x7D Signal Generators Programming Guide
81
Programming Examples
GPIB Programming Interface Examples
printf("Example program to set up the signal generator\n");
printf("for an AC-coupled FM signal\n");
printf("Press any key to continue\n");
printf("\n");
getch();
printf("\n");
viPrintf(vi, "*RST\n"); // Resets the signal generator
viPrintf(vi, "FM:SOUR EXT2\n"); // Sets EXT 2 source for FM
viPrintf(vi, "FM:EXT2:COUP AC\n"); // Sets FM path 2 coupling to AC
viPrintf(vi, "FM:DEV 20 kHz\n"); // Sets FM path 2 deviation to 20 kHz
viPrintf(vi, "FREQ 700 MHz\n"); // Sets carrier frequency to 700 MHz
viPrintf(vi, "POW:AMPL -2.5 dBm\n"); // Sets the power level to -2.5 dBm
viPrintf(vi, "FM:STAT ON\n"); // Turns on frequency modulation
viPrintf(vi, "OUTP:STAT ON\n"); // Turns on RF output
// Print user information
printf("Power level : -2.5 dBm\n");
printf("FM state : on\n");
printf("RF output : on\n");
printf("Carrier Frequency : 700 MHZ\n");
printf("Deviation : 20 kHZ\n");
printf("EXT2 and AC coupling are selected\n");
printf("\n"); // Prints a carrage return
// Close the sessions
viClose(vi);
viClose(defaultRM);
}
Generating an Internal FM Signal Using VISA and C
In this example the VISA library is used to generate an internal FM signal at a carrier frequency of
900 MHz and a power level of
−15 dBm. The FM rate will be 5 kHz and the peak deviation will be
100 kHz. Launch Microsoft Visual C++ 6.0, add the required files, and enter the following code into
your .cpp source file. visaex6.cpp performs the following functions:
•
error checking
•
resets the signal generator
•
sets up the signal generator for FM path 2 and internal FM rate of 5 kHz
•
sets up FM path 2 deviation to 100 kHz
•
sets carrier frequency to 900 MHz
•
sets the power level to - 15 dBm
•
turns on frequency modulation and RF output
The following program example is available on the signal generator Documentation CD- ROM as
visaex6.cpp
.
//****************************************************************************************