I finally have my PC reading the wavelength or wavenumber from the Burleigh WA-20 wavemeter. Using a template I found online, I was quickly able to get the
device to respond to IDN? <CR> with an appropriate string. In fact, writing any string that begins with capital I and ends with <CR> but does not include <LF>
returns the sam thing. Likewise, and string that stats with capital “S” and ends in <CR> returns a status report, usually “VAC ERROR” in our case as we do not
have the unit pumped out.
After trying all the obvious things to prompt the wavelength with only “SYNTAX ERROR” as the only result, I wrote programs that tried all ACSII character strings
up to four characters with still only “SYNTAX ERROR” as the result. Finally, I tried simply reading without prompt and that worked! It appears that whenever on,
the unit is broadcasting a 13 character ASCII string that is of the form _XXXXXXXX_XX<CR> where _ is space and the first set of X’s is either the wavelength (in
microns) or the wavenumber (in inverse cm) including decimal point depending upon the front panel switch setting. I.e. it will read either 06000.00 or 1.666666
After the space is a two digit number that I have seen as 05, 15, and 25. Not sure what that means but I find documentation that a later Burleigh wavemeter
returned some error estimate code with the result so i guess that is what this is.
I attach a PDF of the Visual Basic program that I wrote. It needs two library modules. It includes two setup lines:
Call ibdev(0, 6, 0, T10s, &H140A, 10, intDevice) 'Initalize the IEEE device
Call ibconfig(intDevice, IbcREADDR, 1) 'Setup repeat Addressing
I got these from generic IEEE-488 Visual Basic 6 sample program and only changed the second argument to 6 as this is the IEEE
address of my wavemeter.