[elektro] (C) programozási kérdés

Andras Huszti kyrk at villamvadasz.hu
Sun Nov 20 10:24:19 CET 2011


Hello!

> Van erre valami értelmes szabály ami ezt kikerüli?
Van. Ugy kell felepiteni a programot, hogy kulonallo modulokbol alljon
es a modulok a komplex funkciokat fugvenyek formajaban retsek el.
Tovabba adatokat csak fugvenyhivasokkal szabad atadni. A moduloknak
"maguktol" kell mukodniuk. Pl a GUI modul megkapja valami infot
fuggvenyhivason keresztul, ezt elmenti valami belso valtozoba. Majd ha a
sajat fociklusa felhivodik elintezi a kiirast. Igy a hivo fel nincs
blokkolva csak addig amig elmentodik az adat, nem kell megvarnia a
koltseges GUI frissitest.

A moduloknak altalaban a kovetkezo interfeszeket erdemes letrehozni:
- configuracio: ide kell rakni a forditasidobeli konfigokat, pl defineok
- work: ide kell rakni az init es do fuggvenyeket. Ez elobbit egyszer
kell hivni, az utobbit foprogrambol ciklikusan
- interrupt: ide kell rakni az interruptokat. Foleg 1ms, illetve egyeb.
- user funkciok: ide jonnek azok a funkciok amit a tobbi modul hasznalni
fog.

A fenti rendszerrel elerheto, hogy minden modul csak a user funkciokat
includolja, a tobbire nincs szuksege. Es persze csak azokat amikre
szuksege van. Kialakul egy fa struktura, hogy mely modul melytol fugg.
Ha mindenki mindenkitol fugg, akkor rosszul van megtervezve a modulok
kozott a feladatok kiosztasa.

Koszonom



More information about the Elektro mailing list