Zaslal: po březen 18 2013, 19:39 Předmět: Osetreni zakmitu tlacitka
Ahoj, tak jsem tu zase. Tentokrat resim osetreni zakmitu tlacitka. Na tlacitku detekuji obe hrany. SW cekani mi moc nevyhovuje tak jsem chtel vymyslet neco HW.
Popis problemu: Snazim se rozeznat kratky a dlouhy stisk. Pokud nastavim SW osetreni zakmitu na 100ms a k pusteni tlacitka dojde behem tech 100ms, mikrokontroler zjisti, ze bylo tlacitko stisknuto, ale ze bylo pusteno uz nepostrehne. A tim padem si mysli, ze je tl. stale drzeno...pote si mysli, ze uzivatel provadi dlouhy stisk.
Moje reseni: Navrhl jsem si takovy obvod, ale jsem amater (spise programator nez el.). Tak bych chtel znat nejake nazory. Dekuji za ne.
Založen: Jul 21, 2006 Příspěvky: 25741 Bydliště: skoro Brno
Zaslal: po březen 18 2013, 20:32 Předmět:
S těma 100ms si děláš legraci. Na zákmity bohatě stačí 3 čtení po 1ms (já používám dokonce jen 200us) a v případě shody se to bere jako výsledek, jinak se čte znovu. Zjistit potom krátký a dlouhý stisk není žádný problém, stejně musíš reagovat až na puštění tlačítka, tak jen měříš čas. _________________ Pro moje oslovení klidně použijte jméno Zdeněk
Správně navržené zapojení je jako recept na dobré jídlo.
Můžete vynechat půlku ingrediencí, nebo přidat jiné,
ale jste si jistí, že vám to bude chutnat[?]
S těma 100ms si děláš legraci. Na zákmity bohatě stačí 3 čtení po 1ms (já používám dokonce jen 200us)
No, takoví experti jako ty asi dělají sw do mobilů. Po dvou letech se na něm nedalo psát, protože co stisk, to vygenerovaný dvoj a více stisk. Já používám konzervativních 10ms, to je člověkem nepostřehnutelný čas a je to bomben fest i pro hodně jetý tlačítka.
Založen: Sep 13, 2005 Příspěvky: 867 Bydliště: Praha
Zaslal: po březen 18 2013, 20:51 Předmět:
Vzdyt by snad stacilo po te, co zjistim zmenu, zacit pocitat cas treba po 1ms a s kazdym vzorkem testovat vstup. Pokud nastane zmena zpet, tak citac casu resetovat. Pokud citac casu presahne protizakmitovou dobu Tfilt, prohlasi se stisk za validni a pokud presahne hodnotu definovanou pro dlouhy stisk, prohlasi se za dlouhy... _________________ de omnibus dubitandum est
Založen: Jul 21, 2006 Příspěvky: 25741 Bydliště: skoro Brno
Zaslal: po březen 18 2013, 20:59 Předmět:
Andrea napsal(a):
No, takoví experti jako ty asi dělají sw do mobilů. Po dvou letech se na něm nedalo psát, protože co stisk, to vygenerovaný dvoj a více stisk. Já používám konzervativních 10ms, to je člověkem nepostřehnutelný čas a je to bomben fest i pro hodně jetý tlačítka.
Dej si tam klidně hodinu, já používám klasický mikrospínače a když přičtu zpoždění díky obsluze funkce, v životě se mě dvojstisk nepovedl a to už ten algoritmus včetně zkušebních tlačítek používám asi 5 let. Původně jsem tam měl víc, ale je to zbytečný. Tři čtení po 200us a jakákoliv změna zavolá algoritmus opět od začátku, takže si to tlačítko klidně může kmitat půl hodiny. _________________ Pro moje oslovení klidně použijte jméno Zdeněk
Správně navržené zapojení je jako recept na dobré jídlo.
Můžete vynechat půlku ingrediencí, nebo přidat jiné,
ale jste si jistí, že vám to bude chutnat[?]
100ms mam proto, ze pri mensich casech tam mam zakmity. Ja nectu stav vstupu, o to se stara kod trochu blize HW nez jsem ja. Ja pouze zachytavam udalosti (kdyz byla detekovana vzestupna nebo sestupna hrana). Plus si muzu nastavit jak dlouho se ma cekat aby se clovek vyhnul zakmitum.
Nic vam nenutim instalovat. Je to normalni JAVA. Muzu sem dat i obrazek no. Ale kdyz jsem se tu ptal naposled, byla mi taky odpoved zaslana v teto podobe. Tak se snad nic tak tragickeho nestalo.
JInak to vase SW reseni zkusim muzu. Po prvni hrane nastartovat casovac a udelat si par vzorku po urcitem case zda jsou stejne. Proc ne no.
Založen: Sep 13, 2005 Příspěvky: 867 Bydliště: Praha
Zaslal: po březen 18 2013, 21:13 Předmět:
Tak ta vrstva "blize HW" je proste nevhodna, protoze neumi detekovat vhodne typy udalosti. Honit to nekde vyse, zvlaste, kdyz ty udalosti nejsou oznaceny timestampama je pakarna... _________________ de omnibus dubitandum est
Naposledy upravil WLAB dne po březen 18 2013, 21:20, celkově upraveno 1 krát.
Založen: Sep 13, 2005 Příspěvky: 867 Bydliště: Praha
Zaslal: po březen 18 2013, 21:19 Předmět:
Komentar k obvodu je ten, ze bys to snad radeji mel udelat softwarove.......
Cekal bych v tom obvodu nejaky monostabilni KO, hysterezi apod.... ale tohle? _________________ de omnibus dubitandum est
timestamp dostavam. Muzu to zkusit odecitat ty dva casy po sobe no. Ale rikal jsem si, ze kdo vi zda to bude fungovat. Zda nebude stejny vysledek jako u toho jejich osetreni. Nevim jakto, ze tam mam nekdy dvoukliky i po takove dobe, kdyz tu kazdy pise ze po par ms je to pryc...
"ale tohle?"..no nekde jsem cetl, ze to lze resit kondikem. Ale jen kondik si myslim nestaci...kdyz chytate obe hrany.
Založen: Sep 13, 2005 Příspěvky: 867 Bydliště: Praha
Zaslal: po březen 18 2013, 21:36 Předmět:
No, "kondik" tam musi byt kazdopadne... otazka je co k nemu... co tu ma tedy dle konstrukcniho zameru resit ten OZ?
Ja bych to resil ve FW, bude-li to trochu mozne, uz jen pro variabilitu. _________________ de omnibus dubitandum est
No OZ tam mam proto, ze ja chci merit napeti na kondiku..Abych osetril oba druhy zakmitu. Ale pin mikrokontroleru mi muze merit jen napeti vuci zemi. Tak jsem to udelal pres OZ. Ten mi veme jen napeti na kondiku a to pak uz je stahnute vuci zemi...ale jak rikam. Jsem hodne velky amater, takze mozna je to blbost nevim.
Kdyz nastavim filtr zakmitu(ten co tam uz je udelany) na 50ms, tak mam kazdy druhy stisk 2x Osciloskop nemam abych se na to podival poradne.
Založen: Feb 14, 2005 Příspěvky: 9039 Bydliště: Brno (JN89GF)
Zaslal: po březen 18 2013, 22:33 Předmět:
Je to nějaký komplikovaný, já osobně považuju zákmity za odezněný po 20-ti ms, pak teprv řeším krátkej, nebo dlouhej stisk. Funguje to na mikrospínače i obyčejný spínače, vše čistě software.
Časy uváděny v GMT + 1 hodina Jdi na stránku 1, 2Další
Strana 1 z 2
Nemůžete odesílat nové téma do tohoto fóra. Nemůžete odpovídat na témata v tomto fóru. Nemůžete upravovat své příspěvky v tomto fóru. Nemůžete mazat své příspěvky v tomto fóru. Nemůžete hlasovat v tomto fóru. Nemůžete připojovat soubory k příspěvkům Můžete stahovat a prohlížet přiložené soubory
Informace na portálu Elektro bastlírny jsou prezentovány za účelem vzdělání čtenářů a rozšíření zájmu o elektroniku. Autoři článků na serveru neberou žádnou zodpovědnost za škody vzniklé těmito zapojeními. Rovněž neberou žádnou odpovědnost za případnou újmu na zdraví vzniklou úrazem elektrickým proudem. Autoři a správci těchto stránek nepřejímají záruku za správnost zveřejněných materiálů. Předkládané informace a zapojení jsou zveřejněny bez ohledu na případné patenty třetích osob. Nároky na odškodnění na základě změn, chyb nebo vynechání jsou zásadně vyloučeny. Všechny registrované nebo jiné obchodní známky zde použité jsou majetkem jejich vlastníků. Uvedením nejsou zpochybněna z toho vyplývající vlastnická práva. Použití konstrukcí v rozporu se zákonem je přísně zakázáno. Vzhledem k tomu, že původ předkládaných materiálů nelze žádným způsobem dohledat, nelze je použít pro komerční účely! Tento nekomerční server nemá z uvedených zapojení či konstrukcí žádný zisk. Nezodpovídáme za pravost předkládaných materiálů třetími osobami a jejich původ. V případě, že zjistíte porušení autorského práva či jiné nesrovnalosti, kontaktujte administrátory na diskuzním fóru EB.