CubieBoard中文论坛

 找回密码
 立即注册
搜索
热搜: unable
查看: 7910|回复: 3

无意中发现了件神器

[复制链接]
发表于 2013-11-19 10:23:54 | 显示全部楼层 |阅读模式
http://gcd0318.wordpress.com/201 ... %E7%A5%9E%E5%99%A8/

2013年11月19日                                 无意中发现了件神器                         Filed under:  广告 —  gcd0318 @ 01:52
                        随便乱翻pipy,结果一不留神就看到了这个东西:
https://pypi.python.org/pypi/evdev/0.4.1
可以读取/dev/input/event*的数据哇,这不就是我一直想要的功能嘛,虽然我自己也实现了一些,但是远没这么丰富
其实就如很多网友所说的,类似功能有很多实现方式,作者自己也列举了一些,但是比较发现,只有这个项目还是活的,至少作者一周以前还更新过(https://github.com/gvalkov/python-evdev),而不像有些其他的,都起码一两年甚至更久没有动过了
我当场就用它写了这么一段,放在cb2上跑起来,热水器的遥控器果然可以用。至于功能……呵呵大家都懂的
PRESS = 1
RELEASE = 0
import os, time
from evdev import InputDevice, ecodes
dev = InputDevice(‘/dev/input/event0′)
dev.capabilities()
t = [0, 0]
for event in dev.read_loop():
#    print(event)
if(255 == event.code):
if(PRESS == event.value):
t[PRESS] = event.timestamp()
elif(RELEASE == event.value):
t[RELEASE] = event.timestamp()
if(0 < t[RELEASE]*t[PRESS]):
if(2 < t[RELEASE]-t[PRESS]):
os.system(‘sudo shutdown -P 0′)
else:
t = [0, 0]
这里我用到了时间、按键值、动作等信息,而evdev所提供的还远不止这些,具体可以参考http://pythonhosted.org/evdev/index.html更详细的文档
改天吧,有空了好好翻翻它的代码,看看能不能搞定空调的遥控器……估计会很让人吃惊,且看它能否处理带格式的数据包信号,哈


回复

使用道具 举报

发表于 2013-12-17 12:57:38 | 显示全部楼层
不管如何都要顶一下!
回复 支持 反对

使用道具 举报

发表于 2014-3-20 11:15:58 | 显示全部楼层
高手。。最好有详细教程。。
回复 支持 反对

使用道具 举报

发表于 2014-3-27 03:27:34 | 显示全部楼层
真神器,mark,等有时间弄弄
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|粤ICP备13051116号|cubie.cc---深刻的嵌入式技术讨论社区

GMT+8, 2024-11-25 23:55 , Processed in 0.019870 second(s), 15 queries .

Powered by Discuz! X3.4

© 2001-2012 Comsenz Inc. | Style by Coxxs

返回顶部