IP-Time Clock del 1 (3 / 3 steg)
Steg 3: skiss
KRAV: WiFi Access med SSID och lösenord om det behövs
Obs: Skissen justerar för sommartid enligt oss regler från och med oktober 2015. Platser som inte använder sommartid och andra länder förmodligen fungerar inte.
Så laddar skissen på ESP-03 är ganska komplicerat.
Min ESP8266 Instructable kan hjälpa:
ESP8266 biblioteket jag använder är:
https://github.com/esp8266/Arduino
Biblioteket för MAX7219 är på:
https://github.com/wayoda/LedControl
Latest(I think) tid biblioteket är det här en:
http://www.pjrc.com/teensy/td_libs_Time.html
Först måste du redigera skissen för din situation.
Du behöver veta SSID-namnet för din lokala åtkomstpunkten eller hotspot och lösenord om de används. Öppna skissen för redigering och sätta dem i dessa två rader:
char ssid [] = "yourSSID"; nätverkets SSID (namn)
char passera [] = "yourPassword"; nätverkslösenord
Under / / NTP servrar, jag noterat flera. Den som jag använder jag tror är Salt Lake City. Du kan kommentera bort något som du vill.
Om din tidszon inte är berg, ändra följande rad:
CONST int timeZone = -7; Mountain Standard Time (USA)
Du vill ha din lokala normaltid offset
Östra -5
Central -6
Berg -7
Stillahavs -8
Hawaii -10
Under setup() {finns det en rad kod:
lc.setIntensity(0,1); Ställa in ljusstyrkan till ett lågt värde
Den andra parametern (1) kan ställas in var som helst från 0 till 15. Detta (tillsammans med Rset motstånd bestämmer ljusstyrkan på displayen). Eftersom jag använder mitt på natten, har jag det ganska lågt.
Obs: Om du vill att displayen att Visa 24hr klocka istället för 12, under
Tom digitalClockDisplay(), ändra följande två rader:
lc.setDigit(0,0,int(hourFormat12()/10),false);
lc.setDigit(0,1,(hourFormat12() % 10), true);
till:
lc.setDigit(0,0,int(hour()/10),false);
lc.setDigit(0,1,(hour() % 10), true);
Obs: Denna kod är utformad att fungera med ett fyrsiffrigt eller en sex-siffrig display. Ett litet problem är med en fyrsiffrig display, det finns en prick efter protokollet. Om du vill stänga av, ändra följande rad:
lc.setDigit(0,3,(minute() % 10), true);
till:
lc.setDigit(0,3,(minute() % 10), falsk);
Följande rader:
lc.setDigit(0,4,int(second()/10),false);
lc.setDigit(0,5,(second() % 10), falsk);
kan tas bort eftersom de endast används av en sex-siffrig display.
För att ladda skissen, sätta den ESP-03 i programmeringsläget. Starta Arduino miljön. Välj rätt USB-port. Under styrelsen, väljer du generiska ESP8266 modul. Ladda upp skissen.
Så här klockan verkar fungera ganska bra för mig.