我希望使用X-CTU通过Zigbee / XBee控制脚本。我创建了一个名为zb_control.py
的脚本。现在我正在尝试启动并停止此脚本中的另一个脚本。脚本adxl345test.py
用于从我的Raspberry Pi上附加的加速度计收集数据。
zb_control.py
脚本背后的想法是我运行它然后如果我在X-CTU中输入“run”,脚本将开始运行adxl345test.py
并收集数据。
我已经弄清楚如何在脚本中启动脚本但是当我尝试再次停止adxl345test.py
时,我无法让它工作。
正如你所知,我尝试了不同的东西:
import serial, time, sys, os, subprocess
from subprocess import check_call
from subprocess import call
while True:
ser=serial.Serial('/dev/ttyUSB0',9600,timeout=2)
inc=ser.readline().strip()
if inc=='run':
print("---------------")
print("Collecting data”)
print("---------------")
call(["python", "adxl345test.py"])
elif inc=='stop':
# check_call(["pkill", "-9", "-f", adxl345test.py])
# serial.write('\x03')
# os.system("pkill –f adxl345test.py")
# call(["killall", "adxl345test.py"])
print("-----------------------")
print("Script has been stopped")
print("-----------------------")
有关如何阻止adxl345test.py
脚本运行然后仍然准备好zb_control.py
准备从X-CTU接收新输入的任何建议?