Programming instructions
Programming Examples
GPIB Programming Examples
Chapter 2 51
Generating an Internal AC-Coupled FM Signal Using VISA and C
In this example the VISA library is used to generate an ac-coupled 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.
The following program example is available on the ESG Documentation CD-ROM as
visaex6.cpp.
//****************************************************************************************
// PROGRAM FILE NAME:visaex6.cpp
//
// PROGRAM DESCRIPION:This example generates an AC-coupled internal FM signal at a 900
// MHz carrier frequency and a power level of -15 dBm. The FM rate is 5 kHz and the peak
// deviation 100 kHz
//
//****************************************************************************************
#include <visa.h>
#include "StdAfx.h"
#include <iostream>
#include <stdlib.h>
#include <conio.h>
void main ()
{
ViSession defaultRM, vi; // Declares variables of type ViSession
// for instrument communication
ViStatus viStatus = 0; // Declares a variable of type ViStatus
// for GPIB verifications
viStatus=viOpenDefaultRM(&defaultRM); // Initialize VISA session
// open session to gpib device at address 19
viStatus=viOpen(defaultRM, "GPIB::19::INSTR", VI_NULL, VI_NULL, &vi);
if(viStatus){ // If problems, then prompt user
printf("Could not open ViSession!\n");
printf("Check instruments and connections\n");
printf("\n");
exit(0);}
printf("Example program to set up the signal generator\n");
printf("for an AC-coupled FM signal\n");
printf("\n");
printf("Press any key to continue\n");
getch();
viClear(vi); // Clears the signal generator
viPrintf(vi, "*RST\n"); // Resets the signal generator
viPrintf(vi, "FM2:INT:FREQ 5 kHz\n"); // Sets EXT 2 source for FM
viPrintf(vi, "FM2:DEV 100 kHz\n"); // Sets FM path 2 coupling to AC