Agilent Technologies 8163A Programming Manual page 145

Lightwave multimeter lightwave measurement system lightwave multichannel system
Hide thumbs Also See for 8163A:
Table of Contents

Advertisement

How to Co-ordinate Two Modules
checkError(vi,errStatus);
/* set the attenuation to zero for maximum power */
errStatus = viPrintf(vi,"SOURCE2:CHAN1:POW:ATT 0.0\n");
checkError(vi,errStatus);
/* set the reference mode to the internal one,
which is now the last displayed value */
errStatus = viPrintf(vi,"SENS1:CHAN1:POW:REF:STATE:RATIO TOREF,0\n");
checkError(vi,errStatus);
/* set reference measuremant state to absolute units */
errStatus = viPrintf(vi,"SENS1:CHAN1:POW:REF:STAT 1\n");
checkError(vi,errStatus);
/* turn laser on */
errStatus = viPrintf(vi,"SOURCE2:CHAN1:POW:STATE 1\n");
checkError(vi,errStatus);
/*ask for command completion */
do
{
errStatus = viQueryf(vi,"*OPC?\n","%d",&cmdDone);
checkError(vi,errStatus);
} while (!cmdDone);
/* set the power meter reference to the displayed value (display to reference) */
errStatus = viPrintf(vi,"SENS1:CHAN1:POW:REF:DISP\n");
checkError(vi,errStatus);
/*
read 30 values and display the result; after ten measurements
the source output will be halved by making use of the attenuation;
after an other ten measurements the source output will be halved
a second time;
because of the display to reference command and using the
reference, the value printed should be more or less equal to the
adjusted source attenuation */
for (i = 1; i <= 30; i++)
{
errStatus = viQueryf(vi,"READ1:CHAN1:POW?\n","%s",replyBuf);
checkError(vi,errStatus);
if(errStatus ==VI_SUCCESS)printf("power #%02d:%s\n",i,replyBuf);
if(i == 10)
{
/* reduce the output power for 3.0 dB */
Agilent 8163A Lightwave Multimeter, Agilent 8164A Lightwave Measurement System, & Agilent 8166A Lightwave Multichannel
System, Third Edition
VISA Programming Examples
145

Advertisement

Table of Contents
loading

This manual is also suitable for:

8164a8166a

Table of Contents