我正在使用 python 的 pySerial 库与机器通信(如果你必须知道,月球光度计)。这台机器内置了一些场景,我可以通过 com/serial 端口发送与这些场景相对应的特定十六进制值来调用这些场景。例如,以下代码适用于机器中的“Park secnario”。
s.write('\x11') #s is my serial object, '\x11' is the command for the park senario
s.write('\x12') #'\x12' is the command for the TrackSun scenario
上面的代码按预期工作,机器响应这些命令。但是,Goto 场景中有一个 bult,它由命令 '\x02' 激活。我的问题是 goto 命令也以这种格式 GoTo 将水平和垂直角度作为参数,其中 xxxx 和 yyyy 是两个角度。我如何在我的 s.write() 命令中传递这些参数。我试过: s.write('\x02 xxxx yyyy') 似乎不起作用。我在传递参数时做错了吗?当我使用带有以下代码的超级终端(以十六进制模式)时,该命令可以正常工作:
8/1/2012 11:37:36.048 [TX] - 02 30 34 3B 30 3F 3A 3D 3B 03
8/1/2012 11:37:51.166 [RX] - 01
编辑:这是使用超级终端发送的“Park Scenario”命令的示例,以防万一。
8/1/2012 12:14:56.649 [TX] - 11
8/1/2012 12:15:07.962 [RX] - 01