beautypg.com

Agilent Technologies N5183A MXG User Manual

Page 106

background image

96

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

Programming Examples
GPIB Programming Interface Examples

printf("Press Enter to continue\n");

printf("\n");

getch();

viPrintf(vi, "*CLS\n");// Clears signal generator status byte

viPrintf(vi, "STAT:OPER:NTR 8\n");// Sets the Operation Status Group // Negative Transition Filter to
indicate a // negative transition in Bit 3 (Sweeping)

// which will set a corresponding event in // the Operation Event Register. This occurs // at the end
of a sweep.

viPrintf(vi, "STAT:OPER:PTR 0\n");// Sets the Operation Status Group // Positive Transition Filter so
that no

// positive transition on Bit 3 affects the // Operation Event Register. The positive // transition
occurs at the start of a sweep.

viPrintf(vi, "STAT:OPER:ENAB 8\n");// Enables Operation Status Event Bit 3 // to report the event to
Status Byte // Register Summary Bit 7.

viPrintf(vi, "*SRE 128\n");// Enables Status Byte Register Summary Bit 7

// The next line of code indicates the // function to call on an event

viStatus = viInstallHandler(vi, VI_EVENT_SERVICE_REQ, interupt, rdBuffer);

// The next line of code enables the // detection of an event

viStatus = viEnableEvent(vi, VI_EVENT_SERVICE_REQ, VI_HNDLR, VI_NULL);

viPrintf(vi, "FREQ:MODE LIST\n");// Sets frequency mode to list

viPrintf(vi, "LIST:TYPE STEP\n");// Sets sweep to step

viPrintf(vi, "LIST:TRIG:SOUR IMM\n");// Immediately trigger the sweep

viPrintf(vi, "LIST:MODE AUTO\n");// Sets mode for the list sweep

viPrintf(vi, "FREQ:STAR 40 MHZ\n"); // Start frequency set to 40 MHz

viPrintf(vi, "FREQ:STOP 900 MHZ\n");// Stop frequency set to 900 MHz

viPrintf(vi, "SWE:POIN 25\n");// Set number of points for the step sweep

viPrintf(vi, "SWE:DWEL .5 S\n");// Allow .5 sec dwell at each point

viPrintf(vi, "INIT:CONT OFF\n");// Set up for single sweep

viPrintf(vi, "TRIG:SOUR IMM\n");// Triggers the sweep

viPrintf(vi, "INIT\n"); // Takes a single sweep

printf("\n");

// While the instrument is sweeping have the

// program busy with printing to the display.

// The Sleep function, defined in the header

// file windows.h, will pause the program

// operation for .5 seconds

while (sweep==1){

printf("*");

Sleep(500);}

printf("\n");

// The following lines of code will stop the

// events and close down the session

This manual is related to the following products: