I still think it would be a useful project for
somebody to make a
HP-drive-emulator. Mot using a PC, but using a microntroller, HPIB
buffers, the minimal (if any) logic you need to handle HPIB, and a CF
card. Make it 'open( and I'll build several...
What does a HPIB buffer contains that cannot be reproduced with
digital/analog circuitry? :oO
About two years ago, I did some work on such a project. I built a very crude
serial -> HPIB "controller" using an AVR microprocessor and a couple of
interface chips. I did not use a HPIB 9914 or other controller. All the
logic was done in software. I bitbanged everything and it sorta worked. :-)
I was able perform simple HPIB operations without too much trouble. One of
the things I did was too interface a HPIB multimeter to my PC using the
homemade controller as an interface.
Sorry but, I have long since lost the work that I had done.
It took some searching but, I did find the correct interface (line driver)
chips. The device ids escape me but, they might have been something like
75160's. They are just simple line buffers.
The biggest issue that I ran into was a timing issue. When a device (talker)
sends a stream of data it just pumps out the data. The listener is supposed
to use the control lines (DAV, NRFD, etc) to pace the data. Without pacing
or some kind of buffer, the talker will send data faster than a bit-banged
micro can process it. My microprocessor was not able to keep up with some
devices..
For the multimeter this was not a problem. I attached a HPIB bus analyzer in
parallel with the controller and meter and used the analyzer in "slow" mode
to pace the data. It worked just fine with the meter. I tried it with a tape
drive but it didn't work. The data transfer was too slow and it kept timing
out.
To make this work correctly, I think you would need some hardware "glue"
that would detect each data word and then immediately assert a NRFD. A few
microseconds later it would release the line and allow the next data word to
be transmitted. This hold-off would need to be just long enough to allow the
micro to process the data. Something as simple as a one-shot might do the
trick.
See yas, SteveRob