Python脚本在浏览网页时点亮树莓Pi上的led?

2024-09-29 17:47:37 发布

您现在位置:Python中文网/ 问答频道 /正文

我对我在这个主题上写的东西很纠结。情况是这样的:

我在地址http://myrpi.com/上有一个lighttpd的RPi 我有另一个网址是http://othersite.com/

在其他站点的索引(http:\\othersite.com\index.html)中,我想嵌入一个python脚本,它提供来自myrpi.com网站(<img src="http://myrpi.com/pixel.py">

在这个脚本中,除了读取一个png文件并将其内部内容打印回请求程序之外,我希望它运行一些shell命令,这些命令将通过RPi gpio点亮一个led。在

到目前为止,我是在其他人的帮助下完成这个脚本的,但是它仍然不起作用。服务图像部分正常工作,led不工作。即使命令行中的相同命令工作正常:

#!/usr/bin/env python

import subprocess
import time
import cgi
import cgitb


cgitb.enable()

subprocess.check_call(['/home/pi/scripts/wiringPi/gpio/gpio' ,'write', '7', '1'])


print "Content-type: image/jpeg\n"


f=open("/var/www/cgi-bin/1.png")
data=f.read()
f.close()
print data


time.sleep(0.5)

subprocess.check_call(['/home/pi/scripts/wiringPi/gpio/gpio', 'write', '7', '0'])

但是,使用subprocess.check_call我得到了一个异常(正常的subprocess.call-提供图像但没有led):http://i.imgur.com/wJR17tB.png

有点迷路了。有什么不同的方法吗?或者如何解决这个问题?在

谢谢你!在

更新:

如果我在命令行中运行:

$ sudo /home/pi/scripts/wiringPi/gpio/gpio write 7 1

它起作用了。没有sudo-上面写着:

/home/pi/scripts/wiringPi/gpio/gpio: Must be root to run. Program should be suid root. This is an error.

如果我使用suid(chmod u+s)gpio,那么即使使用sudo,它也不能工作。在


Tags: import命令脚本comhttphomeledgpio

热门问题