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 22:22 | Zajímavý článek

    Byl publikován aktuální přehled vývoje renderovacího jádra webového prohlížeče Servo (Wikipedie). Servo mimo jiné nově zvládne animované GIFy.

    Ladislav Hagara | Komentářů: 0
    dnes 21:44 | Bezpečnostní upozornění

    Nejnovější X.Org X server 21.1.18 a Xwayland 24.1.8 řeší další bezpečnostní chybu.

    Ladislav Hagara | Komentářů: 0
    dnes 17:55 | Pozvánky

    Spolek OpenAlt zve příznivce otevřených řešení a přístupu na 210. sraz, který proběhne 20. června od 18:00 v Red Hat Labu na Fakultě informatiky Masarykovy univerzity na adrese Botanická 68A nebo také online.

    Ladislav Hagara | Komentářů: 0
    dnes 14:33 | Nová verze

    Byla vydána nová verze 17 integrovaného vývojového prostředí (IDE) Qt Creator. Podrobný přehled novinek v changelogu.

    Ladislav Hagara | Komentářů: 0
    dnes 12:00 | Nová verze

    Open source 3D herní a simulační engine Open 3D Engine (O3DE) byl vydán v nové verzi 25.05.0. Přehled novinek v poznámkách k vydání. Nově je implementováno standardizované simulační rozhraní ROS (Robot Operating System) 2.

    Ladislav Hagara | Komentářů: 0
    včera 22:44 | Bezpečnostní upozornění

    Nejnovější X.Org X server 21.1.17 a Xwayland 24.1.7 řeší 6 bezpečnostních chyb: CVE-2025-49175, CVE-2025-49176, CVE-2025-49177, CVE-2025-49178, CVE-2025-49179 a CVE-2025-49180. Nils Emmerich je nalezl koncem března a dnes publikoval detaily.

    Ladislav Hagara | Komentářů: 0
    včera 14:33 | Nová verze

    Desktopové prostředí KDE Plasma bylo vydáno ve verzi 6.4 (Mastodon). Přehled novinek i s videi a se snímky obrazovek v oficiálním oznámení. Podrobný přehled v seznamu změn.

    Ladislav Hagara | Komentářů: 0
    včera 10:11 | Komunita

    UN Open Source Week 2025 probíhá tento týden v sídle Organizace spojených národů v New Yorku. Středeční a čtvrteční jednání bude možné sledovat na UN Web TV.

    Ladislav Hagara | Komentářů: 1
    včera 03:55 | Nová verze

    Byla vydána nová verze 2.50.0 distribuovaného systému správy verzí Git. Přispělo 98 vývojářů, z toho 35 nových. Přehled novinek v příspěvku na blogu GitHubu a v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    16.6. 21:55 | Zajímavý článek

    Infrastrukturu pro chatovací aplikaci Telegram provozuje člověk s vazbami na ruské zpravodajské služby. Upozorňují na to investigativní novináři z redakce iStories. „Vedneev dodává služby ruskému státu včetně jeho jaderného institutu nebo zpravodajské službě FSB,“ říká v podcastu Antivirus novinář Jan Cibulka. Uživatelům, kteří si chtějí své informace chránit, doporučuje Telegram vůbec nepoužívat, a raději zvolit jednu z alternativ, WhatsApp nebo Signal.

    Ladislav Hagara | Komentářů: 37
    Jaký je váš oblíbený skriptovací jazyk?
     (57%)
     (30%)
     (7%)
     (2%)
     (0%)
     (1%)
     (3%)
    Celkem 280 hlasů
     Komentářů: 16, poslední 8.6. 21:05
    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: 690×
    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
    Gréta avatar 12.11.2021 01:12 Gréta | 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

    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.
    Gréta avatar 22.11.2021 19:24 Gréta | skóre: 37 | blog: Grétin blogísek | 🇮🇱==❤️ , 🇵🇸==💩 , 🇪🇺==☭
    Rozbalit Rozbalit vše Re: Ovládání GPIO raspberry 3 B+ v Pythonu

    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.