Hirdetés
-
PROHARDVER!
Amit érdemes tudni a Raspberry Pi-kről:
A legelső változat 2012-ben jelent meg. Pici, olcsó és nagyon alacsony fogyasztású, hobby-célú kártyagép. Felépítése ARM alapú, nem PC-architektúra, hanem kb. egy régi mobilhoz hasonló. Nagyon sok mindenre használható! A Linux-nak és a magas eladási mennyiségnek köszönhetően jelentős fejlesztőtáborral rendelkezik.
Új hozzászólás Aktív témák
-
Oldmobil
aktív tag
válasz Hyperion #4067 üzenetére
Hahó!
Itt a gpio gombos xbmc vezérlős kód:#!/usr/bin/python2.7
import select, time, sys, os
pinek = [18, 8] # itt kell felsorolni a figyelendo gpio portok szamat
def xbmc_action(pin_id):
if pin_id==18:
os.system ("curl --data-binary \'{ \"jsonrpc\": \"2.0\", \"method\": \"Player.PlayPause\", \"params\": { \"playerid\": 0 }, \"id\":1}\' -H \'content-type: application/json;\' http://127.0.0.1:80/jsonrpc")
elif pin_id==8:
os.system ("curl --data-binary \'{ \"jsonrpc\": \"2.0\", \"method\": \"Player.GoTo\", \"params\": { \"playerid\": 0, \"to\": \"next\" }, \"id\":1}\' -H \'content-type: application/json;\' http://127.0.0.1:80/jsonrpc")
file = {}
filelist = {}
os.system("sudo chmod 666 /sys/class/gpio/export")
po = select.poll()
def write_once(path, value):
f = open(path, 'w')
f.write(value)
f.close()
return
for n in pinek:
os.system("echo " + str(n) + " >/sys/class/gpio/export")
os.system("sudo chmod 666 /sys/devices/virtual/gpio/gpio" + str(n) + "/direction")
os.system("sudo chmod 666 /sys/devices/virtual/gpio/gpio" + str(n) + "/edge")
write_once('/sys/class/gpio/gpio' + str(n) + '/direction', 'in')
write_once('/sys/class/gpio/gpio' + str(n) + '/edge', 'falling')
file[pinek.index(n)] = open('/sys/class/gpio/gpio' + str(n) + '/value', 'r')
po.register(file[pinek.index(n)], select.POLLPRI)
filelist[file[pinek.index(n)].fileno()] = n
t = time.time()
while 1:
events = po.poll()
for n in pinek:
file[pinek.index(n)].seek(2)
if (time.time() - t)>0.2:
xbmc_action(filelist[events[0][0]])
t = time.time()Az elején fel kell sorolni a használni kívánt gpio portok számait, az xbmc_action-ba pedig további elif-ekkel be kell írni, hogy melyik gombnyomásra mit szeretnénk, hogy csináljon. Nekem egyelőre a tesztkiépítésben csak két gombom van, ezért a két action. Fut root nélkül is. Az elején kell neki kb. 1-2 másodperc amíg elvégzi a gpio portok konfigurálását, utána már megy. Van a figyelő ciklusban egy szoftveres pergésmentesítés, ez nem kell ha hardveresen van megoldva kondival. Nem kezeli két gomb egyidejű lenyomását, és nincs felkészítve rövid és hosszú gombnyomások megkülönböztetésére. Ezek még terven vannak.
Ui: advancedektől elnézést ha ronda meg nem biztonságos a kód, kezdő vagyok Linuxban, Pythonban meg főleg
Új hozzászólás Aktív témák
- UItra 9 185H / 32GB DDR5 / Intel Arc GPU / 1TB SSD - Beelink mini PC
- i7 es Lenovó IdeaCentre pc
- AKCIÓ!!! GAMER PC SZUPER ÁRON: i5-12400F/14600KF - RTX 3060 Ti - Új 16/32GB DDR4 - GAR/SZÁMLA!!!
- JGamer PC V2 R7 1700 RX 5700 XT 16GB DDR4 512GB NVME 1TB HDD
- Gamer PC , i5 13400F , RTX 3070 , 32GB DDR5 , 512GB NVME , 1.2TB HDD
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest