[elektro] pic ad
Jamrik Jozsef
jamrikjozsef at gmail.com
Fri May 28 07:45:36 CEST 2010
Skandar Graun wrote:
> Az AD megszakítás egy érdekes kérdés.
> Megszakítás. Mit csinálok vele?
> Kiolvasom és jelzem a főprogramnak, hogy megtörtént a kiolvasás?
> Ha nem használok IT-t, akkor az történik, hogy az ADIF bittel jelzem a
> főprogramnak, hogy a konverzió kész.
> Majd a főprogram a neki alkalmas időben kiolvassa és feldolgozza.
Már ha ez a "neki alkalmas időben" jellegű mintavétel egyáltalán
megengedhető. Továbbá itt még nincs vége, még a neki legközelebb
alkalmas időben, ami ne legyen kevesebb mint a beállási idő (acquisition
time), megint foglalkozni kell vele, hogy elindítsa a következő konverziót.
Mivel a főprogramnak többnyire ezer más rendszertelen időzítésű dolga
szokott lenni, ez maximum hőmérő kiolvasásra jó, ha rendesen időzített
mintavétel kell, arra való a megszakítás.
Ezt én úgy csinálom általában, hogy a kiszámított beállási időre (vagy
többre, ha csak lassabb mintavétel kell) fel van programozva egy timer,
ha ez lejár, akkor az interruptban beállítja a GO bitet és letiltja ezt
a timert. Az IT az AD megszakítás után kiolvassa az adatot,
felprogramozza újra a timert.
Ez a leggyorsabb tempó amit el lehet érni, de ha nem kell padlógázon
menni, akkor is kényelmesebb, mint a főprogramban még a pollingolással
is kínlódni. Feladatfüggő, de ha úgyis pufferbe kell rakni az adatot
vagy keveset kell számolni, akkor azt is meg lehet oldani az IT-ben.
--
((( Móczik Gábor )))--((( e|mail: pm-01 |@| progzmaster |.| hu )))
((( S.k.y.p.e.: moczik )))
More information about the Elektro
mailing list