[elektro] C kerdes - macro szamlalo
hg12345
hg12345 at freemail.hu
Wed Sep 23 20:00:32 CEST 2009
Hi,
Nem teljesen egyértelmű mit szeretnél?
A végrehajtandó feldolgozó programok fordítási időben már tudod hogy használod vagy nem? ==> RoundRobin.
Ha van egy nagy lehetőség halmaz, de <lehetséges> hogy használni fogod de még nem tudod, esetleg a dolgok sorba állnak akkor talán egy RTOS-t kéne telepíteni.
> Sejtette, hogy nem fog menni amit akarok, de közben kiderült, hogy talán nem
> is kell. Inkább leírom az eredeti komplex problémát, biztos van itt aki
> jobban vágja ezt.
>
> Az egészre tekintsünk úgy, hogy ez jelen pillanatban egy 8 bites PIC-en kell
> fusson, tehát nem lehet a világ végéig bonyolítani...
>
> Eseményvezérelt rendszer készül, amolyan kooperatív multitask szerűség, bár
> köze nincs hozzá. :-)
> A főprogram annyit csinál, hogy egy végtelen ciklusban kiolvassa egy
> globális eventq-ból az eseménykódot, majd meghívja a hozzá tartozó függvényt
> ami valamit csinál, új eseményt generálhat, stb., de mindenképp vissza kell
> térjen. A megszakítás rutin is lekezeli a maga nagysebességű problémáit, és
> ha valami van (pl. billentyűnyomás) ott is keletkezhet esemény.
>
> A probléma amit nem tudok OOP szemlélet szerint jól megoldani, hogy mindenki
> csak a rá tartozó dolgokkal foglalkozzon. Pl. ahhoz hogy meghívjam az
> esemény kezelő függvényt a main()-ben lévő ciklusnak tudnia kell az összes
> létező eseményről és a hozzá tartozó függvényről.
>
> Egy lehetséges verzió, hogy minden egység az inicializáció során
> regisztrálja a saját eseménykezelőit, aminek a vége, hogy egy globális
> tömbbe bekerül egy függvénycím. A main előkotorja a címet és meghívja. Innen
> már az a bajom, hogy ez nem dől el fordítási időben, tele lesz a kód egy
> csomó szükségtelen indirekt hívással és az ehhez szükséges tábla is sok
> helyet foglal, arról nem is beszélve, hogy egy véletlen kis memória
> korrupció a másvilágra sodorja a rendszert.
>
> Egy másik (eddig a legelfogadhatóbb) ötlet, hogy minden egység rendelkezik
> egy saját eseménykezelővel. Hátránya, hogy ekkor mindegyiken át kell hajtani
> az üzenetet, mire valaki foglalkozik vele. Talán nem olyan lassú. És az a
> probléma is fennáll még mindig, hogy az egész rendszeren belül egyedi
> azonosítókat kell kiosztani...
>
> Nahh, elfogadok minden építő jellegű kritikát. :-)
>
> --
> ((( Móczik Gábor )))--((( E~mail: "pm-01" @AT "progzmaster" .DOT "hu" )))
> ((( Skype: moczik )))
>
> -----------------------------------------
> elektro[-flame|-etc]
>
More information about the Elektro
mailing list