python 通过RS-232 + SCPI从Keithley 2015读取DCV
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python 通过RS-232 + SCPI从Keithley 2015读取DCV相关的知识,希望对你有一定的参考价值。
#!/usr/bin/env python3
import serial
import io
import time
def scpi_write(ser, s, term = '\r'):
ser.write(str.encode(s))
if term:
ser.write(b'\r')
ser.flush()
def scpi_read(ser):
buf = []
while True:
c = ser.read(1)
#print('read: ', repr(c))
if c == b'\r':
s = b''.join(buf).decode('ascii')
#print("returning", repr(s))
return s
else:
buf.append(c)
if __name__ == '__main__':
ser = serial.Serial('/dev/ttyUSB2', 19200, timeout=2)
print(ser)
while True:
print('canceling')
scpi_write(ser, '\x03', None)
resp = scpi_read(ser)
print(repr(resp))
if resp == 'CL\x11':
break
if resp == 'DCL\x11':
break
scpi_write(ser, ':SYSTem:VERSion?')
resp = scpi_read(ser)
print('response: {}'.format(repr(resp)))
scpi_write(ser, ':SENSe:VOLTage')
while True:
scpi_write(ser, ':SENSe:DATA?')
resp = scpi_read(ser)
now = time.time()
print('{:0.6f},{}'.format(now, resp))
以上是关于python 通过RS-232 + SCPI从Keithley 2015读取DCV的主要内容,如果未能解决你的问题,请参考以下文章
Python监听串口(RS-232)握手信号
“操作方法”:监听通过 RS232 到 USB 的数据 [关闭]
rs232转rs422电路原理图
如何将RS232接收到数据写入EXCEL
如何在测量过程中将数据存储在 Keithley2400 缓冲区中并通过 rs232 检索?
使用 Python 串行库处理从串口读取的原始数据?