Agilent Technologies ESA-E Series Programmer's Manual page 149

Esa spectrum analyzers
Hide thumbs Also See for ESA-E Series:
Table of Contents

Advertisement

Programming Example s
Making Faster Measurements (multiple measurements)
#include <stdio .h>
#include <stdlib .h>
#include <string .h>
#include <math .h>
#include <sys\timeb .h>
#include "visa .h "
#define NUM TRACES 10 0
#define NUM POINTS 40 1
#define CENTER 5 0
#define SPAN 2 0
#define RBW 30 0
define DISPLAY 0
/* ESA display enable, disable for speed
*/
#define DATA LENGTH
4 /* number of data bytes in one trace poin t
#define MAX POINTS 8192
/* maximum number of points/trace in ESA
int iNumTraces = NUM_TRACES,/* number of traces to average
iRbw = RBW,
/* resolution bandwidth
iNumPoints = NUM POINTS,/* actual number of trace points per swee p
iSpan = SPAN,
/* Analyzer Frequency Span in MHz
iCenter = CENTER ;
/* Analyzer Center frequency in MH z
unsigned long lRetCount ; /* number of bytes transferred in one trace record * /
double dDelta, dTimePer, dPower ;
struct timeb start time, stop time, elapsed time ;
char cCommand[100] ;
char cBuffer[100] ;
double dPwrAvgArray[MAXPOINTS] ;
ViUInt32 iHeaderLength, /* header is "#nyyy . . ." n is number of chars in yyy,* /
/* yyy is the total data length in bytes
*/
iArrayLength,
/* iArrayLength is number of bytes of data
* /
iTermLength = 1, /* the response message includes a LF character
*/
iBlockSize,
/* number of bytes expected in one trace definite block* /
iTotalRetCount ; /* total number of bytes actually transferred
* /
ViSession defaultRM, viESA ;
/* reserve space for the header, data and terminator
/* number of traces to average
/* requested number of points/trac e
/* center frequency in MHz, an intege r
/* span frequency in MHz, an integer
/* resolution BW in kHz, an integer
*/
Chapter 3
3-89

Advertisement

Table of Contents
loading

Table of Contents