1 #!/usr/bin/python |
|
2 import sys |
|
3 import os |
|
4 import signal |
|
5 import time |
|
6 |
|
7 try: |
|
8 from pygpibtoolkit.gpibcontroller import GPIBController |
|
9 except ImportError: |
|
10 sys.path.append(os.path.join(os.path.dirname(os.path.abspath(__file__)), "..")) |
|
11 from pygpibtoolkit.gpibcontroller import GPIBController |
|
12 import pygpibtoolkit.HP3562A |
|
13 from pygpibtoolkit.prologix import GPIB |
|
14 def main(): |
|
15 import optparse |
|
16 opt = optparse.OptionParser("A simple tool for detecting connected GPIB devices") |
|
17 opt.add_option('-d', '--device', default="/dev/ttyUSB0", |
|
18 dest="device", |
|
19 help="Device of connected Prologix GPIB bundle [/dev/ttyUSB0]",) |
|
20 options, argv = opt.parse_args(sys.argv) |
|
21 |
|
22 print "Detecting GPIB devices on the bus. Please wait until completion." |
|
23 cnx = GPIB(device=options.device) |
|
24 c = GPIBController(cnx) |
|
25 |
|
26 signal.signal(signal.SIGINT, c.stop) |
|
27 signal.signal(signal.SIGQUIT, c.stop) |
|
28 |
|
29 time.sleep(1) |
|
30 devices = c.detect_devices() |
|
31 c.stop() |
|
32 |
|
33 print "GPIB devices:" |
|
34 for k in sorted(devices.keys()): |
|
35 print "%-3d: %s"%(k, devices[k]) |
|
36 return c, devices |
|
37 if __name__ == "__main__": |
|
38 c, dev = main() |
|
39 |
|