TIME


Lehetőség van 10db naptári időponthoz ( TIME[0] - TIME[9] ) végrehajtandó parancsokat rendelni. A dátum/idő beállítható a Setup/Peripherals menüben, internet segítségével NTP protokoll használatával, paranccsal. RTC modul segítségével nincs szükség internet kapcsolatra, a modul újraindulás, áramszünet után is tudja az aktuális dátumot, időt. DS3231, DS1307, DS1302 chip kezelésére van mód. Setup/Peripherals menüben állítható az RTC eszközöknél. DS3231 ha nem hamisítvány, max évi 1 percet késik/siet. Van belső hőmérője, ez a TEHU parancshoz hozzárendelhető. Tápja 3.3V, SCL láb lehet az OLED kijelző(k) SCL lábával közös. DS1302, DS1307 nem anyira pontos, viszont van nem felejtő RAM benne, amit az NVR parancs használ. Van ami működik 3.3V tápról, ha nem, akkor 5V kell neki.


Dátum, Idő

TIME=Y2026M12D24h20m15s00
Beállítja a dátumot, időt, ha valamiért az NTP nem használható.

TIME@
Időt STDOUT-ra küldi.

TIMES:TIME@
Ha a másodperc változik, STDOUT-ra küldi az időt.
TIMEM:TIME@
Ha a perc változik, STDOUT-ra küldi az időt.

Időzítő

TIME[0]=Y2026M12D24h20m15s30
Beállítja az időpontot, amikor végre kell hajtani a parancsokat.
s: másodperc
m: perc
h: óra
D: nap
M: hónap
Y: év
Ha valamelyik paraméter nincs megadva, az az aktuális dátum/idő lesz.

TIME[0]=W0111110h20m16
Hétfőtől péntekig 20 óra 16 perckor végrehajtja a parancsokat.
W: vasárnap, hétfő, kedd, szerda, csütörtök, péntek, szombat.
0: nem hajtja végre.
1: végrehajtja.

TIME[0]@
Mutatja a beállított időt.
TIME[0]R@
Mutatja a parancs végrehajtásáig hátralevő időt.
TIME[0]E@
Mutatja az indítás óta eltelt időt.

TIME[0]+1m
s: másodperc
m: perc
h: óra
D: nap
Ha aktív az időzítő, a beállított időponthoz hozzáad.
Ha nem aktív, a jelenlegi időponthoz hozzáadja az itt megadott értéket, ezzel a beállítással elindítja az időzítőt.
TIME[0]-10s
A beállított időpontból levon.

TIME[0]:LED(ON)
Ha az idő eléri a beállított értéket, a parancsokat végrehajtja.

TIME[0]F
Leállítja az időzítőt.
TIME[0]FC
Leállítja az időzítőt, végrehajtja a parancsokat.

Napkelte, Napnyugta

SUNR@
Napkelte időpontját mutatja.
SUNS@
Napnyugta időpontját mutatja.

SUNR:LED(OFF)
Napkeltekor végrehajtja a parancsot.
SUNS:LED(ON)
Napnyugtakor végrehajtja a parancsot.

SUNR+30
SUNR-30
Napkelte után/előtt 30 perccel hajtja végre a parancsot.
SUNS+20
SUNS-20
Napnyugta után/előtt 20 perccel hajtja végre a parancsot.

Hónapok, napok nevei

MONTH[1]Január|
MONTH[2]Február|
MONTH[3]Március|
MONTH[4]Április|
MONTH[5]Május|
MONTH[6]Június|
MONTH[7]Július|
MONTH[8]Augusztus|
MONTH[9]Szeptember|
MONTH[10]Október|
MONTH[11]November|
MONTH[12]December

Hónapok nevei. %ML %DATE Default: angol

WEEK[1]Vasárnap|
WEEK[2]Hétfő|
WEEK[3]Kedd|
WEEK[4]Szerda|
WEEK[5]Csütörtök|
WEEK[6]Péntek|
WEEK[7]Szombat

Napok nevei. %WL Default: angol

TIME(h) óra |
TIME(m) perc |
TIME(s) másodperc

Idő nevei. %TIME, %TIMER[x], %STPW[x] Default: ":"



Példák

Ébresztőóra
TIME[0]:LED(ON) <!DOCTYPE html> <html> <body> <H1>ALARM CLOCK</H1><br> <input type="number" id="year" placeholder="Year"/> <input type="number" id="month" placeholder="Month"/> <input type="number" id="day" placeholder="Day"/> <input type="number" id="hour" placeholder="Hour"/> <input type="number" id="min" placeholder="Minute"/> <input type="number" id="sec" placeholder="Second"/> <button type="button" onclick="setnow();">Now</button> <br><br> <button type="button" onclick="alarm='TIME=';settime();">Set Clock</button> <button type="button" onclick="alarm='TIME[0]=';settime();">Set Alarm</button> <br> <H2 id="time"></H2> <H2 id="alarm"></H2> <H2 id="rema"></H2> <script type="text/javascript" src="tools.js"></script> <script> startWS(3); var alarm = ""; function onMessage(msg) { msg = msg.split("~"); if (msg[1] === "0") {document.getElementById('time').innerText = msg[0];} if (msg[1] === "1") {document.getElementById('alarm').innerText = msg[0];} if (msg[1] === "2") {document.getElementById('rema').innerText = msg[0];} } var mytime = setInterval(function () { sendWS("STR[0]@=Current Time: %DATE %TIMES~0"); sendWS("STR[0]@=Alarm Time: %TIME[0]Y. %TIME[0]ML %TIME[0]D. %TIME[0]h:%TIME[0]0m:%TIME[0]0s~1"); sendWS("STR[0]@=Remaining: %TIME[0]RYyear %TIME[0]RMmonth %TIME[0]RDday %TIME[0]Rhhour %TIME[0]Rmminute %TIME[0]Rssecond~2"); }, 1000); function setnow() { var d = new Date(); document.getElementById("sec").value = d.getSeconds(); document.getElementById("min").value = d.getMinutes(); document.getElementById("hour").value = d.getHours(); document.getElementById("day").value = d.getDate(); document.getElementById("month").value = d.getMonth() + 1; document.getElementById("year").value = d.getFullYear(); } function settime() { alarm += "Y" + document.getElementById("year").value; alarm += "M" + document.getElementById("month").value; alarm += "D" + document.getElementById("day").value; alarm += "h" + document.getElementById("hour").value; alarm += "m" + document.getElementById("min").value; alarm += "s" + document.getElementById("sec").value; sendWS(alarm); } </script> </body> </html>