Benedikt Kicin, vytah semestralka

Dependencies:   mbed

Committer:
kicin2
Date:
Wed Jan 24 07:55:50 2018 +0000
Revision:
0:2574b54351ed
kicin2 vytah

Who changed what in which revision?

UserRevisionLine numberNew 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 }