// Jazykove verze //================================================ //=============================================================================================================================================== #ifdef CZ_language // CZ: //---------------------------------------------- // retezec, ktery se pouziva k formatovanemu vystupu na SD kartu, nebo do serioveho terminalu // index pole 100x 111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111122222222222222222222222222222222222222222222222222222222222 // index pole 10x 111111111122222222223333333333444444444455555555556666666666777777777788888888889999999999000000000011111111112222222222333333333344444444445555555555666666666677777777778888888888999999999900000000001111111111222222222233333333334444444444555555555 // index pole 1x 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678 // ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- char hlavicka[] = " pol. ; EEPROM ; sek_1970 ; datum ; cas ; dvt; zona ; jas ; jas ;adr.;cid.; pozn. ; stab_jas ; infra ; full ; [ms]; citl. ;teplota; tep.'C ;vlhkost; vlh. % ; tlak ; GEO_lat ; GEO_long ; ALT ; naklon ; azm ; S_el ; M_el ; M_sv \0"; // priklad " 00018 ; 000823 ; 1609232363 ; 29.12.2020 ; 08:59:23 ; Ut ; SEC ; 08881 ; 08,881 ; 01 ; 01 ; komun ; STABIL ; 17989 ; 48311 ; 600 ; 428x ; 07196 ; +21,96 ; 05151 ; 051,51 ; 093410 ; +49,457154 ; +120,457156 ; -1234 ; +165.8 ; 123 ; -45 ; -27 ; 58 \0"; #define lng001 "Vlhkost: " #define lng002 "Teplota bez korekce: " #define lng003 "Teplota s korekci podle tabulky: " #define lng004 "Absolutni tlak (bez prepoctu na hladinu more): " #define lng005 "Nastavena zona " #define lng006 "Vstup mimo rozsah " #define lng007 "(10 az 255)" #define lng008 "Plosny jas bez korekce: " #define lng009 "Plosny jas s korekci podle tabulky: " #define lng010 "Automat vypnuty" #define lng011 "Automaticky spoustet mereni po " #define lng012 "Aktualne je aktivni cidlo: " #define lng013 "Plosny jas bez kalibracni korekce: " #define lng014 "Teplota bez kalibracni korekce: " #define lng015 "Prumerovat " #define lng016 " mereni" #define lng017 "(1-20)" #define lng018 "Rozhodovaci uroven pro stabilni jas je nastavena na " #define lng019 "SLAVE adresa: " #define lng020 "(1-15)" #define lng021 "CRC se nekontroluje" #define lng022 "CRC se testuje" #define lng023 "CRC se testuje, chyby se hlasi do USB seriove linky" #define lng024 "Do EEPROM se budou ukladat zaznamy s hodnotou plosneho jasu vetsi (tmavsi) nez " #define lng025 "(0-255)" #define lng026 "Zadany pocet vstupu pro cidla na expanzni desce: " #define lng027 "(0 az 7)" #define lng028 " puvodni: EEPROM[" #define lng029 "Nastaveny defaultni kalibracni hodnoty pro cidlo jasu" #define lng030 "Nastaveny defaultni kalibracni hodnoty pro teplotu" #define lng031 "Nastaveny defaultni parametry" #define lng032 " " // rezerva #define lng033 " " // rezerva #define lng034 " " // rezerva #define lng035 " " // rezerva #define lng036 "j ... zmer plosny jas - bez ukladani" #define lng037 "v ... zmer vlhkost - bez ukladani" #define lng038 "t ... zmer teplotu - bez ukladani" #define lng039 "p ... zmer tlak - bez ukladani" #define lng040 "z 0 ... prepnout na zimni zonu" #define lng041 "z 1 ... prepnout na letni zonu" #define lng042 "a nnn ... nastaveni automatickeho spousteni 0-255 minut" #define lng043 "e n ... pri pouziti expanzni desky prepne na zvolene cidlo (1-7)" #define lng044 "r ... vypis poslednich 100 zaznamu z EEPROM" #define lng045 "rp ... vypis posledniho zaznamu z EEPROM" #define lng046 "ra ... vypis vsech zaznamu z EEPROM" #define lng047 "rz nnnnn ... vypis jednoho zvoleneho zazamu" #define lng048 "c ... aktualni cas" #define lng049 "i ... informace o aktualnim nastaveni systemu" #define lng050 "h ... zobrazeni hlavicky pro formatovany vystup" #define lng051 "m ... spusteni vsech mereni se zapisem do EEPROM" #define lng052 "kj ... kalibracni mereni jasu (vystup bez korekce)" #define lng053 "kt ... kalibracni mereni teploty (vystup bez korekce)" #define lng054 "#? ... napoveda pro dalsi funkce" #define lng055 "#Tyyyymmddhhnnss ... nastaveni casu" #define lng056 "#P nn ... nastaveni poctu prumerovani jasu (1-20)" #define lng057 "#S nnn ... nastaveni urovne stability (0-255)" #define lng058 "#I ... detailni informace o kalibraci vnitrnich hodin" #define lng059 "#A nn ... nastaveni SLAVE adresy pro komunikaci (1-15)" #define lng060 "#C 0 ... vypnuti CRC kontroly pro RS485" #define lng061 "#C 1 ... zapnuti CRC kontroly pro RS485" #define lng062 "#O? ... nastaveni oddelovacu" #define lng063 "#FS ... SOFT format EEPROM" #define lng064 "#FH ... HARD format EEPROM" #define lng065 "#U nnn ... hranice jasu pro ukladani - v desetinach mag/arcsec2 (0-255)" #define lng066 "#KJ n;x;y* ... zapis bodu do kalibracni tabulky jasu" #define lng067 "#KT n;x;y* ... zapis bodu do kalibracni tabulky teploty" #define lng068 "@W addr,data ... primy zapis do EEPROM" #define lng069 "@R addr ... prime cteni z EEPROM" #define lng070 "@E ... test postupneho prepinani cidel na expanzni desce" #define lng071 "@X n ... nastaveni poctu vstupu na expanzni desce (1-7)" #define lng072 "@DS ... defaultni kalibracni hodnoty pro jas" #define lng073 "@DT ... defaultni kalibracni hodnoty pro teplotu" #define lng074 "@DP ... defaultni parametry systemu" #define lng075 " " // rezerva #define lng076 "@@ ... softwarovy RESET" #define lng077 "Oddelovac polozek: " #define lng078 "mezera" #define lng079 "carka" #define lng080 "strednik" #define lng081 "tabulator" #define lng082 "Oddelovac desetinnych mist: " #define lng083 "tecka" #define lng084 "Uzavirat" #define lng085 "Neuzavirat" #define lng086 " hodnoty do uvozovek" #define lng087 "Na zacatku souboru se hlavicka vytvaret " #define lng088 "bude." #define lng089 "nebude." #define lng090 "#O,1 ... des. oddelovac: carka" #define lng091 "#O,0 ... des. oddelovac: tecka" #define lng092 "#O\"1 ... uzavirat polozky do uvozovek" #define lng093 "#O\"0 ... neuzavirat polozky do uvozovek" #define lng094 "#Oh1 ... vytvaret hlavicky" #define lng095 "#Oh0 ... nevytvaret hlavicky" #define lng096 "#Oo_ ... oddelovac polozek: mezera" #define lng097 "#Oo, ... oddelovac polozek: carka" #define lng098 "#Oo; ... oddelovac polozek: strednik" #define lng099 "#Oot ... oddelovac polozek: tabulator" #define lng100 "Varovani: oddelovac polozek i desetinnych mist je carka." #define lng102 "(merena hodnota max 24 mag/arcsec2 = 24000)" #define lng103 "(skutecna hodnota max 24 mag/arcsec2 = 24000)" #define lng104 "zadane kalibracni hodnoty pro plosny jas:" #define lng105 "pozice - merena hodnota - (mag/arcsec2) - spravna hodnota - (mag/arcsec2)" #define lng106 "(pozice 1 az 7)" #define lng107 "(merena hodnota max. 50'C = 10000)" #define lng108 "(zobrazena hodnota max. 50'C = 10000)" #define lng109 "zadane kalibracni hodnoty pro teplotu:" #define lng110 "pozice / merena hodnota ('C) / zobrazena hodnota ('C)" #define lng111 "Casova zona: " #define lng112 "\r\nOddelovace:" #define lng113 " Polozky v souboru: " #define lng114 " Desetinny oddelovac: " #define lng115 " Uzavirat polozky do uvozovek" #define lng116 " Neuzavirat polozky do uvozovek" #define lng117 " Do souboru vkladat hlavicky" #define lng118 " Hlavicky do souboru nevkladat" #define lng119 "\r\nAutomat:" #define lng120 " Bez automatickeho mereni" #define lng121 " Spoustet mereni kazdych " #define lng122 " minut." #define lng123 "\r\nPrumerovat " #define lng124 " mereni plosneho jasu" #define lng125 "Kontrolni bajt se pri komunikaci pres RS485 nevyhodnocuje." #define lng126 "Pri komunikaci pres RS485 je nutne odesilat spravny kontrolni bajt." #define lng127 "Rozhodovaci rozdil pro stabilni/nestabilni jas je " #define lng128 "Do EEPROM se ukladaji zaznamy s plosnym jasem nad (tmavsi nez) " #define lng129 "Unikatni identifikace: " #define lng130 "\r\nHardware:" #define lng131 " Procesor: STM32F103CB (BluePill) - 128kB progMEM" #define lng132 " Cidlo jasu: TSL2591" #define lng133 " Cidlo vlhkosti a teploty: DHT11" #define lng134 " Cidlo vlhkosti a teploty: DHT22" #define lng135 " Cidlo vlhkosti, teploty a tlaku: BME280" #define lng136 " SD karta: " #define lng137 "zasunuta" #define lng138 "vysunuta" #define lng139 "nepouziva se" #define lng140 " Displej: 5x7 segmentu (TM1637)" #define lng141 " Pouze signalizacni LED" #define lng142 " Pocet vstupu rozsirujici desky: " #define lng143 " Aktualne aktivni cidlo jasu: " #define lng144 "\r\nEEPROM:" #define lng145 " Zacatek oblasti pro data: " #define lng146 " Konec oblasti pro data: " #define lng147 " Pristi zaznam se ulozi na adresu: " #define lng148 " Jeden zaznam v EEPROM je dlouhy: " #define lng149 " bajtu" #define lng150 " obsahuje tyto polozky: " #define lng151 " - plosny jas ANO" #define lng152 " - teplota " #define lng153 "ANO" #define lng154 "NE" #define lng155 " - tlak " #define lng156 " - vlhkost " #define lng157 " - infra slozka svetla " #define lng158 " - full svetlo " #define lng159 " - ctrl registr TSL2591 " #define lng160 "\r\nKalibrace cidla teploty" #define lng161 "index ; merena ; skutecna" #define lng162 "\r\nKalibrace cidla plosneho jasu [" #define lng163 "index ; merene ; skutecne" #define lng164 "SOFT format EEPROM ..." #define lng165 "HARD format EEPROM ..." #define lng166 "Formatovani EEPROM ukonceno." #define lng167 "Zvolena polozka je mimo rozsah EEPROM (1 - " #define lng168 "Zadny ulozeny zaznam" #define lng169 "Kontrolni bajt nesouhlasi:" #define lng170 " ocekavane CRC: " #define lng171 " prijate CRC: " #define lng172 "Pro tuto funkci nelze pouzit univerzalni adresu 127." #define lng173 "univerzalni pozadavek vykonan" #define lng174 "Informace o RTC" #define lng175 "Aktualne je " #define lng176 "Cas v RTC bez korekci (UTC): " #define lng177 "Cas posledniho serizeni RTC (data z EEPROM) (UTC): " #define lng178 " ... v sekundach od 1.1.1970: " #define lng179 " ... v citelnem tvaru: " #define lng180 "Interval od posledniho nastaveni casu: " #define lng181 "Korekce casu (data z EEPROM): " #define lng182 " ... ulozene cislo v HEX formatu : " #define lng183 " ... sekunda se " #define lng184 "odecita" #define lng185 "pricita" #define lng186 " kazdych " #define lng187 " sekund od posledniho serizeni." #define lng188 " (to je asi " #define lng189 " hodin)" #define lng190 " dni)" #define lng191 " roku)" #define lng192 "Zatim se takto melo pridat/ubrat: " #define lng193 " extra sekund." #define lng194 "Takze zkorigovany cas pro zobrazeni je: " #define lng195 "Prijato: " #define lng197 "Rok: " #define lng198 "Mesic: " #define lng199 "Den: " #define lng200 "Hodina: " #define lng201 "Minuta: " #define lng202 "Sekunda: " #define lng203 "Rozdil mezi casem v RTC a zadanym casem [s]: " #define lng204 "Chyba RTC (sekunda se ma korigovat casteji, nez za 5 minut)." #define lng205 "Automaticka kalibrace RTC zrusena." #define lng206 " - GPS souradnice " #define lng207 "Do EEPROM se ukladaji vsechny zaznamy" #define lng208 "@G ... vypis dat z GPS modulu" #define lng209 "@S n ... rychlost seriove komunikace (0=9600; 1=19200; 2=38400; 3=115200)" #define lng210 "kalibracni bod smazan" #define lng211 " " // rezerva #define lng212 "#E ... vypis pozorovacich stanovist" #define lng213 "#ETn text ... editace textu u pozorovacich stanovist" #define lng214 "#EGn g,g,g,g,g ... editace grafiky u pozorovacich stanovist" #define lng215 "Zapis do 'RTC_set.csv' POVOLEN" #define lng216 "Zapis do 'RTC_set.csv' ZAKAZAN" #define lng217 "@> ... vypis souboru RTC_set.csv" #define lng218 "@/ ... povolit/zakazat zapis do souboru RTC_set.csv" #define lng219 "Velka odchylka mezi novym casem a casem v RTC" #define lng220 "Kratky interval od posledniho serizeni (< 1 den)" #define lng221 "Dlouhy interval od posledniho serizeni (> pul roku)" #define lng222 "@P ... povolit/zakazat pipani" #define lng223 "Pipani povoleno" #define lng224 "Pipani zakazano" #define lng225 "rh nnnnn ... vypsat zaznamy z poslednich 'nnnnn' hodin" #define lng226 "n ... zobrazit aktualni naklon" #define lng227 "#Nk ... Kalibrace naklonomeru" #define lng228 " - naklon " #define lng229 " Aktualni naklon: " #define lng230 "#Ni ... Info o naklonomeru" #define lng231 " " // rezerva #define lng232 "Poloz SQM horizontalne" #define lng233 "\r\n\r\nPostav SQM svisle" #define lng234 "\r\n\r\nChyba kalibrace naklonu - nastavuji defaultni hodnoty" #define lng235 " " // rezerva #define lng236 " - poloha Slun. a Mes. " #define lng237 "Aktualni souradnice pro astro vypocty (delka / sirka): " #define lng238 "Domaci zemepisna sirka: " #define lng239 "Domaci zemepisna delka: " #define lng240 "@Gs nnn ... domaci zemepisna sirka pro astro vypocty" #define lng241 "@Gd nnn ... domaci zemepisna delka pro astro vypocty" #define lng242 "@Gz nn ... domaci zimni casova zona" #define lng243 "@Gl nn ... domaci letni casova zona" #define lng244 "Casovy posun zima/leto: " #define lng245 "x ... zmer osvetleni (lux) - bez ukladani" #define lng246 "@Gp SEC SELC ... textovy popis pro zimni a letni casovou zonu" #define lng247 "Aktivni odpocet: " #define lng248 "#Xa n.nn ... kalibrace luxmetru - parametr 'a'" #define lng249 "#Xb n.nn ... kalibrace luxmetru - parametr 'b'" #define lng263 "#Xc n.nn ... kalibrace luxmetru - parametr 'c'" #define lng264 " - azimut " #define lng265 " Kompas / naklon : LSM303DLHC" #define lng266 "#Mk ... kalibrace magnetometru (kompasu)" #define lng267 "Chyba kalibrace kompasu" #define lng268 "s ... smer natoceni (azimut)" #define lng269 "Azimut: " #define lng270 "@Z ... Zapsat parametry na SD" #define lng271 "@O ... Obnovit parametry z SD" #define lng272 "MODBUS: zapnuty" // popisky do CSV zaznamu - NUTNO DODRZET PRESNY POCET ZNAKU (dlouhe texty zkratit, kratke doplnit mezerami) #define lng254 " STABIL " // znacka stabilniho jasu #define lng255 " NESTAB " // znacka nestabilniho jasu #define lng256 "tl_UP" // znacka, ze bylo mereni spusteno tlacitkem "Sipka nahoru" #define lng257 "tl_DN" // znacka, ze bylo mereni spusteno tlacitkem "Sipka dolu" #define lng258 "tl_OK" // znacka, ze bylo mereni spusteno tlacitkem "OK" #define lng259 "komun" // znacka, ze bylo mereni spusteno pres komunikacni linku (USB nebo RS485) #define lng260 " auto" // znacka, ze bylo mereni spusteno automatickym casovacem #define lng261 "kalib" // znacka, ze je zaznamenana hodnota svetla bez kalibracni korekce #define lng262 "Ka-Pr" // znacka, ze je zaznamenana hodnota matematickym prumerem z predchozich 10 vzorku svetla bez kalibracni korekce // prirazeni znakovych kodu pro funkce spoustene pres USB seriovou linku // bezne funkce (bez znacky) // v kazdem sloupci musi byt znak unikatni #define USB_fce_1_01 'v' // ... zmer vlhkost - bez ukladani #define USB_fce_1_02 't' // ... zmer teplotu - bez ukladani #define USB_fce_1_03 'p' // ... zmer tlak - bez ukladani #define USB_fce_1_04 'j' // ... zmer plosny jas - bez ukladani #define USB_fce_1_05 'z' // ... prepnout na SEC ("z0") nebo SELC ("z1") #define USB_fce_1_06 'a' // ... nastaveni automatickeho spousteni 0-255 minut #define USB_fce_1_07 'e' // ... pri pouziti expanzni desky prepne na zvolene cidlo (1-7) #define USB_fce_1_08 'r' // ... vypis zaznamu z EEPROM (bez dalsiho parametru vypise poslednich 100 zaznamu) #define USB_fce_1_09 'p' // ... "rp" ... vypis posledniho zaznamu #define USB_fce_1_10 'a' // ... "ra" ... vypis vsech zaznamu #define USB_fce_1_11 'z' // ... "rz" ... vypis jednoho vybraneho zaznamu #define USB_fce_1_19 'h' // ... "rh" ... vypis zaznamu za posledni obdobi (treba za posledni den) #define USB_fce_1_23 'x' // ... "rx" ... vypis posledniho zaznamu ve formatu pro software od Unihedronu (experimentalni - vypnuto) #define USB_fce_1_12 'c' // ... aktualni datum a cas #define USB_fce_1_13 'i' // ... informace o aktualnim nastaveni systemu #define USB_fce_1_25 'x' // ... "ix" informace o zarizeni ve formatu pro software od Unihedronu (experimentalni - vypnuto) #define USB_fce_1_14 'h' // ... zobrazeni hlavicky pro formatovany vystup #define USB_fce_1_15 'm' // ... spusteni vsech mereni se zapisem do EEPROM #define USB_fce_1_16 'k' // ... kalibrace #define USB_fce_1_17 'j' // ... kalibrace jasu ("kj") #define USB_fce_1_18 't' // ... kalibrace teploty ("kt") #define USB_fce_1_20 'n' // ... n aktualni naklon #define USB_fce_1_21 'x' // ... zmer osvetleni (lux) #define USB_fce_1_22 's' // ... zjisti smer natoceni (azimut) #define USB_fce_1_24 'R' // ... "R...." ... vypis posledniho zaznamu ve formatu pro software od Unihedronu (experimentalni - vypnuto) // servisni funkce (se znackou '#') // v kazdem sloupci musi byt znak unikatni #define USB_fce_2_01 'T' // ... #T = nastaveni datumu a casu #define USB_fce_2_02 'P' // ... #P = nastaveni poctu prumerovani #define USB_fce_2_03 'S' // ... #S = nastaveni urovne stability (0-255) #define USB_fce_2_04 'I' // ... #I = detailni informace o kalibraci vnitrnich hodin #define USB_fce_2_05 'A' // ... #A = nastaveni SLAVE adresy pro komunikaci (1-15) #define USB_fce_2_06 'C' // ... #C zapnuti, nebo vypnuti kontroly CRC pro seriovou komunikaci (#C0=CRC se nekontroluje; #C1=CRC se kontroluje; #C2=jako #C1 ale s vypisem chyb do USB) #define USB_fce_2_07 'O' // ... #O nastaveni oddelovacu #define USB_fce_2_08 'o' // ... #Oo = oddelovac polozek (nasleduje jeste jeden znak, ktery urcuje oddelovac: #Oo, ; #Oo; ; #Oo_ ; #Oot) #define USB_fce_2_09 ',' // ... #O, = carka jako desetinny oddelovac (#O,0 = vypnout carku, zapnout tecku #O,1 = zapnout carku, vypnout tecku) #define USB_fce_2_10 '"' // ... #O" = uzavirat nebo neuzavirat polozky do uvozovek (#O"1 = uzavirat #O"0 = neuzavirat) #define USB_fce_2_11 'h' // ... #Oh = zapisovat nebo nezapisovat hlavicku do souboru (#Oh0 = nezapisovat #Oh1 = zapisovat) #define USB_fce_2_12 'F' // ... #F formatovani EEPROM (nasleduje jeste jeden znak pro urceni zpusobu mazani dat) #define USB_fce_2_13 'S' // ... #FS = SOFT format #define USB_fce_2_14 'H' // ... #FH = HARD format #define USB_fce_2_15 'U' // ... #U = hranice jasu pro ukladani zaznamu do EEPROM #define USB_fce_2_16 'K' // ... #K zapis bodu kalibracni tabulky (nasleduje jeden znak pro urceni tabulky) #define USB_fce_2_17 'J' // ... kalibracni tabulka pro svetlo (#KJ) #define USB_fce_2_18 'T' // ... kalibracni tabulka pro teplotu (#KT) #define USB_fce_2_19 'E' // ... #E editace pozorovacich stanovist #define USB_fce_2_20 'T' // ... textove popisy #define USB_fce_2_21 'G' // ... graficke popisy na displeje #define USB_fce_2_22 'N' // ... #N nastaveni naklonomeru #define USB_fce_2_24 'i' // ... informace o naklonomeru (#Ni) #define USB_fce_2_23 'k' // ... kalibrace naklonomeru (#Nk) #define USB_fce_2_27 'X' // ... #X kalibrace luxmetru #define USB_fce_2_28 'a' // ... #Xa parametr 'a' #define USB_fce_2_29 'b' // ... #Xb parametr 'b' #define USB_fce_2_30 'c' // ... #Xc parametr 'c' #define USB_fce_2_31 'M' // ... #M Magnetometr (kompas) #define USB_fce_2_32 'k' // ... #Mk kalibrace // tajne funkce (se znackou '@') // v kazdem sloupci musi byt znak unikatni #define USB_fce_3_01 'E' // ... @E = test postupneho prepinani cidel na expanzni desce #define USB_fce_3_02 'X' // ... @X = nastaveni poctu vstupu na expanzni desce (1-7) #define USB_fce_3_03 'R' // ... @R = prime cteni dat z EEPROM #define USB_fce_3_04 'W' // ... @W = primy zapis hodnoty do EEPROM #define USB_fce_3_05 'D' // ... @D obnoveni defaultnich hodnot (nasleduje 1 znak pro urceni toho, co se ma obnovit) #define USB_fce_3_06 'S' // @DS = obnoveni kalibracnich hodnot pro svetlo #define USB_fce_3_07 'T' // @DT = obnoveni kalibracnich hodnot pro teplotu #define USB_fce_3_08 'P' // @DT = obnoveni parametru systemu #define USB_fce_3_10 '@' // ... @@ = reset #define USB_fce_3_11 'G' // ... @G = vypis dat z GPS modulu #define USB_fce_3_19 's' // ... @Gs = nastaveni domaci zemepisne sirky (latitude) pro pozorovaci stanoviste (pouziva se pro vypocet elevace slunce a Mesice) #define USB_fce_3_20 'd' // ... @Gd = nastaveni domaci zemepisne delky (longitude) pro pozorovaci stanoviste (pouziva se pro vypocet elevace slunce a Mesice) #define USB_fce_3_21 'z' // ... @Gz = nastaveni domaci casove zony pro "zimni" cas #define USB_fce_3_22 'l' // ... @Gl = nastaveni domaci casove zony pro "letni" cas #define USB_fce_3_23 'p' // ... @Gp = nastaveni textovych popisku pro zimni a letni cas #define USB_fce_3_12 'S' // ... @S = nastaveni rychlosti seriove komunikace #define USB_fce_3_15 '>' // ... @> = vypis souboru "RTC_set.csv" do seriove linky #define USB_fce_3_16 '/' // ... @/ = Zapnuti nebo vypnuti zapisu informaci o nastaveni RTC obvodu do souboru "RTC_set.csv #define USB_fce_3_17 'P' // ... @P = povolit/zakazat pipani #define USB_fce_3_18 '*' // ... @* nnn = nezdokumentovana servisni funkce pro vypis jednoho zaznamu z EEPROM v HEX formatu #define USB_fce_3_24 'Z' // ... @Z zapsat systemove parametry na SD kartu #define USB_fce_3_25 'O' // ... @O obnovit systemove parametry z SD karty String dny[] = {"--", "Po" , "Ut" , "St" , "Ct" , "Pa" , "So" , "Ne"}; // pro vypis nazvu dni pro indexy 1 (pondeli) az 7 (nedele) (0 se nepouzije) // A=1 // ###### // # # // F=32 # # B=2 // # G=64 # // ###### // # # // E=16 # # C=4 // # # // ###### ## DP=128 priklady: // D=8 ## 'A' = A + B + C + F + E + G = 1 + 2 + 4 + 32 + 16 + 64 = 119 // 'L' = F + E + D = 32 + 16 + 8 = 56 #ifdef displej_TM1637_5 byte dis_popisy[70][5] = // graficke definice 5-znakovych textu na displej { // --- menu --- { 56, 48, 109, 120, 0} , // "LI5t " [0] { 119, 28, 120, 92, 0} , // "Auto " [1] { 91, 92, 84, 119, 0} , // "2onA " [2] { 57, 119, 56, 48, 124} , // "CALIb" [3] { 94, 119, 120, 28, 55} , // "dAtuM" [4] { 57, 119, 109, 0, 0} , // "CA5 " [5] { 120, 121, 115, 56, 0} , // "tEPL " [6] { 62, 56, 118, 0, 0} , // "VLH " [7] { 30, 119, 109, 0, 0} , // "JA5 " [8] { 118, 92, 64, 55, 4} , // "Ho-Mi" [9] { 115, 80, 28, 55, 0} , // "PruM " [10] { 56, 121, 94, 0, 0} , // "LEd " [11] { 109, 120, 92, 115, 0} , // "StoP " [12] (stopky) { 125, 115, 109, 0, 0} , // "6P5 " [13] (GPS) { 109, 120, 119, 84, 0} , // "5tAn " [14] (Stan) Pozorovaci stanoviste { 73, 109, 115, 121, 57} , // "#SPEC" [15] Specialni funkce (zap/vyp) { 73, 0, 4, 84, 120} , // "# int" [16] Prvni parametr specialnich funkci { 73, 115, 119, 80, 91} , // "#PAr2" [17] Druhy parametr specialnich funkci { 73, 115, 119, 80, 79} , // "#PAr3" [18] Treti parametr specialnich funkci { 73, 113, 57, 121, 6} , // "#FCE1" [19] Spusteni prvniho podprogramu specialnich funkci { 73, 113, 57, 121, 91} , // "#FCE2" [20] Spusteni druheho podprogramu specialnich funkci { 73, 57, 92, 115, 110} , // "#CoPy" [21] Prenos dat ze specialni funkce na SD kartu { 28, 118, 121, 56, 0} , // "uHEL " [22] Naklonomer { 109, 56, 64, 55, 121} , // "5L-ME" [23] Poloha Slunce a Mesice { 92, 94, 115, 92, 88} , // "odPoc" [24] Odpocet / casovac / budik { 57, 92, 55, 115, 119} , // "CoMPA" [25] Kompas { 80, 119, 64, 94, 121} , // "rA-De" [26] Rektascenze - Deklinace { 62, 92, 56, 120, 110} , // "VoLty" [27] mereni napeti na zdroji { 0, 0, 0, 0, 0} , // " " [28] { 64, 64, 64, 64, 64} , // "-----" [29] { 121, 80, 80, 64, 109} , // "Err-5" [30] chyba kalibracni tabulky svetla ("5" = "S") { 121, 80, 80, 64, 120} , // "Err-t" [31] chyba kalibracni tabulky teploty { 84, 92, 57, 92, 80} , // "noCor" [32] zobrazeni prubezneho jasu bez korekce { 0, 57, 92, 80, 80} , // " Corr" [33] zobrazeni prubezneho jasu s korekci { 80, 121, 113, 8, 62} , // "rEF_U" [34] test analogoveho vstupu pro referencni napeti { 62, 8, 124, 119, 120} , // "U_bAt" [35] test analogoveho vstupu pro napeti baterie { 64, 56, 92, 88, 64} , // "-Loc-" [36] bocni tlacitko zablokovano { 109, 94, 64, 121, 80} , // "5d-Er" [37] (chyba SD karty) { 109, 119, 62, 121, 0} , // "SAVE " [38] { 124, 28, 109, 109, 110} , // "bu55y" [39] { 121, 80, 80, 64, 4} , // "Err-i" [40] chyba I2C komunikace s cidlem svetla, EEPROM, nebo BME280 { 121, 80, 80, 64, 125} , // "Err-6" [41] chyba GPS - je zasunuty, ale nekomunikuje ("6" = "G") { 94, 121, 113, 119, 0} , // "dEFA " [42] (obnoveni defaultnich parametru) { 73, 64, 92, 84, 0} , // "#-on " [43] specialni funkce zapnuty (# znaci tri pomlcky nad sebou) { 73, 64, 92, 113, 113} , // "#-oFF" [44] specialni funkce vypnuty { 84, 92, 64, 109, 94} , // "no-5d" [45] neni zasunuta SD karta (toto hlaseni se zobrazuje jen pri startu) { 80, 121, 109, 121, 120} , // "rE5Et" [46] Reset { 84, 64, 57, 119, 56} , // "n-CAL" [47] kalibrace naklonomeru { 128, 0, 0, 0, 0} , // ". " [48] tecka na leve sedmisegmentovce siglalizuje mereni pomoci automatu { 1, 1, 1, 1, 1} , // "^^^^^" [49] Horni segmenty na vsech segmentovkach (cislo je pres rozsah) { 56, 28, 118, 55, 0} , // "LuHM " [50] prepnuto na rezim mereni luxu (LuXMeter) - 'X' se na displeji nepovedno, takze vypada jako 'H' { 109, 103, 55, 0, 0} , // "5qM " [51] prepnuto na puvodni rezim SQM - mereni mag/arcsec2 { 0, 128, 0, 0, 0} , // " . " [52] tecka na druhe sedmisegmentovce zleva siglalizuje mereni pomoci seriove linky { 119, 56, 119, 80, 55} , // "ALArM" [53] { 55, 121, 84, 28, 0} , // "MEnu " [54] zobrazi se pri vstupu do rezimu vypinani / zapinani polozek v menu { 121, 80, 80, 64, 84} , // "Err-n" [55] chyba naklonomeru pri mereni jasu { 55, 4, 64, 109, 121} , // "Mi-5E" [56] rezim zobrazeni casu "Minuty-Sekundy" { 0, 91, 4, 55, 119} , // " ZiMA" [57] (Zima - SEC) { 0, 56, 121, 120, 92} , // " LEto" [58] (Leto - SELC) { 57, 64, 57, 119, 56} , // "C-CAL" [59] kalibrace kompasu { 121, 80, 80, 64, 57} , // "Err-C" [60] chyba kalibrace { 121, 80, 80, 64, 80} , // "Err-r" [61] chyba RTC (rok je mensi nez 2020) { 118, 56, 121, 94, 119} , // "HLEdA" [62] mireni na zadane RA/Dec souradnice s pipanim { 121, 80, 80, 64, 113} , // "Err-F" [63] chyba formatovani (predcasne ukonceni tlacitkem) { 118, 92, 80, 4, 0} , // "Hori " [64] Horizontalne - pri kalibraci naklonomeru { 62, 121, 80, 120, 0} // "UErt " [65] Vertikalne - pri kalibraci naklonomeru }; #endif // prvni znaky na displeji, ktere jsou zobrazeny pri nastavovani, nebo zobrazovani polozek v podmenu (graficke definice znaku na 7-seg displeji) byte znak_V = 62 ; // "V" zobrazeni vlhkosti byte znak_A = 119 ; // "A" nastaveni automatu byte znak_P = 115 ; // "P" nastaveni prumerovani byte znak_d = 94 ; // "d" nastaveni dni byte znak_M = 55 ; // "M" nastaveni mesicu / minut byte znak_r = 80 ; // "r" nastaveni roku byte znak_H = 118 ; // "H" nastaveni hodin byte znak_L = 56 ; // "L" listovani v zaznamech byte znak_R1 = 80 ; // "r" prvni znak z polozky rektascenze (rA.) byte znak_R2 = 119 + 128; // "A." druhy znak z polozky rektascenze (rA.) byte znak_D1 = 94 ; // "d" prvni znak z polozky deklinace (dE.) byte znak_D2 = 121 + 128; // "E." druhy znak z polozky deklinace (dE.) byte znak_u = 28 ; // "u" pro uhlovou vzdalenost byte znak_eS = 109 ; // "S" elevace nebo azimut Slunce byte znak_eM = 55 ; // "M" elevace, azimut, nebo osvetleni Mesice byte znak_oM = 92 + 128; // "o." osvetleni Mesice byte znak_Atecka = 119 + 128; // "A." azimut (Slunce nebo Mesice) byte znak_Etecka = 121 + 128; // "E." elevace (Slunce nebo Mesice) byte znak_C = 57 ; // "C" kalibrace (napis "CAL.") byte znak_Ltecka = 56 + 128; // "L." kalibrace (napis "CAL.") // defaultni popisy pozorovacich stanovist String poz_st_txt[] = {"--", "Poz.Stan.1" , "Poz.Stan.2" , "Poz.Stan.3" , "Poz.Stan.4" , "Poz.Stan.5"}; // textovy popis prednastavenych pozorovacich stanovist (10 znaku) byte poz_st_gr[6][5] = // graficke definice 5-znakovych textu na displej { { 64, 64, 64, 64, 64} , // "-----" [0] { 109, 120, 119, 212, 6} , // "5tAn.1" [1] { 109, 120, 119, 212, 91} , // "5tAn.2" [2] { 109, 120, 119, 212, 79} , // "5tAn.3" [3] { 109, 120, 119, 212, 102} , // "5tAn.4" [4] { 109, 120, 119, 212, 109} // "5tAn.5" [5] }; #endif //=============================================================================================================================================== #ifdef EN_language // EN: //---------------------------------------------- char hlavicka[] = " ind. ; EEPROM ; sec_1970 ; date ; time ; wd ; zone ; bright; bright ;addr;sen.; descr.; Un/Stab ; infra ; full ; [ms]; gain ;temper ; temp 'C; humid ;humid % ; press. ; GEO_lat ; GEO_long ; ALT ; elev. ; azm ; S_el ; M_el ; M_il \0"; // example " 00018 ; 000823 ; 1609232363 ; 29.12.2020 ; 08:59:23 ; Tu ; CET ; 08881 ; 08,881 ; 01 ; 01 ; bt_DN ; UNSTAB ; 17989 ; 48311 ; 600 ; 428x ; 07196 ; +21,96 ; 05151 ; 051,51 ; 093410 ; +49,457154 ; +120,457156 ; -1234 ; +065.8 ; 123 ; -45 ; -27 ; 58 \0"; #define lng001 "Humidity: " #define lng002 "Temperature with no correction: " #define lng003 "Temperature with correction by correction table: " #define lng004 "Absolute pressure (no recalculate to sea level): " #define lng005 "Timezone " #define lng006 "Out of range " #define lng007 "(10-255)" #define lng008 "Light value with NO callibration corrections: " #define lng009 "Light value with callibration corrections: " #define lng010 "Automat OFF" #define lng011 "Timer for automatic measure " #define lng012 "Index of active light sensor: " #define lng013 "Light value with NO callibration corrections: " #define lng014 "Temperature value with NO callibration corrections: " #define lng015 "Average " #define lng016 " measures" #define lng017 "(1-20)" #define lng018 "Level for stabile light mark: " #define lng019 "SLAVE address: " #define lng020 "(1-15)" #define lng021 "CRC is not tested" #define lng022 "CRC is tested" #define lng023 "CRC is tested, mismatches are sending to USB Serial Line" #define lng024 "Write to EEPROM only values darkest than " #define lng025 "(0-255)" #define lng026 "Zadany pocet vstupu pro cidla na expanzni desce: " #define lng027 "(0 - 7)" #define lng028 " puvodni: EEPROM[" #define lng029 "Restore defaults for calibration table of light" #define lng030 "Restore defaults for calibration table of temperature" #define lng031 "Restore system parameters defaults" #define lng032 " " #define lng033 " " #define lng034 " " #define lng035 " " #define lng036 "l ... measure brightness - NO save" #define lng037 "v ... measure humidity - NO save" #define lng038 "t ... measure temperature - NO save" #define lng039 "p ... measure pressure - NO save" #define lng040 "z 0 ... switch to normal timezone - winter" #define lng041 "z 1 ... switch to DST timezone - summer" #define lng042 "a nnn ... automatic measure runs every 0-255 minutes" #define lng043 "e n ... pri pouziti expanzni desky prepne na zvolene cidlo (1-7)" #define lng044 "r ... dump last 100 records from EEPROM" #define lng045 "rp ... dump last record from EEPROM" #define lng046 "ra ... dump all records from EEPROM" #define lng047 "rz nnnnn ... dump one selected record" #define lng048 "c ... read current time from internal RTC" #define lng049 "i ... system info" #define lng050 "h ... show header for output list" #define lng051 "m ... run measure with record into EEPROM" #define lng052 "kj ... kalibracni mereni jasu (vystup bez korekce)" #define lng053 "kt ... kalibracni mereni teploty (vystup bez korekce)" #define lng054 "#? ... help for extended functions" #define lng055 "#Tyyyymmddhhnnss ... set date and time" #define lng056 "#P nn ... set count of measures for averages (1-20)" #define lng057 "#S nnn ... set of stability mark level (0-255)" #define lng058 "#I ... detailed information about internal RTC" #define lng059 "#A nn ... setup SLAVE address (1-15)" #define lng060 "#C 0 ... CRC check for RS485 - OFF" #define lng061 "#C 1 ... CRC check for RS485 - ON" #define lng062 "#O? ... setup of dividers" #define lng063 "#FS ... SOFT format EEPROM" #define lng064 "#FH ... HARD format EEPROM" #define lng065 "#U nnn ... set level of dark for save record into EEPROM - in 0.1x mag/arcsec2 (0-255)" #define lng066 "#KJ n;x;y* ... zapis bodu do kalibracni tabulky jasu" #define lng067 "#KT n;x;y* ... zapis bodu do kalibracni tabulky teploty" #define lng068 "@W addr,data ... direct write to EEPROM" #define lng069 "@R addr ... direct read from EEPROM" #define lng070 "@E ... test postupneho prepinani cidel na expanzni desce" #define lng071 "@X n ... nastaveni poctu vstupu na expanzni desce (1-7)" #define lng072 "@DS ... set default callibration for brightness sensor" #define lng073 "@DT ... set default callibration for temperature sensor" #define lng074 "@DP ... set default parameters of system" #define lng075 " " #define lng076 "@@ ... software RESET" #define lng077 "Divider of items: " #define lng078 "space" #define lng079 "comma" #define lng080 "semicolon" #define lng081 "tabulator" #define lng082 "Decimal divider: " #define lng083 "dot" #define lng084 "Use quotes along values" #define lng085 "Don't use quotes along values" #define lng086 " " #define lng087 "Header into CSV files: " #define lng088 "write." #define lng089 "don't write." #define lng090 "#O,1 ... decimal divider: comma" #define lng091 "#O,0 ... decimal divider: dot" #define lng092 "#O\"1 ... don't use quotes along values" #define lng093 "#O\"0 ... use quotes along values" #define lng094 "#Oh1 ... write headers" #define lng095 "#Oh0 ... don't write headers" #define lng096 "#Oo_ ... divider of items: space" #define lng097 "#Oo, ... divider of items: comma" #define lng098 "#Oo; ... divider of items: semicolon" #define lng099 "#Oot ... divider of items: tabulator" #define lng100 "warning: divider of values and decimal separator - both are comma!" #define lng102 "(merena hodnota max 24 mag/arcsec2 = 24000)" #define lng103 "(skutecna hodnota max 24 mag/arcsec2 = 24000)" #define lng104 "zadane kalibracni hodnoty pro plosny jas:" #define lng105 "pozice - merena hodnota - (mag/arcsec2) - spravna hodnota - (mag/arcsec2)" #define lng106 "(position 1 to 7)" #define lng107 "(merena hodnota max. 50'C = 10000)" #define lng108 "(zobrazena hodnota max. 50'C = 10000)" #define lng109 "zadane kalibracni hodnoty pro teplotu:" #define lng110 "pozice / merena hodnota ('C) / zobrazena hodnota ('C)" #define lng111 "Casova zona: " #define lng112 "\r\nOddelovace:" #define lng113 " Polozky v souboru: " #define lng114 " Decimal divider: " #define lng115 " use quotes along values" #define lng116 " don't use quotes along values" #define lng117 " Insert header to every file" #define lng118 " Don't insert header to every file" #define lng119 "\r\nAutomat:" #define lng120 " NO automatic trigger" #define lng121 " Runs every " #define lng122 " minutes." #define lng123 "\r\nAverage " #define lng124 " Light measurement" #define lng125 "Checksum byte in RS485 communication is not required." #define lng126 "Checksum byte in RS485 communication is required." #define lng127 "Rozhodovaci rozdil pro stabilni/nestabilni jas je " #define lng128 "Trigger level for saving records to EEPROM - Surface darkness than " #define lng129 "Unicate identification: " #define lng130 "\r\nHardware:" #define lng131 " Procesor: STM32F103CB (BluePill) - 128kB progMEM" #define lng132 " Light sensor: TSL2591" #define lng133 " Sensor of humidity and temperature: DHT11" #define lng134 " Sensor of humidity and temperature: DHT22" #define lng135 " Sensor of humidity, temperature and pressure: BME280" #define lng136 " SD card: " #define lng137 "inserted" #define lng138 "removed" #define lng139 "disabled" #define lng140 " Display: 5x7 segments (TM1637)" #define lng141 " Just only signaliztion LED" #define lng142 " Number of inputs of expansion sensor board: " #define lng143 " Index number of light sensor: " #define lng144 "\r\nEEPROM:" #define lng145 " Begin of records area: " #define lng146 " End of records area: " #define lng147 " Next record will write to EEPROM address: " #define lng148 " Lenght of one record in EEPROM is: " #define lng149 " bytes" #define lng150 " Contains these parts: " #define lng151 " - Surface brightness YES" #define lng152 " - temperature " #define lng153 "YES" #define lng154 "NO" #define lng155 " - pressure " #define lng156 " - humidity " #define lng157 " - infra part of light " #define lng158 " - full part of light " #define lng159 " - ctrl reg. of TSL2591 " #define lng160 "\r\nCallibration of temperature sensor" #define lng161 "index ; measured ; correct" #define lng162 "\r\nCallibration of light sensor [" #define lng163 "index ; measured ; correct" #define lng164 "SOFT format of EEPROM ..." #define lng165 "HARD format of EEPROM ..." #define lng166 "EEPROM format finished." #define lng167 "Selected record is OUT OF RANGE (1 - " #define lng168 "NO record" #define lng169 "CRC byte does not match:" #define lng170 " expected CRC: " #define lng171 " recieved CRC: " #define lng172 "This function is not available for all devices (addr 127)" #define lng173 "Universal request sent." #define lng174 "Information about RTC" #define lng175 "Time is " #define lng176 "Time in internal RTC (with no corrections) (UTC): " #define lng177 "Last setup of RTC (UTC): " #define lng178 " ... in seonds from 1.1.1970: " #define lng179 " ... in readable form: " #define lng180 "Interval since last time setup: " #define lng181 "Correction of time : " #define lng182 " ... Number in EEPROM in HEX form: " #define lng183 " ... one second is " #define lng184 "substracted" #define lng185 "added" #define lng186 " every " #define lng187 " seconds from last time set." #define lng188 " (it is about " #define lng189 " hours)" #define lng190 " days)" #define lng191 " years)" #define lng192 "Since last setup should be add / substract: " #define lng193 " extra seconds." #define lng194 "So corrected time for showing is: " #define lng195 "Recieved: " #define lng197 "Year: " #define lng198 "Month: " #define lng199 "Day: " #define lng200 "Hour: " #define lng201 "Minute: " #define lng202 "Second: " #define lng203 "Difference between time in RTC and current time [s]: " #define lng204 "RTC ERROR (correction of seconds is needed more often than 5 minutes)." #define lng205 "Automatic correction of RTC disabled." #define lng206 " - GPS coordinates " #define lng207 "All records are written into EEPROM" #define lng208 "@G ... details of GPS module" #define lng209 "@S n ... serial baudrate (0=9600; 1=19200; 2=38400; 3=115200)" #define lng210 "calibration point deleted" #define lng211 " " // rezerva #define lng212 "#E ... print of observer sites" #define lng213 "#ETn text ... edit text of obs. sites" #define lng214 "#EGn g,g,g,g,g ... edit graph. of obs. sites" #define lng215 "Write to 'RTC_set.csv' - ENABLE" #define lng216 "Write to 'RTC_set.csv' - DISABLE" #define lng217 "@> ... dump 'RTC_set.csv' file" #define lng218 "@/ ... ENA/DISA write to RTC_set.csv file" #define lng219 "Big difference between time in RTC and current time" #define lng220 "Short interval since last time setting (< 1 day)" #define lng221 "Long interval since last time setting (> half year)" #define lng222 "@P ... enable/disable beeper" #define lng223 "Beeper enabled" #define lng224 "Beeper muted" #define lng225 "rh nnnnn ... dump records within last 'nnnnn' hours" #define lng226 "s ... elevation (spirit level)" #define lng227 "#Lc ... level calibration" #define lng228 " - elevation angle " #define lng229 " Elevation: " #define lng230 "#Li ... level info" #define lng231 " " // rezerva #define lng232 "Put SQM horizontally" #define lng233 "\r\n\r\nPut SQM vertically" #define lng234 "\r\n\r\nLevel calibration error - setting-up defaults" #define lng235 " " // rezerva #define lng236 " - Sun and Moon elevat. " #define lng237 "Coordinates for astronomical computings (longitude / latitude): " #define lng238 "Latitude: " #define lng239 "Longitude: " #define lng240 "@Ga nnn ... home latitude for astro computings" #define lng241 "@Go nnn ... home longitude for astro computings" #define lng242 "@Gw nn ... home timezone for winter" #define lng243 "@Gs nn ... home timezone for summer" #define lng244 "UTC difference winter/summer: " #define lng245 "x ... measure illuminance (lux) - NO save" #define lng246 "@Gd ABCDEFHG ... text description for winter and summer timezone" #define lng247 "Alarm activated: " #define lng248 "#Xa n.nn ... calibration of luxmeter - param. 'a'" #define lng249 "#Xb n.nn ... calibration of luxmeter - param. 'b'" #define lng263 "#Xc n.nn ... calibration of luxmeter - param. 'c'" #define lng264 " - azimuth " #define lng265 " Compass / inclinometer LSM303DLHC" #define lng266 "#Mk ... calibration of magnetometer (compass)" #define lng267 "Compass callibration ERROR" #define lng268 "d ... direction (azimuth)" #define lng269 "Azimuth: " #define lng270 "@B ... Backup params to SD" #define lng271 "@O ... Restore params form SD" #define lng272 "MODBUS: ON" // popisky do CSV zaznamu - NUTNO DODRZET PRESNY POCET ZNAKU (dlouhe texty zkratit, kratke doplnit mezerami) // must to have exactly width (count of characters) #define lng254 " STABIL " // mark for stabile brightness (8 characters) #define lng255 " UNSTAB " // mark for unstabile brightness (8 characters) #define lng256 "bt_UP" // mark for start of measure by button "Up" (5 characters) #define lng257 "bt_DN" // mark for start of measure by button "Down" (5 characters) #define lng258 "bt_OK" // mark for start of measure by button "OK" (5 characters) #define lng259 "comm." // mark for start of measure by communication command (RS485 or USB) (5 characters) #define lng260 " auto" // mark for start of measure by automatic timer (5 characters) #define lng261 "calib" // mark for record without calibration corrections of light (raw data from sensor) (5 characters) #define lng262 "Ca-Av" // mark for average last of 10 records without calibration correction of light (5 characters) // codes and characters for commands via USB (serial line) // ordinary functions // in every column must be unicate character #define USB_fce_1_01 'v' // ... show humidity - no save #define USB_fce_1_02 't' // ... show temterature - no save #define USB_fce_1_03 'p' // ... show pressure - no save #define USB_fce_1_04 'l' // ... show light (mag/arcsec2) - no save #define USB_fce_1_05 'z' // ... switch to winter CET ("z0") or summer CEST ("z1") timezone #define USB_fce_1_06 'a' // ... timer for automatic measure 0-255 minutes #define USB_fce_1_07 'e' // ... switch light sensor on extender board (1-7) #define USB_fce_1_08 'r' // ... show records from EEPROM (only 'r' shows 100 records) #define USB_fce_1_09 'p' // ... "rp" ... show last record #define USB_fce_1_10 'a' // ... "ra" ... show all records #define USB_fce_1_11 'z' // ... "rz" ... show selected record #define USB_fce_1_19 'h' // ... "rh" ... show records since last period (for exam.: last 24 hours) #define USB_fce_1_23 'x' // ... "rx" ... last record for Unihedron software (experimental) #define USB_fce_1_12 'c' // ... curent date and time #define USB_fce_1_13 'i' // ... details system information #define USB_fce_1_25 'x' // ... "ix" information about SQM device for Unihedron software (experimental) #define USB_fce_1_14 'h' // ... show only header without records #define USB_fce_1_15 'm' // ... run one measure with record into EEPROM #define USB_fce_1_16 'k' // ... calibration #define USB_fce_1_17 'j' // ... calibration of light ("kj") #define USB_fce_1_18 't' // ... calibration of temperature ("kt") #define USB_fce_1_20 's' // ... spirit level #define USB_fce_1_21 'x' // ... illuminance (lux) #define USB_fce_1_22 'd' // ... direction (azimuth) #define USB_fce_1_24 'R' // ... "R ..." ... last record for Unihedron software (experimental) // service functions (first character '#') // in every column must be unicate character #define USB_fce_2_01 'T' // ... #T = setup of date and time #define USB_fce_2_02 'P' // ... #P = setup of count of measures for averaging #define USB_fce_2_03 'S' // ... #S = setup of level of stability mark (0-255) #define USB_fce_2_04 'I' // ... #I = detail information about internal timer (RTC) #define USB_fce_2_05 'A' // ... #A = setup of slave address for RS485 communication (1-15) #define USB_fce_2_06 'C' // ... #C switch on / off for control byte (RS485 communication) #define USB_fce_2_07 'O' // ... #O setup of separators #define USB_fce_2_08 'O' // ... #OO = next character determines separator of values ("#OO;" = semicolon "#OO," = comma "#OOt" = tabulator "#OO_" = space) #define USB_fce_2_09 ',' // ... #O, = decimal point / comma separator (#O,0 = coma off, point on #O,1 = comma on, point off) #define USB_fce_2_10 '"' // ... #O" = quote separator of values (#O"1 = on #O"0 = off) #define USB_fce_2_11 'h' // ... #Oh = write header into CSV files (#Oh0 = don't write #Oh1 = write) #define USB_fce_2_12 'F' // ... #F format of EEPROM #define USB_fce_2_13 'S' // ... #FS = SOFT format #define USB_fce_2_14 'H' // ... #FH = HARD format #define USB_fce_2_15 'U' // ... #U = level for light for save into EEPROM #define USB_fce_2_16 'K' // ... #K write calibration point to calibration table in EEPROM #define USB_fce_2_17 'J' // ... calibration point for light (#KJ) #define USB_fce_2_18 'T' // ... calibration point for temperature (#KT) #define USB_fce_2_19 'E' // ... #E edit of observer sites #define USB_fce_2_20 'T' // ... #ET ... texts #define USB_fce_2_21 'G' // ... #EG ... grapgics symbols for 7-segments display #define USB_fce_2_22 'L' // ... #L level angle #define USB_fce_2_24 'i' // ... level info (#Li) #define USB_fce_2_23 'c' // ... level calibration (#Lc) #define USB_fce_2_27 'X' // ... #X calibration of luxmeter #define USB_fce_2_28 'a' // ... #Xa parameter 'a' #define USB_fce_2_29 'b' // ... #Xb parameter 'b' #define USB_fce_2_30 'c' // ... #Xc parameter 'c' #define USB_fce_2_31 'M' // ... #M Magnetometer (compass) #define USB_fce_2_32 'k' // ... #Mk calibration of magnetometer // "secret" functions (first character '@') // in every column must be unicate character #define USB_fce_3_01 'E' // ... @E = test postupneho prepinani cidel na expanzni desce #define USB_fce_3_02 'X' // ... @X = nastaveni poctu vstupu na expanzni desce (1-7) #define USB_fce_3_03 'R' // ... @R = direct read from EEPROM #define USB_fce_3_04 'W' // ... @W = direct write to EEPROM #define USB_fce_3_05 'D' // ... @D restore defaults (following 1 chracter for specify) #define USB_fce_3_06 'S' // @DS = restore calibrations for light #define USB_fce_3_07 'T' // @DT = restore calibrations for temperature #define USB_fce_3_08 'P' // @DT = restore system parameters #define USB_fce_3_10 '@' // ... @@ = reset #define USB_fce_3_11 'G' // ... @G = detailed GPS info #define USB_fce_3_19 'a' // ... @Ga = setup for home coordinates (latitude) for astronomical computings #define USB_fce_3_20 'o' // ... @Go = setup for home coordinates (longitude) for astronomical computings #define USB_fce_3_21 'w' // ... @Gw = home timezone for winter #define USB_fce_3_22 's' // ... @Gs = home timezone for summer #define USB_fce_3_23 'd' // ... @Gd = text desctiption for winter and summer timzone ("@Gd CET CEST") #define USB_fce_3_12 'S' // ... @S = serial baudrate (USB / RS485) #define USB_fce_3_15 '>' // ... @> = dump of "RTC_set.csv" to USB serial bus #define USB_fce_3_16 '/' // ... @/ = Switch on / off for write data into file "RTC_set.csv" #define USB_fce_3_17 'P' // ... @P = enable/disable beeper #define USB_fce_3_18 '*' // ... @* nnn = dump of single record from EEPROM in HEX format #define USB_fce_3_24 'B' // ... @B Backup system parameters to SD card #define USB_fce_3_25 'O' // ... @O Restore system parameters from SD card String dny[] = {"--", "Mo" , "Tu" , "We" , "Th" , "Fr" , "Sa" , "Su"}; // weekdays: index 1 = monday; index 7 = sunday. (index 0 not used) // A=1 // ###### // # # // F=32 # # B=2 // # G=64 # // ###### // # # // E=16 # # C=4 // # # // ###### ## DP=128 examples: // D=8 ## 'A' = A + B + C + F + E + G = 1 + 2 + 4 + 32 + 16 + 64 = 119 // 'L' = F + E + D = 32 + 16 + 8 = 56 #ifdef displej_TM1637_5 byte dis_popisy[70][5] = // definition of 5-characters for display { //---menu-- { 56, 48, 109, 120, 0} , // "LI5t " [0] { 119, 28, 120, 92, 0} , // "Auto " [1] { 91, 92, 84, 121, 0} , // "2onE " [2] { 57, 119, 56, 48, 124} , // "CALIb" [3] { 94, 119, 120, 121, 0} , // "dAtE " [4] { 120, 4, 55, 121, 0} , // "tiME " [5] { 120, 121, 55, 115, 0} , // "tEMP " [6] { 118, 28, 55, 4, 94} , // "HuMid" [7] { 124, 80, 4, 111, 118} , // "bri9H" [8] { 118, 92, 64, 55, 4} , // "Ho-Mi" [9] { 119, 62, 121, 80, 0} , // "AVer " [10] { 56, 121, 94, 0, 0} , // "LEd " [11] { 109, 120, 92, 115, 0} , // "StoP " [12] (StopWatch) { 125, 115, 109, 0, 0} , // "6P5 " [13] (GPS) { 109, 4, 120, 121, 0} , // "5itE " [14] Observer Site { 73, 109, 115, 121, 57} , // "#SPEC" [15] Specialni funkce (zap/vyp) (not used in this public program version) { 73, 0, 4, 84, 120} , // "# int" [16] Prvni parametr specialnich funkci (not used in this public program version) { 73, 115, 119, 80, 91} , // "#PAr2" [17] Druhy parametr specialnich funkci (not used in this public program version) { 73, 115, 119, 80, 79} , // "#PAr3" [18] Treti parametr specialnich funkci (not used in this public program version) { 73, 113, 57, 121, 6} , // "#FCE1" [19] Spusteni prvniho podprogramu specialnich funkci (not used in this public program version) { 73, 113, 57, 121, 91} , // "#FCE2" [20] Spusteni druheho podprogramu specialnich funkci (not used in this public program version) { 73, 57, 92, 115, 110} , // "#CoPy" [21] Prenos dat ze specialni funkce na SD kartu (not used in this public program version) { 56, 121, 62, 121, 56} , // "LEVEL" [22] Level { 109, 28, 64, 55, 92} , // "Su-Mo" [23] Sun and Moon elevation { 88, 92, 28, 84, 120} , // "count" [24] countdown { 57, 92, 55, 115, 119} , // "CoMPA" [25] Compass { 80, 119, 64, 94, 121} , // "rA-De" [26] Ra / Dec coordinates { 62, 92, 56, 120, 109} , // "VoLtS" [27] battery voltage measure { 0, 0, 0, 0, 0} , // " " [28] { 64, 64, 64, 64, 64} , // "-----" [29] { 121, 80, 80, 64, 56} , // "Err-L" [30] (Calibration table ERROR - for light) { 121, 80, 80, 64, 120} , // "Err-t" [31] (Calibration table ERROR - for temperature) { 84, 92, 57, 92, 80} , // "noCor" [32] show on display light with no correction { 0, 57, 92, 80, 80} , // " Corr" [33] show on display light with correction by callibration table { 80, 121, 113, 8, 62} , // "rEF_U" [34] test of analog in for reference voltage { 62, 8, 124, 119, 120} , // "U_bAt" [35] test of analog in for battery voltage { 64, 56, 92, 88, 64} , // "-Loc-" [36] timestamp button locked { 109, 94, 64, 121, 80} , // "5d-Er" [37] (SD card ERROR) { 109, 119, 62, 121, 0} , // "SAVE " [38] { 124, 28, 109, 109, 110} , // "bu55y" [39] { 121, 80, 80, 64, 4} , // "Err-i" [40] (I2C ERROR) { 121, 80, 80, 64, 125} , // "Err-6" [41] (GPS ERROR)("6" = "G") { 94, 121, 113, 119, 0} , // "dEFA " [42] (Reload defaults) { 73, 64, 92, 84, 0} , // "#-on " [43] specialni funkce zapnuty (# znaci tri pomlcky nad sebou) (not used in this public program version) { 73, 64, 92, 113, 113} , // "#-oFF" [44] specialni funkce vypnuty (not used in this public program version) { 84, 92, 64, 109, 94} , // "no-5d" [45] (SD card is not present) { 80, 121, 109, 121, 120} , // "rE5Et" [46] Reset { 84, 64, 57, 119, 56} , // "n-CAL" [47] calibration of inclinometer (level spirit) { 128, 0, 0, 0, 0} , // ". " [48] left dot (automat measuring is running) { 1, 1, 1, 1, 1} , // "^^^^^" [49] Overload { 56, 28, 118, 55, 0} , // "LuHM " [50] switched to luxmeter { 109, 103, 55, 0, 0} , // "5qM " [51] switched to Sky Quality Meter - measure mag/arcsec2 ("5" = "S") { 0, 128, 0, 0, 0} , // " . " [52] second dot from left (serial measuring is running) { 119, 56, 119, 80, 55} , // "ALArM" [53] { 55, 121, 84, 28, 0} , // "MEnu " [54] for menu items show / hide { 121, 80, 80, 64, 84} , // "Err-n" [55] error of level spirit { 55, 4, 64, 109, 121} , // "Mi-5E" [56] show current "minutes - seconds" on display { 0, 0, 57, 121, 120} , // " CEt" [57] winter timezone { 0, 57, 121, 109, 120} , // " CESt" [58] summer timezone { 57, 64, 57, 119, 56} , // "C-CAL" [59] calibration of compass { 121, 80, 80, 64, 57} , // "Err-C" [60] calibration error { 121, 80, 80, 64, 80} , // "Err-r" [61] (RTC ERROR) { 113, 4, 84, 94, 0} , // "Find " [62] finding object with Ra/Dec coordinates { 121, 80, 80, 64, 113} , // "Err-F" [63] formating of EEPROM error { 118, 92, 80, 4, 0} , // "Hori " [64] Horizontally - for calibration of spirit level { 62, 121, 80, 120, 0} // "UErt " [65] Vertically - for calibration of spirit level }; #endif // first characters on display for submenus byte znak_V = 28 ; // "u" hUmid (CZ = Vlhkost) byte znak_A = 119 ; // "A" Automat byte znak_P = 62 ; // "V" aVerage (CZ = Prumer) byte znak_d = 94 ; // "d" Days byte znak_M = 55 ; // "M" Months / minutes byte znak_r = 110 ; // "y" Years (CZ = Roky) byte znak_H = 118 ; // "H" Hours byte znak_L = 56 ; // "L" List byte znak_R1 = 80 ; // "r" first character of label rektascenze (rA.) byte znak_R2 = 119 + 128; // "A." second character of label rektascenze (rA.) byte znak_D1 = 94 ; // "d" first character of label deklinace (dE.) byte znak_D2 = 121 + 128; // "E." second character of label deklinace (dE.) byte znak_u = 95 ; // "a" angle distance (CZ = uhlova vzdalenost) byte znak_eS = 109 ; // "S" elevation or azimuth of the Sun byte znak_eM = 55 ; // "M" elevation or azimuth of the Moon byte znak_oM = 4 + 128; // "i." illumination of Moon byte znak_Atecka = 119 + 128; // "A." azimuth (Sun or Moon) byte znak_Etecka = 121 + 128; // "E." elevace (Sun or Moon) byte znak_C = 57 ; // "C" calibration (in label "CAL.") byte znak_Ltecka = 56 + 128; // "L." calibration (in label "CAL.") // defaults descriprion of observer sites String poz_st_txt[] = {"--", "Obs.Site 1" , "Obs.Site 2" , "Obs.Site 3" , "Obs.Site 4" , "Obs.Site 5"}; // text description of observer sites (10 characters) byte poz_st_gr[6][5] = // graphical description of observer sites for display { { 64, 64, 64, 64, 64} , // "-----" [0] { 109, 4, 120, 249, 6} , // "5itE.1" [1] { 109, 4, 120, 249, 91} , // "5itE.2" [2] { 109, 4, 120, 249, 79} , // "5itE.3" [3] { 109, 4, 120, 249, 102} , // "5itE.4" [4] { 109, 4, 120, 249, 109} // "5itE.5" [5] }; #endif //======================= jazykove verze ======================