我显然无意中更改了某些设置,因此发送到我的设备的所有包含问号的SCPI命令都会抛出-110(命令标题错误),如下所示:
-110命令标头错误 - 表示命令中存在语法错误。在这种情况下,SENSE和VOLT之间有两个冒号。示例“:SENSE :: VOLT:RANGE 10”
所有其他命令(当然正确使用)工作正常。 由于这个错误,我的猜测是我的计算机发送非字母的方式有问题吗?
注意:我正在使用#echo "READ?" > /dev/ttyS0
发送命令。我仍然使用cat /dev/ttyS0
收到回复,但我收到了哔哔声和错误。 (我的C代码中出现相同的错误)
答案 0 :(得分:0)
刚刚找到了解决方案!
看来,不知怎的(我昨天在Windows上运行我的linux VM的蓝屏),ttyS0
的设置被重置,以便有软件流控制来发送数据但不接收。因此,我的传输无法使用无流量控制或xon_xoff。
要解决此问题,我在外部串行设备上没有设置流量控制,并在linux机器上运行stty -F /dev/ttyS0 -ixon
。
或者,我可以将串行设备上的流量控制设置为xon_xoff,并在linux框上运行stty -F /dev/ttyS0 ixoff
。