abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 05:11 | IT novinky

    Home Assistant včera představil svůj nejnovější oficiální hardware: Home Assistant Connect ZBT-2 pro připojení zařízení na sítích Zigbee nebo Thread.

    Ladislav Hagara | Komentářů: 2
    včera 19:44 | Nová verze

    Byla vydána verze 9.1 open source virtualizační platformy Proxmox VE (Proxmox Virtual Environment, Wikipedie) založené na Debianu. Přehled novinek v poznámkách k vydání a informačním videu.

    Ladislav Hagara | Komentářů: 1
    včera 17:44 | IT novinky

    Byl aktualizován seznam 500 nejvýkonnějších superpočítačů na světě TOP500. Nejvýkonnějším superpočítačem zůstává El Capitan od HPE (Cray) s výkonem 1,809 exaFLOPS. Druhý Frontier má výkon 1,353 exaFLOPS. Třetí Aurora má výkon 1,012 exaFLOPS. Nejvýkonnější superpočítač v Evropě JUPITER Booster s výkonem 1,000 exaFLOPS je na čtvrtém místě. Nejvýkonnější český superpočítač C24 klesl na 192. místo. Karolina, GPU partition klesla na 224. místo a Karolina, CPU partition na 450. místo. Další přehledy a statistiky na stránkách projektu.

    Ladislav Hagara | Komentářů: 2
    včera 17:22 | IT novinky

    Microsoft představil Azure Cobalt 200, tj. svůj vlastní SoC (System-on-Chip) postavený na ARM a optimalizovaný pro cloud.

    Ladislav Hagara | Komentářů: 0
    včera 12:00 | IT novinky

    Co způsobilo včerejší nejhorší výpadek Cloudflare od roku 2019? Nebyl to kybernetický útok. Vše začalo změnou oprávnění v jednom z databázových systémů a pokračovalo vygenerováním problém způsobujícího konfiguračního souboru a jeho distribucí na všechny počítače Cloudflare. Podrobně v příspěvku na blogu Cloudflare.

    Ladislav Hagara | Komentářů: 3
    18.11. 23:44 | Nová verze

    Byla vydána (Mastodon, 𝕏) první RC verze GIMPu 3.2. Přehled novinek v oznámení o vydání. Podrobně v souboru NEWS na GitLabu.

    Ladislav Hagara | Komentářů: 0
    18.11. 23:22 | Komunita

    Eugen Rochko, zakladatel Mastodonu, tj. sociální sítě, která není na prodej, oznámil, že po téměř 10 letech odstupuje z pozice CEO a převádí vlastnictví ochranné známky a dalších aktiv na neziskovou organizaci Mastodon.

    Ladislav Hagara | Komentářů: 0
    18.11. 19:44 | Nová verze

    Byla vydána nová major verze 5.0 svobodného 3D softwaru Blender. Přehled novinek i s náhledy a videi v obsáhlých poznámkách k vydání. Videopředstavení na YouTube.

    Ladislav Hagara | Komentářů: 0
    18.11. 14:00 | Upozornění

    Cloudflare, tj. společnost poskytující "cloudové služby, které zajišťují bezpečnost, výkon a spolehlivost internetových aplikací", má výpadek.

    Ladislav Hagara | Komentářů: 13
    18.11. 04:22 | Pozvánky

    Letos se uskuteční již 11. ročník soutěže v programování Kasiopea. Tato soutěž, (primárně) pro středoškoláky, nabízí skvělou příležitost procvičit logické myšlení a dozvědět se něco nového ze světa algoritmů – a to nejen pro zkušené programátory, ale i pro úplné začátečníky. Domácí kolo proběhne online od 22. 11. do 7. 12. 2025 a skládá se z 9 zajímavých úloh různé obtížnosti. Na výběru programovacího jazyka přitom nezáleží – úlohy jsou

    … více »
    SoutezKasiopea | Komentářů: 1
    Jaké řešení používáte k vývoji / práci?
     (35%)
     (46%)
     (19%)
     (18%)
     (23%)
     (15%)
     (23%)
     (15%)
     (17%)
    Celkem 371 hlasů
     Komentářů: 17, poslední včera 21:57
    Rozcestník

    Dotaz: Ovládání GPIO raspberry 3 B+ v Pythonu

    11.11.2021 23:11 Jan
    Ovládání GPIO raspberry 3 B+ v Pythonu
    Přečteno: 704×
    Zdravím, mám takový problém, řeším ovládání běhu programu pomocí vstupů GPIO. Pokud napíšu program takto:
    import RPi.GPIO as GPIO
    
    pin_start = 9
    pin_skok = 7
    pin_beh = 8
    
    def prg_start(pin_start):
        print("prg_start")
        
    def prg_skok(pin_skok):
        print("prg_skok")
        
    def prg_beh(pin_beh):
        print("prg_beh")
        
    GPIO.setmode(GPIO.BCM)
    GPIO.setup(pin_start, GPIO.IN, pull_up_down=GPIO.PUD_DOWN)
    GPIO.setup(pin_skok, GPIO.IN, pull_up_down=GPIO.PUD_DOWN)
    GPIO.setup(pin_beh, GPIO.IN, pull_up_down=GPIO.PUD_DOWN)
    
    GPIO.add_event_detect(pin_start, GPIO.RISING, callback=prg_start, bouncetime=100)
    GPIO.add_event_detect(pin_skok, GPIO.RISING, callback=prg_skok, bouncetime=100)
    GPIO.add_event_detect(pin_beh, GPIO.RISING, callback=prg_beh, bouncetime=100)
    
    Vždy po zmáčknutí příslušného tlačítka se vyvolá program a vše jede dobře. všechna tlačítka jsou stále aktivní. Během běhu programu potřebuji zapínat a vypínat detekci přerušení.

    Představa je taková, že v prg_start zapnu detekci na pin_skok a vypnu detekci na pin_start.

    .
    .
    def prg_start(pin_start):
        GPIO.add_event_detect(pin_skok, GPIO.RISING, callback=prg_skok, bouncetime=100)
        GPIO.remove_event_detect(pin_start) 
        print("prg_start")
        
    def prg_skok(pin_skok):
        print("prg_skok")
        
    def prg_beh(pin_beh):
        print("prg_beh")
        
    
    GPIO.setmode(GPIO.BCM)
    GPIO.setup(pin_start, GPIO.IN, pull_up_down=GPIO.PUD_DOWN)
    GPIO.setup(pin_skok, GPIO.IN, pull_up_down=GPIO.PUD_DOWN)
    GPIO.setup(pin_beh, GPIO.IN, pull_up_down=GPIO.PUD_DOWN)
    
    
    
    GPIO.add_event_detect(pin_skok, GPIO.RISING, callback=prg_skok, bouncetime=100)
    GPIO.add_event_detect(pin_beh, GPIO.RISING, callback=prg_beh, bouncetime=100)
    
    while True:
        prg_start(pin_start)
    
    Bohužel toto mi vyhazuje chybu :

    GPIO.add_event_detect(pin_skok, GPIO.RISING, callback=prg_skok, bouncetime=100) RuntimeError: Conflicting edge detection already enabled for this GPIO channel

    Nemáte prosím nějaký nápad?

    Řešení dotazu:


    Odpovědi

    Řešení 1× (Вherzet)
    11.11.2021 23:32 z_sk | skóre: 34 | blog: analyzy
    Rozbalit Rozbalit vše Re: Ovládání GPIO raspberry 3 B+ v Pythonu
    Myslím si: To pridávanie eventov (hardverovo rozumej prerušení) môže byť, kvôli low level urovne, na jeden port nastavene iba jedno.
    debian.plus@protonmail.com
    🇹🇬 avatar 12.11.2021 01:12 🇹🇬 | skóre: 37 | blog: Grétin blogísek | 🇮🇱==❤️ , 🇵🇸==💩 , 🇪🇺==☭
    Rozbalit Rozbalit vše Re: Ovládání GPIO raspberry 3 B+ v Pythonu

    myslimže tam opakovaně v tom nekonečným loopu přidělaváš na pin 'pin_skok'  ten event detect :O :O na jednom pinu asi jako muže bejt dycky současně jenom jeden. zkus předtim udělat 'remove_event_detect' na tom pinu 'pin_skok' :O :O

    stasi se probouzí 🕵️🇩🇪 indové říděj🚚🇮🇳 plavba🍉🛶
    20.11.2021 21:08 Jan
    Rozbalit Rozbalit vše Re: Ovládání GPIO raspberry 3 B+ v Pythonu
    Děkuji mnohokrát funguje.
    🇹🇬 avatar 22.11.2021 19:24 🇹🇬 | skóre: 37 | blog: Grétin blogísek | 🇮🇱==❤️ , 🇵🇸==💩 , 🇪🇺==☭
    Rozbalit Rozbalit vše Re: Ovládání GPIO raspberry 3 B+ v Pythonu

    supr :D ;D

    stasi se probouzí 🕵️🇩🇪 indové říděj🚚🇮🇳 plavba🍉🛶

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.