首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在现有网站中使用WebIOPi

如何在现有网站中使用WebIOPi
EN

Stack Overflow用户
提问于 2015-03-01 12:27:43
回答 1查看 1.2K关注 0票数 1

我正在尝试使用WebIOPi,但我完全无法让它与我的项目一起工作。

背景:我正在使用Raspberry Pi B+运行Wheezy。我正在开发一个基于web的应用程序,它只能在本地访问。我在/var/www中有一堆运行在Apache上的php文件。现在我需要让我的硬币接受者参与这个项目。硬币接收器http://www.adafruit.com/products/787发送单个脉冲(我只需要一枚硬币)。我首先用python脚本使用中断来尝试硬币接受器,它工作得很好。

代码语言:javascript
复制
GPIO.setup(PIN_COIN_INTERRUPT,GPIO.IN)
GPIO.add_event_detect(PIN_COIN_INTERRUPT,GPIO.FALLING,callback=coinEventHandler)

但是现在我需要能够捕获这些脉冲并在php页面上显示它们,更新每个硬币插入的数量。我已经学习WebIOPi几个小时了,但我只能找到有关读取引脚状态的信息,而不是监听干扰。谁能给我指明正确的方向吗?

任何帮助都将不胜感激。谢谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-03-01 13:25:30

因此,您似乎有两个问题: 1.如何在服务器上检测新的硬币事件;2.如何将其推送到客户端浏览器。

我一点都不知道,所以我不能说没有办法解决这两个问题,而是作为一种选择:

对于第1部分:您有一个python程序,您说它很有用;我建议将其作为后台服务运行,并让它做一些简单的事情,比如将铸币的最新值写入文件:

代码语言:javascript
复制
GPIO.setup(PIN_COIN_INTERRUPT,GPIO.IN)
GPIO.add_event_detect(PIN_COIN_INTERRUPT,GPIO.FALLING,callback=coinEventHandler)
def coinEvenHandler(*arguments):
 try:
   f = open("coin.txt","rt")
   cnt = int(f.read())
   f.close()
 except: # handle file doesn't exist and file doesn't contain an int
   cnt = 0
 f = open("coin.txt","wt")
 f.write(str(cnt))
 f.close()

对于第2: 1部分,创建一个返回"coin.txt“2值的页面。使用Ajax (例如jquery)从客户端页面轮询此值。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28793522

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档