首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在xbmc中从python触发按键

在xbmc中从python触发按键
EN

Stack Overflow用户
提问于 2014-05-07 18:53:04
回答 1查看 938关注 0票数 0

我正在尝试触发返回键,或者从python按下鼠标左键来影响xbmc (raspbmc)。我以前用uinput在raspbian中这样做过,但这似乎不适用于raspbmc。我也尝试过使用adafruit的https://learn.adafruit.com/retro-gaming-with-raspberry-pi/buttons脚本,它也为我在raspbian上工作过。

谢谢你的帮助,谢谢汤姆

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-05-07 20:09:41

在尝试了所有的解决方案之后,使用这个python json模块就成功了!不是按下键,而是像控制xbmc一样控制xbmc。

https://github.com/jcsaaddupuy/python-xbmc

这是我修改的代码,用于获取GPIO输入以触发XBMC中的事件。

代码语言:javascript
复制
import RPi.GPIO as GPIO  
from xbmcjson import XBMC
xbmc = XBMC("http://127.0.0.1/jsonrpc")
GPIO.setmode(GPIO.BCM)

GPIO.setup(23, GPIO.IN, pull_up_down=GPIO.PUD_UP)
GPIO.setup(24, GPIO.IN, pull_up_down=GPIO.PUD_DOWN)  

def my_callback2(channel):  
    global XBMC
    xbmc.Input.Select()

GPIO.add_event_detect(23, GPIO.FALLING, callback=my_callback2, bouncetime=300)  


if __name__ == "__main__":
    try:  
        print "Waiting for rising edge on port 24"  
        GPIO.wait_for_edge(24, GPIO.RISING)  
        print "Rising edge detected on port 24. Here endeth the third lesson."  

    except KeyboardInterrupt:  
        GPIO.cleanup()       # clean up GPIO on CTRL+C exit  
    GPIO.cleanup()           # clean up GPIO on normal exit try:  
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23525983

复制
相关文章

相似问题

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