[time-nuts] GPIB help

John Miles jmiles at pop.net
Tue Nov 24 04:21:37 UTC 2009


> Hello Time-nuts,

> Now the tricky part.  I would like to write a program that collects TI
> values to feed to TVB's ADEV program.  First I should ask - is
> there one out
> there that someone is willing to share?

I have been working on one -- it's still under construction but reasonably
useful as-is.  It's a nice multithreaded app that does almost everything
asynchronously, so you can continue working with it during acquisitions,
file loading, and such.  Install the package at
http://www.ke5fx.com/gpib/setup.exe (4 MB), run the time-interval analysis
app, select Acquire->HP 5370A/B... and read the help text that comes up when
you click on the various dialog fields.  That's the only documentation there
is right now, unless you count the source code. :-P

You can load some sample data sets from the c:\program files\ke5fx\gpib\time
interval plots directory to get a feel for what to expect from your own
acquisitions.

By default the program expects you to have set up the 5370 in advance to
measure a 1-PPS signal on the START channel against a 10 MHz signal on the
STOP channel.  Basically the counter should be updating itself at one
reading per second, displaying something between 0 and 100 ns each time, at
the time you start acquisition.

Phase wraparound is handled, but the reference and DUT signal should not be
drifting apart so rapidly that the readings look random.  If they do, then
you can fall back to measuring two 1-pps sources against each other.

> But,
> SYS "LoadLibrary", "GPIB-32.DLL" TO gpib%
> SYS "GetProcessAddress", gpib%, "iberr" TO iberr%
> does not seem to return the address of the iberr global variable.

The iberr variable may be thread-local rather than truly global.  I'm not at
all familiar with the NI488 API under BASIC but perhaps some example
programs can be found on ni.com?

Either way I'd recommend Ulrich Bangert's EZGPIB scripting tool, rather than
starting from scratch with the BASIC language bindings.  It'll help you
focus on the job rather than the programming details.

-- john, KE5FX





More information about the time-nuts mailing list