Author Topic: atmega-gpib: yet another DIY GPIB-to-USB project  (Read 10291 times)

0 Members and 1 Guest are viewing this topic.

Offline cellularmitosisTopic starter

  • Supporter
  • ****
  • Posts: 1111
  • Country: us
Re: atmega-gpib: yet another DIY GPIB-to-USB project
« Reply #25 on: September 22, 2017, 02:35:20 pm »
Thanks guys, I'll try to reproduce the problem on a breadboard, then throw a logic analyzer at it.
LTZs: KX FX MX CX PX Frank A9 QX
 

Offline vindoline

  • Supporter
  • ****
  • Posts: 324
  • Country: us
Re: atmega-gpib: yet another DIY GPIB-to-USB project
« Reply #26 on: October 19, 2017, 01:57:26 am »
Cellularmitosis, has there been any progress on the GPIB project as of late? I'm hoping to be able to put a bit of effort into it and I have a question about your ver 2 pcb. What is the purpose of the "error" led and the configuration jumper? I can't find any reference to these in the code. I may layout a new pcb for this and I'd like it to be compatible with your programming efforts. Thanks.
 

Offline bitseeker

  • Super Contributor
  • ***
  • Posts: 9057
  • Country: us
  • Lots of engineer-tweakable parts inside!
Re: atmega-gpib: yet another DIY GPIB-to-USB project
« Reply #27 on: October 19, 2017, 02:21:00 am »
Here's some GPIB code that I wrote for a Mega Donkey LCD touchscreen micro controller board (MEGA128/MEGA2561). https://github.com/mega-donkey

It has a Prologix emulator in it.   And, despite some of the comments, it does support DEVICE mode (at least for the device I was emulating at the time).

That's cool, texaspyro. Does that mean that one could use this as a base for making an adapter to add GPIB (e.g., reading values) to pre-GPIB era hardware?
TEA is the way. | TEA Time channel
 

Offline texaspyro

  • Super Contributor
  • ***
  • Posts: 1407
Re: atmega-gpib: yet another DIY GPIB-to-USB project
« Reply #28 on: October 19, 2017, 02:39:26 am »
Here's some GPIB code that I wrote for a Mega Donkey LCD touchscreen micro controller board (MEGA128/MEGA2561). https://github.com/mega-donkey

It has a Prologix emulator in it.   And, despite some of the comments, it does support DEVICE mode (at least for the device I was emulating at the time).

That's cool, texaspyro. Does that mean that one could use this as a base for making an adapter to add GPIB (e.g., reading values) to pre-GPIB era hardware?

It should be able to do so.   I added DEVICE support to do one thing that needed to be done one dark and stormy night in the before times.   It did what I needed it to do, but have never really banged on it much.

 

Offline bitseeker

  • Super Contributor
  • ***
  • Posts: 9057
  • Country: us
  • Lots of engineer-tweakable parts inside!
Re: atmega-gpib: yet another DIY GPIB-to-USB project
« Reply #29 on: October 19, 2017, 04:05:30 am »
Nifty. I'll have to explore that some more when I refurbish my HP 5216A counter. It has a card edge "printer" port on the back.
TEA is the way. | TEA Time channel
 

Offline View[+]Finder

  • Supporter
  • ****
  • Posts: 186
  • Country: us
    • Sparks! A Learning Place for Curious Minds
Re: atmega-gpib: yet another DIY GPIB-to-USB project
« Reply #30 on: November 15, 2017, 10:20:38 pm »
We can also have a bit of fun with the "D" command

Thanks for your research! It got me headed in the right direction for my 196 GPIB efforts. I'm using Keysight's latest Connection Expert, Python 2.7.14 and PyVISA 1.8, so YMMV. Here a couple of little programs:

#Run autoCal
import sys
import time
import visa
visa = visa.ResourceManager()
print(visa.list_resources())
DMM196 = visa.open_resource('GPIB0::8::INSTR',send_end=True, read_termination= '\r\n', write_termination='\r\n')
DMM196.write("DX")
DMM196.write("DAUTO CALX")
DMM196.write("A1X")
time.sleep(10) # 1 sec increments
DMM196.write("DX")
print 'done'

#Read some measurements to a file
import sys
import time
import visa
visa = visa.ResourceManager()
print(visa.list_resources())
DMM196 = visa.open_resource('GPIB0::8::INSTR',send_end=True, read_termination= '\r\n', write_termination='\r\n')
DMM196.write("DX")
DMM196.write("F0R3S3P60X")
DMM196.write("DF0R3S3P60X")
print ''
data = open('dataDMM196.csv','w')
print (data)
for x in range(0, 200):
    print (DMM196.read()[4:17])
    data.write (DMM196.read()[4:16] +'\n')
    time.sleep(1) # 1 sec increments
data.close()

The VISA library (Keysight version at least) makes the communication easier over GPIB, so I don't know how it would translate into Arduino, etc.
 
The following users thanked this post: bitseeker


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf