
Benedikt Kicin, vytah semestralka
nastavenia.cpp@0:2574b54351ed, 2018-01-24 (annotated)
- Committer:
- kicin2
- Date:
- Wed Jan 24 07:55:50 2018 +0000
- Revision:
- 0:2574b54351ed
kicin2 vytah
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
kicin2 | 0:2574b54351ed | 1 | /*! |
kicin2 | 0:2574b54351ed | 2 | * \file nastavenia.cpp |
kicin2 | 0:2574b54351ed | 3 | * \author Benedikt Kicin |
kicin2 | 0:2574b54351ed | 4 | * Subor nastavenia.cpp sluzi na nastavenie a priebezne aktualizovanie led diod a displeja*/ |
kicin2 | 0:2574b54351ed | 5 | |
kicin2 | 0:2574b54351ed | 6 | #include "nastavenia.h" |
kicin2 | 0:2574b54351ed | 7 | |
kicin2 | 0:2574b54351ed | 8 | /** |
kicin2 | 0:2574b54351ed | 9 | *Funkcia pociatocne nastavenie displeja |
kicin2 | 0:2574b54351ed | 10 | */ |
kicin2 | 0:2574b54351ed | 11 | void pociatocneNastavenieDispleja() //nastavi displej na stvrte poschodie |
kicin2 | 0:2574b54351ed | 12 | { |
kicin2 | 0:2574b54351ed | 13 | unsigned char poleD[2]; |
kicin2 | 0:2574b54351ed | 14 | poleD[0] = 0x00; //led off |
kicin2 | 0:2574b54351ed | 15 | poleD[1] = 0x34; //toto pole zobaruzuje hodnootu: 0x34 (3 je displey kde su sipky, a 4 je zobrazovane cislo poschodia |
kicin2 | 0:2574b54351ed | 16 | posliPaket(0x30,0x02,poleD); //komu: 0x30 displej sipok a ukazovatel poschodia, dlzka pola: 0x02, pole: poleD |
kicin2 | 0:2574b54351ed | 17 | } |
kicin2 | 0:2574b54351ed | 18 | |
kicin2 | 0:2574b54351ed | 19 | /** |
kicin2 | 0:2574b54351ed | 20 | *Funkcia rozsvietenie LED diody pri tlacidle na vytahu |
kicin2 | 0:2574b54351ed | 21 | */ |
kicin2 | 0:2574b54351ed | 22 | void rozsvietenieLED() |
kicin2 | 0:2574b54351ed | 23 | { |
kicin2 | 0:2574b54351ed | 24 | if((ledka != 0xFF) && (aktPoschodie!=poschodie)){ |
kicin2 | 0:2574b54351ed | 25 | posliBajt(ledka, 0x01); //led on |
kicin2 | 0:2574b54351ed | 26 | ledka = 0xFF; //aktualizacia displeja |
kicin2 | 0:2574b54351ed | 27 | } |
kicin2 | 0:2574b54351ed | 28 | } |
kicin2 | 0:2574b54351ed | 29 | |
kicin2 | 0:2574b54351ed | 30 | /** |
kicin2 | 0:2574b54351ed | 31 | *Funkcia kontrolu potreby zmeny displeja |
kicin2 | 0:2574b54351ed | 32 | */ |
kicin2 | 0:2574b54351ed | 33 | void zmenDisplej() |
kicin2 | 0:2574b54351ed | 34 | { |
kicin2 | 0:2574b54351ed | 35 | if(aktualizujDisplej != 0xFF){ |
kicin2 | 0:2574b54351ed | 36 | zmenDisplejNa(smer, aktualizujDisplej); //kontrola aktualizovania; ci sa rozsvieti spravna sipka a zobrazi sa spravne poschodie |
kicin2 | 0:2574b54351ed | 37 | aktualizujDisplej=0xFF; |
kicin2 | 0:2574b54351ed | 38 | } |
kicin2 | 0:2574b54351ed | 39 | } |
kicin2 | 0:2574b54351ed | 40 | |
kicin2 | 0:2574b54351ed | 41 | /** |
kicin2 | 0:2574b54351ed | 42 | *Funkcia na aktualizovanie smeru sipky a cisla poschodia na displeji |
kicin2 | 0:2574b54351ed | 43 | *@param smerSipky - smer sipky na displeji |
kicin2 | 0:2574b54351ed | 44 | *@param cisloPoschodia - cislo poschodia na displeji |
kicin2 | 0:2574b54351ed | 45 | */ |
kicin2 | 0:2574b54351ed | 46 | void zmenDisplejNa(unsigned char smerSipky, unsigned char cisloPoschodia) |
kicin2 | 0:2574b54351ed | 47 | { |
kicin2 | 0:2574b54351ed | 48 | unsigned char poleD[2]; |
kicin2 | 0:2574b54351ed | 49 | poleD[0] = smerSipky; |
kicin2 | 0:2574b54351ed | 50 | poleD[1] = cisloPoschodia; |
kicin2 | 0:2574b54351ed | 51 | posliPaket(0x30,0x02,poleD); //komu: tato adresa je displey s cifernikom a sipkami |
kicin2 | 0:2574b54351ed | 52 | aktualizujDisplej = 0xFF; |
kicin2 | 0:2574b54351ed | 53 | } |