如何调试此USB串行连接?

时间:2014-11-26 02:08:00

标签: python pyserial

我正试图通过串口与我的mac(10.7.5)上的斯坦福研究系统SR760频谱分析仪交谈,使用串口转USB适配器连接到我的笔记本电脑。我正在使用Prolific USB串行驱动程序。不知道哪个,但我最近安装了它。它可能是PL2303。

使用Python,这里有一些示例代码

import time
import serial

# configure the serial connections (the parameters differs on the device you
# are connecting to)
ser = serial.Serial(
    port='/dev/cu.PL2303-0000201A',
    baudrate=19200,
    parity=serial.PARITY_NONE,
    bytesize=serial.EIGHTBITS,
    stopbits=serial.STOPBITS_ONE,
    rtscts=0,
    dsrdtr=0,
    timeout=2,
)

if ser.isOpen():
    ser.flushInput()
    ser.flushOutput()

    print """Enter your commands below.\r\nInsert "exit" to leave the
            application."""

    while 1:
        # get keyboard input
        input = raw_input(">> ")
        if input == 'exit':
            ser.close()
            exit()
        else:
            ser.write(input + '\r')
            out = ''
            # let's wait one second before reading output (let's give device
            # time to answer)
            lines = 0
            while 1:
                time.sleep(1)
                out = out + ser.readline()
                lines = lines + 1
                if lines > 5:
                    break
            print "read data: " + out

使用SR760的手册,我发送它:* IDN ?,一个基本的"识别"命令。我期望在我的终端中弹出一些东西,什么都没有。它只是超时了。但是,如果我查看SR760上的发送队列,它将显示身份字符串,实际上会响应一堆不同的命令。我只是没有在我的电脑上得到任何东西,这就是问题所在。我知道它应该以这种方式工作,因为我的同事在他的电脑上编写了代码(Windows笔记本电脑)。

我怎么开始调试呢?我已经调整了超时,并确认sr760具有我期望的相同参数。

0 个答案:

没有答案