我已经创建了一个小程序,允许我通过Python控制GPIO引脚。一切进展顺利。当我尝试从PHP调用这个python脚本时,问题就出现了。它似乎失去了控制GPIO引脚的功能,并且在没有任何错误的情况下无声地崩溃。你知道吗
存在以下文件:你知道吗存款准备金率-松开烫发的主文件
你知道吗配置创建者.py-生成配置.ini把那个文件归档
你知道吗存款准备金率文件利用
你知道吗配置.ini-已生成的配置
你知道吗安装.py-安装apache2和php并生成链接到存款准备金率文件。你知道吗
你知道吗索引.php-只有一个窗体的简单页面
你知道吗控件.php-文件使用GET来检索变量并生成执行命令。你知道吗
当运行python3 RRR.py -c ON -r 5的示例命令时,它会正确地控制第5个设备映射的管脚。你知道吗
我可以通过放置以下URL获得相同的命令->;192.168.x.x/control.php?com=ON&dev=5
PHP echo向我显示$commandvar包含以下python3 RRR.py -c ON -r 5
我使用PHP执行这个命令,使用以下命令->;$output = shell_exec($command);
然后使用->;echo "
$output"查看输出
我得到以下输出:Sending command (ON) to device (5)
Performing operation. This will take 1 second(s)...
Please wait...
这是指从中的以下行控制GPIO引脚存款准备金率文件:GPIO.setup(devPin, GPIO.OUT)
GPIO.output(devPin, GPIO.LOW)
time.sleep(sleepTime)
GPIO.output(devPin, GPIO.HIGH)
其中devPin是从config.ini算出的GPIO管脚号。别担心这部分,它很好用。从PHP运行时,pin号仍然正确。GPIO命令根本不起作用。你知道吗
这使我相信问题完全在于文件的第一行,但是不会产生错误。第一行是:import RPi.GPIO as GPIO
可能PHP的shell_exec没有正确的烫发来使用GPi.GPIO文件python模块?有人知道我该怎么解决这个问题吗?如有任何建议,我将不胜感激。我真的很想让这个项目工作:)
太长了,读不下去了,DR:从命令行中的所有工作都很好,但是当PHP调用了完全相同的命令时,所有的操作都中断了。你知道吗