Fórum témák

» Több friss téma
Cikkek » Óra harkályoknak
Óra harkályoknak
Szerző: Istvanpisti, idő: Márc 7, 2017, Olvasva: 10762, Oldal olvasási idő: kb. 3 perc
Lapozás: OK   3 / 6

Az óra akkor jeleníti meg az aktuális tartalmat a kijelzőn, ha az X és Y irányú gyorsulás érték egy előre meghatározott ablakban van. Mivel az óra gravitációs térben helyezkedik el, így az X, Y irányú gyorsulási érték azt jelenti, hogy az óra milyen térbeli helyzetben van. A jelenlegi beállításokkal a vízszintes-közeli a kitüntetett helyzet, de ez a kódból változtatható. Amikor megszűnik valamelyik feltétel, akkor – egy előre megadott, de - menüből - módosítható ideig (alap beállítás 3 mp) – még látható a tartalom, majd a uC kikapcsolja az OLED-et és sleep módba vált. Olyan alvó üzemmódot választottam, amiben a uC fő órajele leáll, csak a Timer2 működik aszinkron módban (ide kapcsolódik az órakvarc) úgy, hogy 1 másodpercenként egy megszakítást generál, aminek hatására a uC felébred az alvásból, átparaméterezi a gyorsulásmérőt és lekérdezi a 3 tengelyirányú mért adatait. Ha az X és Y érték benne van az ablakban, akkor megjeleníti a kijelzőn a tartalmat.

Amikor a kijelzőn van tartalom, akkor koppintással lehet valamilyen akciót kiváltani, ha szükséges.

Azért, hogy egyértelmű legyen a különböző irányok értelmezése, képzeljük el az órát magunk előtt az asztalon, olyan állásban, hogy le lehessen olvasni. Ekkor a függőleges tengely a "Z", a testünkre merőleges az "X", míg a mellkasunkkal párhuzamos az "Y" irány, a későbbiekben ezekre fogok hivatkozni, amikor a koppintások irányát adom meg.
Alapesetben az időt mutatja az óra, a következő üzemmódok egyikében:

  • Digitális
  • Bináris
  • Analóg
  • Szöveges

Digitális:
Az óra ÓÓP alakban megjeleníti az időt nagy karakterekkel, hogy könnyen le lehessen olvasni, de a másodpercek is láthatók, csak kicsi betűmérettel.

Bináris:binaris.jpg
A szokásos, nehezen értelmezhető óra, mely 6 oszlopban mutatja az időt. Az oszlopok értelmezése és helyiértéke balról jobbra: 10óra, óra, 10perc, perc, 10mp, mp. A sorok pedig bináris értékeket adják: 1, 2, 4, 8. A leolvasás menete: az egyes oszlopokban lévő "tele" pöttyök - bináris - értékeinek összeadása majd az összeg szorozva az oszlop jelentésével. A mellékelt képen látható idő: 10:43:03.

Analóg:analog.jpg
A mindenki által ismert "archaikus" óra.

Szöveges:szoveges.jpg
Ebben a módban az óra kiírja szövegesen az időt, pl. öt perc múlva lesz tizenegy óra"

Akciók áttekintése:

  1. Az egyes óra megjelenítések között "Z" irányú két koppintással lehet váltani.
  2. A menüt "Y" irányú két koppintással lehet előhívni.
  3. A menüben az OK megfelelője a "Z" irányú két koppintás
  4. Növelni valamely értéket "X" irányú egy koppintással lehet
  5. Csökkenteni egy értéket "Y" irányú egy koppintással lehet
  6. Navigálás jobbra: "X" irányú két koppintással lehet
  7. Navigálás balra: "Y" irányú két koppintással lehet

Koppintás után hosszabb ideig - 10 másodpercig - nem tűnik el a kijelzés akkor sem, ha nem állnak fenn a megjelenítés feltételei.

A menü:menu.jpg

  1. EXIT (kilépés)
  2. SET TIME (idő beállítása)
  3. SET DATE (dátum beállítása)
  4. SET CONT (kontraszt beállítás)
  5. LIGHT LEN (világítás hosszának beállítása)
  6. TECH (gyorsulás és akku feszültség értékek kijelzése)

Vannak, akiknek kifejezetten rosszul esik a nem magyar szöveg látványa. Nekik, ha megépítik ezt az órát, lehetőségük lesz magyar szövegek definiálására.

EXIT: Azért került az első helyre a menüből történő kilépés, hogy egy esetleges téves belépésből egyszerűbben vissza lehessen térni. Az "X" irányú egy koppintással lehet a menüben lefelé lépkedni és "Y" irányú egy koppintással felfelé haladni (lásd, az "Akciók áttekintése:" 4., 5. pont).

SET TIME: Az idő formátuma HH:MM alakban látható a kijelzőn. Az aláhúzott érték növelhető "X" irányú egy koppintással, míg csökkenthető "Y" irányú egy koppintással. A kijelölés mozgatására az "X" és "Y" irányú két koppintás szolgál, "X" jobbra, az "Y" balra mozgatja a kijelölést, majd a kijelölt elem növelése csökkentése az előző mondatban leírtak szerint történik. Amikor "Z" irányú két koppintással elfogadjuk az értéket, akkor az óra, perc átíródik az éles változókba, a másodperc null lesz, és visszajutunk a menübe.

SET DATE: A dátum formátuma YY.MM.DD lesz, ahol a YY a 2000 utáni évek számát, a MM a hónapokat, a DD a napokat jelenti. Az értékek ugyanúgy változtathatók, mint ahogyan az idő esetében.

SET CONT: A kijelző fényereje állítható be 0 és 25 között.

TECH: Ebben a menüpontban meg lehet nézni az akkumulátor feszültségét, és folyamatosan látható az X, Y, Z irányú gyorsulás értéke. Ez egy szerviz jellegű menüpont, ami a fejlesztéskor keletkezett, de benne hagytam a végleges programban.

Egyéb tulajdonságok:

  • A uC folyamatosan méri az akkumulátor feszültségét és ennek megfelelő szimbólumot tesz ki a jobb felső sarokba (tisztában vagyok vele, hogy az akku feszültségéből nem lehet teljes bizonyossággal következtetni a töltöttségére, de a semminél jobb).
  • Ha a feszültség kisebb, mint 3,6 V, akkor nem jeleníti meg az órát, csak a villogó akkumulátor szimbólumot a jobb felső sarokban.
  • Ha a feszültség kisebb, mint 3,3 V, és ez az állapot 60 másodpercen keresztül fennáll, akkor a uC kikapcsolja a tápellátást, vele a saját ellátását is, de előtte az EPROM-ba írja a beállítási adatokat.
  • Ha alacsony akku feszültség miatt kikapcsolt az óra, akkor a töltőre rátéve vissza fog kapcsolni. Természetesen ez után be kell állítani az időt és a dátumot, a többi paramétert azonban az EPROM-ból visszatölti.

A cikk még nem ért véget, lapozz!
Következő: »»   3 / 6
Értékeléshez bejelentkezés szükséges!
Bejelentkezés

Belépés

Hirdetés
XDT.hu
Az oldalon sütiket használunk a helyes működéshez. Bővebb információt az adatvédelmi szabályzatban olvashatsz. Megértettem