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 04:11 | IT novinky

    Google minulý týden představil Material 3 Expressive, tj. novou verzi svého designového jazyka Material Design pro Android 16 a Wear OS 6.

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

    Byl vydán Debian 12.11, tj. jedenáctá opravná verze Debianu 12 s kódovým názvem Bookworm. Řešeny jsou především bezpečnostní problémy, ale také několik vážných chyb. Instalační média Debianu 12 lze samozřejmě nadále k instalaci používat. Po instalaci stačí systém aktualizovat.

    Ladislav Hagara | Komentářů: 0
    17.5. 14:55 | Zajímavý software

    Makepad dospěl do verze 1.0 (𝕏). Jedná se o multiplatformní open source UI framework pro Rust napsaný v Rustu.

    Ladislav Hagara | Komentářů: 4
    16.5. 17:11 | Komunita

    Konference OpenAlt 2025 hledá přednášející. Proběhne o víkendu 1. a 2. listopadu na půdě Fakulty informačních technologií VUT v Brně. Témata konference jsou: Otevřený a svobodný software, IoT a Hnutí tvůrců, Vzdělávání, Bezpečnost a soukromí, Otevřená společnost, komunity a data, OpenMobility a další.

    Ladislav Hagara | Komentářů: 0
    16.5. 15:33 | Zajímavý článek

    Nové číslo časopisu Raspberry Pi zdarma ke čtení: Raspberry Pi Official Magazine 153 (pdf)

    Ladislav Hagara | Komentářů: 0
    16.5. 12:22 | Komunita

    Byl publikován květnový přehled dění a novinek z vývoje Asahi Linuxu, tj. Linuxu pro Apple Silicon. Vývojáře lze podpořit na Open Collective a GitHub Sponsors.

    Ladislav Hagara | Komentářů: 0
    15.5. 21:33 | Nová verze

    Programovací jazyk Rust (Wikipedie) dnes slaví 10 let od vydání verze 1.0. Přímo na oslavě byla vydána nová verze 1.87.0. Podrobnosti v poznámkách k vydání. Vyzkoušet Rust lze například na stránce Rust by Example.

    Ladislav Hagara | Komentářů: 0
    15.5. 14:44 | IT novinky

    Evropská komise obvinila provozovatele čínské platformy TikTok z porušování pravidel EU kvůli netransparentnosti v reklamě. Komise, která v EU plní i funkci antimonopolního úřadu, to dnes uvedla v tiskové zprávě. TikTok, který patří čínské firmě ByteDance, se může k předběžnému nálezu vyjádřit. Pokud ale podezření komise nevyvrátí, hrozí mu pokuta až do šesti procent z ročního globálního obratu.

    Ladislav Hagara | Komentářů: 21
    14.5. 20:44 | Komunita

    Sovereign Tech Agency (Wikipedie), tj. agentura zabezpečující financování svobodného a otevřeného softwaru německou vládou, podpoří GFortran částkou 360 000 eur.

    Ladislav Hagara | Komentářů: 0
    14.5. 14:00 | IT novinky

    Microsoft hodlá zrušit zhruba tři procenta pracovních míst. Microsoft na konci loňského června zaměstnával kolem 228.000 lidí. Tři procenta z tohoto počtu představují téměř 7000 pracovních míst.

    Ladislav Hagara | Komentářů: 16
    Jaký je váš oblíbený skriptovací jazyk?
     (100%)
     (0%)
     (0%)
     (0%)
     (0%)
     (0%)
     (0%)
    Celkem 2 hlasů
     Komentářů: 0
    Rozcestník

    Dotaz: Raspberry-pi hw debouncing

    the.max avatar 12.4.2020 21:16 the.max | skóre: 46 | blog: Smetiště
    Raspberry-pi hw debouncing
    Přečteno: 509×
    Ahoj,

    určitě je tu mnoho těch, kteří používají malinu. Snažím se najít nějaký 'best of practice' ohledně ošetření bounce efektu u tlačítek a jiných spínačích připojených k malině, kdy načítání stavů je řešeno přes přerušení. Vyzkoušel jsem už toho velku dost ale vždycky se občas něco vykonalo vícekrát.

    Má smysl používat vnitřní pull up nebo pull down? nebo je lepší to v tomhle případě řešit externě?

    Předem díky.
    KERNEL ULTRAS Fan Team || Sabaton - nejlepší učitel dějepisu || Gentoo - dokud nás systemd nerozdělí.

    Řešení dotazu:


    Odpovědi

    12.4.2020 23:14 OldFrog {Ondra Nemecek} | skóre: 36 | blog: Žabákův notes | Praha
    Rozbalit Rozbalit vše Re: Raspberry-pi hw debouncing
    Že se vykonalo něco dvakrát neznamená nutně, že Vám nefunguje debouncing... třeba někdo to tlačítko stisknul 2x :)

    Prostě načtete hodnotu opakovaně několikrát a z naměřených hodnot určíte, zda považujete tlačítko za stlačené nebo nestlačené. Zajímat Vás bude asi ten algoritmus ale ten zase záleží na druhu tlačítka či sensoru. Takže to chce více detailů - jaké zařízení, ukázku kódu atd.

    Jinak třeba tady: https://my.eng.utah.edu/~cs5780/debouncing.pdf a https://hackaday.com/2015/12/09/embed-with-elliot-debounce-your-noisy-buttons-part-i/

    Pokud to má být nějaké profi zařízení tak bych šel spíš do HW řešení.
    -- OldFrog
    the.max avatar 13.4.2020 12:43 the.max | skóre: 46 | blog: Smetiště
    Rozbalit Rozbalit vše Re: Raspberry-pi hw debouncing
    Díky za linky, na ten druhý už jsem před několika dny také narazil, ale vzpomínám si, že jsem ho vlastně nedočetl celý.
    KERNEL ULTRAS Fan Team || Sabaton - nejlepší učitel dějepisu || Gentoo - dokud nás systemd nerozdělí.
    Jendа avatar 13.4.2020 02:40 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: Raspberry-pi hw debouncing
    Já si v interrupt handleru zapamatuju čas a pokud se znovu zavolal za míň než X ms, tak tu událost ignoruju.
    the.max avatar 13.4.2020 12:44 the.max | skóre: 46 | blog: Smetiště
    Rozbalit Rozbalit vše Re: Raspberry-pi hw debouncing
    Můžeš sem prosím pastnout kus kódu? S tím jsem také experminetoval ale možná jsem na to šel špatně. Dǐky.
    KERNEL ULTRAS Fan Team || Sabaton - nejlepší učitel dějepisu || Gentoo - dokud nás systemd nerozdělí.
    Jendа avatar 13.4.2020 19:14 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: Raspberry-pi hw debouncing
    Nedělám to na RPi, takže to asi bude k ničemu, ale je to něco jako
    static volatile uint32_t last_intr;
    ISR() {
      if(millis() - last_intr < 5) return;
      last_intr = millis();
      dělej_něco;
    }
    Jendа avatar 13.4.2020 19:16 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: Raspberry-pi hw debouncing
    Hm, ale tohle teda neošetří pokud ti to dělá zákmity i při rozepnutí. Tam si budeš muset v podobném duchu udělat něco víc.
    13.4.2020 08:57 Petr Šobáň | skóre: 80 | blog: soban | Olomouc
    Rozbalit Rozbalit vše Re: Raspberry-pi hw debouncing
    Nějak nechápu co řešíš?

    Každý mechanický kontakt při sepnutí zakmitává a vyvolá nějaké kmitání.

    A teď se to musí ošetřit buď na HW stránce a nebo pokud CPU stíhá tak po SW stránce.

    V domácích podmínkách to jde většinou řešit pomocí SW.

    Prostě při vyvolání události musím stav překontrolovat minimálně 2x, jednou po hodně malém časovém úseku zda je událost skutečně vyvolaná a později za delší čas který musí být delší jak zakmitávání kontaktů.
    the.max avatar 13.4.2020 12:36 the.max | skóre: 46 | blog: Smetiště
    Rozbalit Rozbalit vše Re: Raspberry-pi hw debouncing
    Řeším přesně to, co na co jsem se dotazoval. A ano, chci to řešit hardwarově, což jsem také psal. Také jsem psal, že už jsem toho vyzkoušel celkem dost ale s různou úspěšností, nikdy to ale nebylo ve výsledku 100%ně bez chyby. A proto se ptám na zkušenosti ostatních, co používají a jaké mají zkušenosti. Ale tohle všechno tu vlastně píšu úplně zbytečně, protože už jsem to psal v původním dotazu.

    Snažím se ošetřit zákminy mikrospínačů do DPS.
    KERNEL ULTRAS Fan Team || Sabaton - nejlepší učitel dějepisu || Gentoo - dokud nás systemd nerozdělí.
    13.4.2020 19:31 Radovan
    Rozbalit Rozbalit vše Re: Raspberry-pi hw debouncing
    Použij membránovou klávesnici, nebo hallovy snímače, nebo magnetické jazýčkové kontakty, nebo RC obvod, nebo přepínač s flipflopem, nebo to ošetři softwarově.

    To máš přerušení pověšené přímo na ten spínač? To není dobrý způsob, radši tam dej časovač a čti vstup v pravidelných intervalech, a teprve když bude třeba několikrát za sebou neměnný, tak ho pošli dál.
    14.4.2020 08:41 Petr Šobáň | skóre: 80 | blog: soban | Olomouc
    Rozbalit Rozbalit vše Re: Raspberry-pi hw debouncing
    Pouze kecy a žádný příklad....

    Prostě když sem nedáš příklad tak se těžko může hledat chyba.

    Většinou je problém pokud je tlačítko na dlouhém kabelu, a indukuje se do drátu rušení....

    Další problém většinou je že někdy se zapomene kontrolovat i puštění tlačítka, takže sepnutí je OK ale puštění zase vyrobí kmitání.

    Další snímání nového stavu by se mělo dělat zase až po době maximálního zakmitávání atd....

    Vše je o tom co ovládáš a jak rychle musí SW zareagovat na tlačítko, pokud je to klávesnice ovládaná člověkem tak ty časy můžou být dostatečně dlouhé....
    Řešení 1× (the.max (tazatel))
    13.4.2020 21:06 mhepp
    Rozbalit Rozbalit vše Re: Raspberry-pi hw debouncing
    Nejsem si jistý, jestli pro HW řešení je toto vhodné fórum. Já hledal řešení před pár lety zde:

    http://www.ebastlirna.cz/modules.php?name=Forums&file=viewtopic&t=81556&highlight=

    Problém s mým zapojením, že jednoduchý RC obvod nefungoval kvůli kapacitní vazbě na vstupu PCF8583, takže pouze v kombinaci se Schmittovým klopným obvodem. Ale zase je to sichr.
    the.max avatar 15.4.2020 23:27 the.max | skóre: 46 | blog: Smetiště
    Rozbalit Rozbalit vše Re: Raspberry-pi hw debouncing
    Oka, díky, tohle řešení jsem měl v záloze jako poslední variantu, ale pokud to funguje, nebudu to dál řešit ;-)
    KERNEL ULTRAS Fan Team || Sabaton - nejlepší učitel dějepisu || Gentoo - dokud nás systemd nerozdělí.

    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.