Nejaky lepsi procesor

Ing. Vladimír Anděl vaelektronik
Středa Březen 17 12:05:14 CET 2004


Podobne mam naprogramovane DCF hodiny. Jen ten main je casovany prerusenim
od casovace a tim je dana frekvence programove smycky. Vsechno, co se
postupne ve vymezenem intervalu provadi, nesmi byt delsi nez ten interval a
zbytek casu se ceka v IDL rezimu. Protoze ruzne vetve programu maji svoje
promenne, jsou navzajem na sobe nezavisle. Jen se to musi programovat tak,
aby kazdy "task" v pristim intervalu vedel, cim ma pokracovat.

Andel

> Takto se programuje PLC, a jinak vsechny slozitejsi ulohy.
> Principialne to je jak program ve windows, tj.
> inicializace
> main loop - nekonecna smycka
>  tady se volaji jednotlive "tasky"
>
> Rychle veci se osetruji v preruseni a komunikuji s hlavnim Threadem pres
> priznaky (Synchronizacni objekty).
>
> Slavek
>
> PS: vytvareni protokolu bych urcite nepsal linearne, on totiz pri
komunikaci
> procesor vetsonou nic nedela, jenom ceka.
>
> >
> > Zjednodusene zapisane mam to iste uspesne pouzite v jednom projekte v C
a
> > sam som bol prijemne prekvapeny kolko toho jednocip potom zvlada "naraz"
> > robit. Podmienkou vsak je aby potom ziadny jeden "task" alebo usek
programu
> > nesmel cakat alebo pracovat dlhsie a sam sa musel vzdat casu (a
zapametat si
> > stav kde skoncil aby potom mohol pokracovat), aby mohli ostatne "tasky"
> > pracovat a vysledok bol plynuly beh "vsetkych sucasne". Na taketo
pravidelne
> > cyklenie vsetkych taskov dohliadal Watchdog. Nevyhoda je potom v tom ze
> > algoritmus ktory potrebuje zlozitejsie casovanie (napr. vytvaranie
nejakeho
> > protokolu), ktory by mohol byt pri linearnom zapise jednoducho napisany
sa
> > do tohto "multitaskingu" zlozito zapisuje.
> > Emsi
>






Další informace o konferenci Hw-list