我正在尝试从我的beaglebone black上的PHP页面运行代码:
import Adafruit_BBIO.PWM as PWM
red = "P8_13"
green = "P8_19"
blue = "P9_14"
PWM.start(red, 0)
PWM.start(blue, 0)
PWM.start(green, 0)
PWM.set_duty_cycle(red, 100)
PWM.set_duty_cycle(green, 0)
PWM.set_duty_cycle(blue, 0)
此代码只是将我的RGB LED变为红色。
我的PHP页面如下:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>RGB LED</title>
</head>
<body>
Testing led.py execution...<br>
<?php
exec( "python led.py" );
?>
<br>End of execution!<br>
</body>
</html>
我正在使用Apache2和PHP5。
代码与PHP页面(“/ var / www”)的路径相同。我已经尝试过exec,shell_exec和系统命令来执行脚本。 LED不会变为红色。该代码已获得777许可。我真的不知道为什么它不起作用。有没有人有任何想法?
谢谢。
答案 0 :(得分:0)
我真的不想深入解决这个问题。但是我写这个是因为我曾经玩过BBB并且在运行python脚本时遇到了一个有趣的权限错误。我在没有sudo
的情况下运行命令。请试一试。我不知道为什么它应该有sudo
但是它有效!
答案 1 :(得分:0)
问题解决了。 谢谢@furas。 我将“www-data ALL =(root)NOPASSWD:/ usr / bin / python”添加到sudoers文件中,并将exec(“python led.py”)更改为exec(“sudo python led.py”)。