Mérés laboratórium 3. - 3. mérés
A mérési útmutató hosszától nem kell megijedni, mert a nagy részét már úgyis tudja mindenki Oprendszerekből, csak itt gyakorlatiasabb formában megismerjük a taszkok/szemaforok kezelését, stb... Az 1. feladat egyszerű regiszterkezelés, amihez a delay.h header fájlban lévő késleltető függvényt kell majd használni. Erről részletesebb leírást a feladathoz kiadott vázfájl "Software wait loops" komment része ad. (Szándékosan nem írom le a függvény nevét, mert a kommentben még más információ is van.) A vázfájlok elején lévő "INT[4-7] is on PORTE.[4-7]" komment néhány embernél félreértésre adott okot, ami aztán (teljesen jogosan) kicsapta a biztosítékot Csordás Péternél (mérésvezető). :) A portokat nem tömbként kezeljük, tehát NINCS olyan, hogy PORTA[5]=1! Egy-egy port regisztereinek a beállításához, vagy lekérdezéséhez a bitenkénti (bitwise) operátorokat kell használni.
A szemaforok kezelése nem olyan bonyolult, mint ahogy az tűnik, csak alaposan át kell olvasni a kiadott API leírást. (Röviden: létre kell hozni egy szemafort. Ezután (tipikusan LCD-re írás előtt) várakozni kell a szemaforra. Ha a szemafor szabaddá vált, vagyis nem használja egyik taszk sem az LCD-t, akkor lefoglaljuk a szemafort, kiírunk valamit, majd elengedjük a szemafort. Ennyi.)
-- Tóth Gábor - 2011.09.04.