Benedikt Kičin
/
kicin2vytah
Benedikt Kicin, vytah semestralka
Diff: nastavenia.cpp
- Revision:
- 0:2574b54351ed
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/nastavenia.cpp Wed Jan 24 07:55:50 2018 +0000 @@ -0,0 +1,53 @@ +/*! + * \file nastavenia.cpp + * \author Benedikt Kicin + * Subor nastavenia.cpp sluzi na nastavenie a priebezne aktualizovanie led diod a displeja*/ + +#include "nastavenia.h" + +/** +*Funkcia pociatocne nastavenie displeja +*/ +void pociatocneNastavenieDispleja() //nastavi displej na stvrte poschodie +{ + unsigned char poleD[2]; + poleD[0] = 0x00; //led off + poleD[1] = 0x34; //toto pole zobaruzuje hodnootu: 0x34 (3 je displey kde su sipky, a 4 je zobrazovane cislo poschodia + posliPaket(0x30,0x02,poleD); //komu: 0x30 displej sipok a ukazovatel poschodia, dlzka pola: 0x02, pole: poleD +} + +/** +*Funkcia rozsvietenie LED diody pri tlacidle na vytahu +*/ +void rozsvietenieLED() +{ + if((ledka != 0xFF) && (aktPoschodie!=poschodie)){ + posliBajt(ledka, 0x01); //led on + ledka = 0xFF; //aktualizacia displeja + } +} + +/** +*Funkcia kontrolu potreby zmeny displeja +*/ +void zmenDisplej() +{ + if(aktualizujDisplej != 0xFF){ + zmenDisplejNa(smer, aktualizujDisplej); //kontrola aktualizovania; ci sa rozsvieti spravna sipka a zobrazi sa spravne poschodie + aktualizujDisplej=0xFF; + } +} + +/** +*Funkcia na aktualizovanie smeru sipky a cisla poschodia na displeji +*@param smerSipky - smer sipky na displeji +*@param cisloPoschodia - cislo poschodia na displeji +*/ +void zmenDisplejNa(unsigned char smerSipky, unsigned char cisloPoschodia) +{ + unsigned char poleD[2]; + poleD[0] = smerSipky; + poleD[1] = cisloPoschodia; + posliPaket(0x30,0x02,poleD); //komu: tato adresa je displey s cifernikom a sipkami + aktualizujDisplej = 0xFF; +}