Linux hotkey

Michal Grunt michal.grunt na gmail.com
Sobota Září 18 15:20:55 CEST 2021


Vyzkouším to, děkuji. To bude asi ono.

Dne pá 17. 9. 2021 16:02 uživatel Ladislav Vaiz <spam na nagano.cz> napsal:

> Správné řešení pod linuxem je volat v hlavní smyčce select(). Tomu se
> předají filedescriptory, ze kterých chci číst, do kterých chci zapisovat
> a případný timeout pro nejbližší časovač.
>
> U GPIO se otevře soubor  .../value a jeho descriptor se přidá do readfds
> selectu. V obsluze pak:
> lseek(gpio->value_fd, 0, SEEK_SET);
> read(gpio->value_fd, buf, 1);
>
> L.
>
>
> Dne 17.09.2021 v 13:15 Michal Grunt napsal(a):
> > Tak usleep(1) moc nepomůže. Vyžere to 100% CPU. Když zadám
> > usleep(50000) tak už je to snesitelnějších cca 1.6%. Ale stejně je mi
> > proti srsti, aby tak jednoduchý program, který čeká na stisk klávesy
> > sežral takových prostředků. Kdyby takto fungovala klasická klávesnice
> > tak by z toho asi nikdo radost neměl. Ano mohu zadat větší číslo jako
> > parametr, ale už tam bude znatelná prodleva stisk/akce.
> >
> > so 10. 7. 2021 v 20:56 odesílatel Michal Vanka <junk.mv na gmail.com>
> napsal:
> >> Za mych mladych Linuxovych let volani usleep(1) na Intel procesorech
> odevzdalo proces scheduleru,
> >> ten si udelal svoje veci a po nejake dobe (myslim, ze to bylo kolem 15
> milisekund) se k procesu opet vratil.
> >> Cili, obsluha tlacitka nezatezujici procesor by mohla vypadat takto:
> while(1) { obsluhaTlacitka(); usleep(1); }
> >>
> >> Dle odkazu zde:
> >>
> >> https://www.raspberrypi.org/forums/viewtopic.php?t=80705
> >>> the minimum time it would take is in the order of 100µS
> >> by to na raspi melo byt cekat 100us a principialne by to melo fungovat
> stejne (ale nemam overeno).
> >> Michal
> >>
> >>
> >>
> >> On Sat, Jul 10, 2021 at 7:18 PM Jindroush <jindroush na seznam.cz> wrote:
> >>> On 10.07.2021 18:50, Michal Grunt wrote:
> >>>> Mám napsany v C jednoduchý program, který na RPi sleduje jedno GPIO
> >>>> (kde je tlacitko) a při jeho stisknutí vygeneruje zmacknuti virtuální
> >>>> klávesy třeba X. Funguje to, ale jak to napsat tak, aby to
> >>>> nezatezovalo moc procesor? Mám tam nekonečnou smyčku kde sleduji GPIO,
> >>>> ale pokud do té smyčky nedám delay třeba 200ms tak to sežere snad
> >>>> všechen CPU čas a nebo je to dost náročný (už si to přesně
> >>>> nepamatuji). Ale zase s těmi 200ms je to zmacknuti detekování se
> >>>> zpožděním... Jak ten stav GPIO detekovat bez zpoždění a s minimální
> >>>> zátěží CPU?
> >>>>
> >>> Pogoogleni povidalo neco o tom, ze lze nektere GPIO nastavit na
> interrupt.
> >>>
> https://raspberrypi.stackexchange.com/questions/89072/is-there-a-way-to-use-interrupt-driven-gpio-input-through-the-sysfs-interface-wi
> >>> neco i zde
> >>> http://raspberrypi-aa.github.io/session2/input.html
> >>>
> >>> --
> >>> Jindroush <jindroush na seznam.cz>
> >>>
> >>> _______________________________________________
> >>> HW-list mailing list  -  sponsored by www.HW.cz
> >>> Hw-list na list.hw.cz
> >>> http://list.hw.cz/mailman/listinfo/hw-list
> >> _______________________________________________
> >> HW-list mailing list  -  sponsored by www.HW.cz
> >> Hw-list na list.hw.cz
> >> http://list.hw.cz/mailman/listinfo/hw-list
> > _______________________________________________
> > HW-list mailing list  -  sponsored by www.HW.cz
> > Hw-list na list.hw.cz
> > http://list.hw.cz/mailman/listinfo/hw-list
>
>
>
> _______________________________________________
> HW-list mailing list  -  sponsored by www.HW.cz
> Hw-list na list.hw.cz
> http://list.hw.cz/mailman/listinfo/hw-list
>
------------- další část ---------------
HTML příloha byla odstraněna...
URL: <http://list.hw.cz/pipermail/hw-list/attachments/20210918/1df1cffd/attachment.html>


Další informace o konferenci Hw-list