/*
 * Diplomová práce:     Meteostanice 2013
 * Autor práce:         Pavel Beneděla
 * Vedoucí práce:       Ing. Marie Havlíková, Ph.D.
 * Mikroprocesor:       PIC18F4520 (využito 66% ROM paměti, 16% RAM paměti)
 * Pracovní kmitočet:   20.000 MHz
 * Compiler:            CCS PCH V4.128
 * Poslední úprava:     04/03/2013
 */

  #include "knihovny/nokia.c"   //knihovna pro ovládání LCD
  #include "knihovny/sht11.c"   //knihovna pro ovládání SHT11
  #include "knihovny/ds1307.c"  //knihovna pro ovládání RTC
  #include "knihovny/ads1100.c" //knihovna pro ovládání A/D převodníku

  void natoceni();                                               //Funkce měří směr větru
  void shtx();                                                   //Funkce měří teplotu a relativní vlhkost vzduchu
  void senddata (char posli);                                    //Funkce odesílá zakódované data přes uart
  void nacti_nastaveni(void);                                    //Funkce načte nastavení a data z EEPROM
  void odesilani_maxim (void);                                   //Funkce připravuje a odesílá denní minima a maxima
  void mer_tlak (void);                                          //Funkce měří atmosférický tlak
  void mer_datum (void);                                         //Funkce vyčte datum a čas z RTC
  void mer_srazky (void);                                        //Funkce upraví naměřené srážky do pole
  void nulovani_pulnoc (void);                                   //Funkce nuluje denní naměřené maxima a minima
  void cista_obrazovka(void);                                    //Funkce vytiskne úvodní obrazovku
  void menu (void);                                              //Funkce zobrazí hlavní menu stanice
  void Maxima(void);                                             //Funkce tiskne teplotní minima a maxima na displej
  void Maxima2(void);                                            //Funkce tiskne maxima a minima rel. vlhkosti na displej
  void Maxima3(void);                                            //Funkce tiskne maxima a minima atm. tlaku na displej
  void Vyska(void);                                              //Funkce pro nastavení nadm. výšky stanice
  void Time( void);                                              //Funkce vyčte aktuální datum a čas z RTC
  void Smaz(void);                                               //Funkce maže data na EEPROM
  void Srazky_m(void);                                           //Funkce tiskne na displej denní a roční srážky
  void set_Position( unsigned char Sign);                        //Funkce nastavuje kurzor při nastavování data a času
  void IncDecSign( unsigned Sign, unsigned direct);              //Funkce přičítá/odečítá hodnotu při nastavování času a data
  int16 ulozvyska(void);                                         //Funkce přepočítává atm. tlak podle nadm. výšky
  char send_char (char retez[],unsigned int kontrolni);          //Funkce zakóduje data do manchester kódu
  unsigned int16 read_pamet (BYTE high, BYTE low);               //Funkce načte data z EEPROM
  void write_pamet(unsigned int16 vstup, BYTE high, BYTE low);   //Funkce uloží data do EEPROM

