Non tutti hanno mai notato che i loro orologi (se non sei orologi radio) stanno andando avanti o dopo? Al più tardi alla prossima volta cambiamento in estate o in autunno, tutti gli orologi sono arretrati al momento giusto. Il computer sincronizza regolarmente il proprio orologio interno con un cosiddetto server NTP. Il server NTP è, per così dire, un orologio radio per il computer. Possiamo utilizzare un server NTP per ottenere la nostra strada e accedervi tramite WI-Fi con un modulo ESP8266-01S. Quindi visualizziamo questa volta su un display OLED. Quello di cui abbiamo bisogno: 1 x ESP8266-01S 1 x 0.96" Display OLEDPochi Linee ponticello1 x portabatterie per 2 batterie 1 x Adattatore di programmazione Adattatore USB O FTDI FT232RL Alloggiamento stampato in 3D per thingiverse Il cablaggio dell'hardware: Per poter utilizzare l'orologio indipendentemente dal computer, utilizziamo 2 batterie con 1,5V ciascuna. Con una tensione totale 3V siamo al limite inferiore dell'hardware. La massa (meno il palo) della batteria è collegata ai connettori GND sul display ESP8266-01S e OLED. > Linea neraIl 3V (più-polo) della batteria è collegato con VCC all'ESP8266-01S e display, inoltre il CH_PD (chip enable) deve essere impostato su alto (3V). > Linea rossaInfine, le due linee i2c dal display sono collegate all'ESP8266-01S, per questo dobbiamo utilizzare i 2 GPIO disponibili. Le Linea gialla sCK ed è collegato a GPIO2. Le Leadership verde è SDA ed è collegato a GPIO0. Se tutto è collegato, possiamo passare alla programmazione. Per programmare, il GPIO0 deve essere impostato a terra durante l'avvio! Il software: #include "ESP8266WiFi.h" #include <WiFiUdp.H> #include <Filo.H> #include "font.h" WiFiClient (Client WiFi) Client; Char* Ssid = "SSID Wi-Fi"; Char* Password = "WI-FI-PW"; Char Buffer[20]; # define OLED_address 0x3c (in modo 0x3c) Unsigned Int Localport = 2390; Ipaddress timeServerIP (avviEServerIP); Const Char* nomeserver ntp = "pool.ntp.org"; Const Int NTP_PACKET_SIZE = 48; Byte packetBuffer (buffer)[ NTP_PACKET_SIZE]; WiFiUDP Udp; Statico Vuoto reset_display(Vuoto) { displayOff (Disattivato)(); clear_display(); displayOn (Visualizzazione)(); } Vuoto StartUp_OLED() { init_OLED(); reset_display(); displayOff (Disattivato)(); setXY (in nome(0,0); clear_display(); displayOn (Visualizzazione)(); } Vuoto displayOn (Visualizzazione)(Vuoto) { comando di invio(0xaf); } Vuoto displayOff (Disattivato)(Vuoto) { comando di invio(0xae); } Statico Vuoto clear_display(Vuoto) { Unsigned Char Ho.,K; Per(K=0;K<8;K++) { setXY (in nome(K,0); { Per(Ho.=0;Ho.<128;Ho.++) { SendChar (informazioni in stato di e(0); } } } } Statico Vuoto SendChar (informazioni in stato di e(Unsigned Char Dati) { Filo.beginTransmission(OLED_address); Filo.Scrivere(0x40 (in questo 0x40)); Filo.Scrivere(Dati); Filo.endTransmission();} Statico Vuoto sendCharXY (informazioni in stato instato di un'azione(Unsigned Char Dati, Int X, Int Y) { setXY (in nome(X, Y); Filo.beginTransmission(OLED_address); Filo.Scrivere(0x40 (in questo 0x40)); Per(Int Ho.=0;Ho.<8;Ho.++) Filo.Scrivere(pgm_read_byte(Myfont[Dati-0x20 (in questo 0x20)]+Ho.)); Filo.endTransmission(); } Statico Vuoto comando di invio(Unsigned Char Com) { Filo.beginTransmission(OLED_address); Filo.Scrivere(0x80 (in questo 0x80)); Filo.Scrivere(Com); Filo.endTransmission();} Statico Vuoto setXY (in nome(Unsigned Char Riga,Unsigned Char Colonnello) { comando di invio(0xb0 (in modo 0xb0)+Riga); comando di invio(0x00 (in questo 0x00)+(8*Colonnello&0x0f (in formato 0x0f))); comando di invio(0x10 (in modo 0x10)+((8*Colonnello>>4)&0x0f (in formato 0x0f))); } Statico Vuoto sendStr(Unsigned Char *Stringa) { Unsigned Char Ho.=0; Mentre(*Stringa) { Per(Ho.=0;Ho.<8;Ho.++) { SendChar (informazioni in stato di e(pgm_read_byte(Myfont[*Stringa-0x20 (in questo 0x20)]+Ho.)); } *Stringa++; } } Statico Vuoto sendStrXY (informazioni in due)( Char *Stringa, Int X, Int Y) { setXY (in nome(X,Y); Unsigned Char Ho.=0; Mentre(*Stringa) { Per(Ho.=0;Ho.<8;Ho.++) { SendChar (informazioni in stato di e(pgm_read_byte(myFont[*corda-0x20]+io)); } *corda++; } } statico vuoto init_OLED(vuoto) { sendCommand(0xAE); sendCommand(0xA6); sendCommand(0xAE); sendCommand(0xD5); sendCommand(0x80); sendCommand(0xa8); sendCommand(0x3F); sendCommand(0xD3); sendCommand(0x0); sendCommand(0x40 | 0x0); sendCommand(0x8D); sendCommand(0x14); sendCommand(0x20); sendCommand(0x00); // sendcommand (0xA0 | 0x1); // 180 Grad drehen sendCommand(0xA0); // sendCommand (0xC8); // 180 Grad drehen sendCommand(0xC0); sendCommand(0xDA); sendCommand(0x12); sendCommand(0x81); sendCommand(0xCF); sendCommand(0xd9); sendCommand(0xF1); sendCommand(0xDB); sendCommand(0x40); sendCommand(0xA4); sendCommand(0xA6); clear_display(); sendCommand(0x2E); sendCommand(0x20); sendCommand(0x00); } vuoto Draw_WIFI() { clear_display(); SetXY(0,0); per(int io=0;io<128*8;io++) { SendChar(pgm_read_byte(Wifi1+io)); } sendCommand(0xAF); } vuoto Draw_WAVES() { clear_display(); SetXY(0,0); per(int io=0;io<128*8;io++) { SendChar(pgm_read_byte(rfwaves+io)); } sendCommand(0xAF); } vuoto impostare() { ritardo(200); Filo.perni(0, 2); Filo.inizio(); StartUp_OLED(); clear_display(); sendStrXY("***************", 0, 1); sendStrXY(" INIZIO ", 0, 1); Wi-Fi.inizio(ssid, parola d'ordine); mentre (Wi-Fi.stato() != WL_CONNECTED) { sendStrXY("Verbinden", 0, 1); ritardo(250); sendStrXY(" ", 0, 1); } Indirizzo IP ip = Wi-Fi.LOCALIP(); Corda ipStr = Corda(ip[0]) + '.' + Corda(ip[1]) + '.' + Corda(ip[2]) + '.' + Corda(ip[3]); ipStr.toCharArray(buffer, 20); sendStrXY((buffer), 0, 1); udp.inizio(localPort); ritardo(2000); } vuoto ciclo continuo() { Wi-Fi.hostByName(ntpServerName, timeServerIP); sendNTPpacket(timeServerIP); ritardo(200); int CB = udp.parsePacket(); Se (!CB) { } altro { udp.leggere(packetBuffer, NTP_PACKET_SIZE); unsigned lungo highWord = parola(packetBuffer[40], packetBuffer[41]); unsigned lungo LowWord = parola(packetBuffer[42], packetBuffer[43]); unsigned lungo secsSince1900 = highWord << 16 | LowWord; const unsigned lungo seventyYears = 2208988800UL; unsigned lungo epoca = secsSince1900 - seventyYears; int Stunden = (epoca % 86400L) / 3600; Seriale.println(Stunden); int Minuten =(epoca % 3600) / 60; int Sekunden = epoca % 60; Corda str; str = Corda(int(Stunden/10)); carbonizzare stund1[2]; str.toCharArray(stund1,2); str = Corda(int(Stunden%10)); carbonizzare stund2[2]; str.toCharArray(stund2,2); str = Corda(int(Minuten/10)); carbonizzare min1[2]; str.toCharArray(min1,2); str = Corda(int(Minuten%10)); carbonizzare min2[2]; str.toCharArray(min2,2); str = Corda(int(Sekunden/10)); carbonizzare sek1[2]; str.toCharArray(sek1,2); str = Corda(int(Sekunden%10)); carbonizzare sek2[2]; str.toCharArray(sek2,2); // sendStrXY ("00:00:00", 2, 1); sendStrXY(stund1, 2, 4); sendStrXY(stund2, 2, 5); sendStrXY(":", 2, 6); sendStrXY(min1, 2, 7); sendStrXY(min2, 2, 8); sendStrXY(":", 2, 9); sendStrXY(sek1, 2, 10); sendStrXY(sek2, 2, 11); ritardo(50); } } unsigned lungo sendNTPpacket(Indirizzo IP& indirizzo) { memset(packetBuffer, 0, NTP_PACKET_SIZE); packetBuffer[0] = 0b11100011; packetBuffer[1] = 0; packetBuffer[2] = 6; packetBuffer[3] = 0xEC; packetBuffer[12] = 49; packetBuffer[13] = 0x4E; packetBuffer[14] = 49; packetBuffer[15] = 52; udp.beginPacket(indirizzo, 123); udp.Scrivi(packetBuffer, NTP_PACKET_SIZE); udp.endPacket(); } font.h (Datei als neuer Tab) const carbonizzare myFont[][8] PROGMEM = { {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}, {0x00,0x00,0x5F,0x00,0x00,0x00,0x00,0x00}, {0x00,0x00,0x07,0x00,0x07,0x00,0x00,0x00}, {0x00,0x14,0x7F,0x14,0x7F,0x14,0x00,0x00}, {0x00,0x24,0x2A,0x7F,0x2A,0x12,0x00,0x00}, {0x00,0x23,0x13,0x08,0x64,0x62,0x00,0x00}, {0x00,0x36,0x49,0x55,0x22,0x50,0x00,0x00}, {0x00,0x00,0x05,0x03,0x00,0x00,0x00,0x00}, {0x00,0x1C,0x22,0x41,0x00,0x00,0x00,0x00}, {0x00,0x41,0x22,0x1C,0x00,0x00,0x00,0x00}, {0x00,0x08,0x2A,0x1C,0x2A,0x08,0x00,0x00}, {0x00,0x08,0x08,0x3E,0x08,0x08,0x00,0x00}, {0x00,0xA0,0x60,0x00,0x00,0x00,0x00,0x00}, {0x00,0x08,0x08,0x08,0x08,0x08,0x00,0x00}, {0x00,0x60,0x60,0x00,0x00,0x00,0x00,0x00}, {0x00,0x20,0x10,0x08,0x04,0x02,0x00,0x00}, {0x00,0x3E,0x51,0x49,0x45,0x3E,0x00,0x00}, {0x00,0x00,0x42,0x7F,0x40,0x00,0x00,0x00}, {0x00,0x62,0x51,0x49,0x49,0x46,0x00,0x00}, {0x00,0x22,0x41,0x49,0x49,0x36,0x00,0x00}, {0x00,0x18,0x14,0x12,0x7F,0x10,0x00,0x00}, {0x00,0x27,0x45,0x45,0x45,0x39,0x00,0x00}, {0x00,0x3C,0x4A,0x49,0x49,0x30,0x00,0x00}, {0x00,0x01,0x71,0x09,0x05,0x03,0x00,0x00}, {0x00,0x36,0x49,0x49,0x49,0x36,0x00,0x00}, {0x00,0x06,0x49,0x49,0x29,0x1E,0x00,0x00}, {0x00,0x00,0x36,0x36,0x00,0x00,0x00,0x00}, {0x00,0x00,0xac,0x6C,0x00,0x00,0x00,0x00}, {0x00,0x08,0x14,0x22,0x41,0x00,0x00,0x00}, {0x00,0x14,0x14,0x14,0x14,0x14,0x00,0x00}, {0x00,0x41,0x22,0x14,0x08,0x00,0x00,0x00}, {0x00,0x02,0x01,0x51,0x09,0x06,0x00,0x00}, {0x00,0x32,0x49,0x79,0x41,0x3E,0x00,0x00}, {0x00,0x7E,0x09,0x09,0x09,0x7E,0x00,0x00}, {0x00,0x7F,0x49,0x49,0x49,0x36,0x00,0x00}, {0x00,0x3E,0x41,0x41,0x41,0x22,0x00,0x00}, {0x00,0x7F,0x41,0x41,0x22,0x1C,0x00,0x00}, {0x00,0x7F,0x49,0x49,0x49,0x41,0x00,0x00}, {0x00,0x7F,0x09,0x09,0x09,0x01,0x00,0x00}, {0x00,0x3E,0x41,0x41,0x51,0x72,0x00,0x00}, {0x00,0x7F,0x08,0x08,0x08,0x7F,0x00,0x00}, {0x00,0x41,0x7F,0x41,0x00,0x00,0x00,0x00}, {0x00,0x20,0x40,0x41,0x3F,0x01,0x00,0x00}, {0x00,0x7F,0x08,0x14,0x22,0x41,0x00,0x00}, {0x00,0x7F,0x40,0x40,0x40,0x40,0x00,0x00}, {0x00,0x7F,0x02,0x0C,0x02,0x7F,0x00,0x00}, {0x00,0x7F,0x04,0x08,0x10,0x7F,0x00,0x00}, {0x00,0x3E,0x41,0x41,0x41,0x3E,0x00,0x00}, {0x00,0x7F,0x09,0x09,0x09,0x06,0x00,0x00}, {0x00,0x3E,0x41,0x51,0x21,0x5E,0x00,0x00}, {0x00,0x7F,0x09,0x19,0x29,0x46,0x00,0x00}, {0x00,0x26,0x49,0x49,0x49,0x32,0x00,0x00}, {0x00,0x01,0x01,0x7F,0x01,0x01,0x00,0x00}, {0x00,0x3F,0x40,0x40,0x40,0x3F,0x00,0x00}, {0x00,0x1F,0x20,0x40,0x20,0x1F,0x00,0x00}, {0x00,0x3F,0x40,0x38,0x40,0x3F,0x00,0x00}, {0x00,0x63,0x14,0x08,0x14,0x63,0x00,0x00}, {0x00,0x03,0x04,0x78,0x04,0x03,0x00,0x00}, {0x00,0x61,0x51,0x49,0x45,0x43,0x00,0x00}, {0x00,0x7F,0x41,0x41,0x00,0x00,0x00,0x00}, {0x00,0x02,0x04,0x08,0x10,0x20,0x00,0x00}, {0x00,0x41,0x41,0x7F,0x00,0x00,0x00,0x00}, {0x00,0x04,0x02,0x01,0x02,0x04,0x00,0x00}, {0x00,0x80,0x80,0x80,0x80,0x80,0x00,0x00}, {0x00,0x01,0x02,0x04,0x00,0x00,0x00,0x00}, {0x00,0x20,0x54,0x54,0x54,0x78,0x00,0x00}, {0x00,0x7F,0x48,0x44,0x44,0x38,0x00,0x00}, {0x00,0x38,0x44,0x44,0x28,0x00,0x00,0x00}, {0x00,0x38,0x44,0x44,0x48,0x7F,0x00,0x00}, {0x00,0x38,0x54,0x54,0x54,0x18,0x00,0x00}, {0x00,0x08,0x7E,0x09,0x02,0x00,0x00,0x00}, {0x00,0x18,0xA4,0xA4,0xA4,0x7C,0x00,0x00}, {0x00,0x7F,0x08,0x04,0x04,0x78,0x00,0x00}, {0x00,0x00,0x7D,0x00,0x00,0x00,0x00,0x00}, {0x00,0x80,0x84,0x7D,0x00,0x00,0x00,0x00}, {0x00,0x7F,0x10,0x28,0x44,0x00,0x00,0x00}, {0x00,0x41,0x7F,0x40,0x00,0x00,0x00,0x00}, {0x00,0x7C,0x04,0x18,0x04,0x78,0x00,0x00}, {0x00,0x7C,0x08,0x04,0x7C,0x00,0x00,0x00}, {0x00,0x38,0x44,0x44,0x38,0x00,0x00,0x00}, {0x00,0xFC,0x24,0x24,0x18,0x00,0x00,0x00}, {0x00,0x18,0x24,0x24,0xFC,0x00,0x00,0x00}, {0x00,0x00,0x7C,0x08,0x04,0x00,0x00,0x00}, {0x00,0x48,0x54,0x54,0x24,0x00,0x00,0x00}, {0x00,0x04,0x7F,0x44,0x00,0x00,0x00,0x00}, {0x00,0x3C,0x40,0x40,0x7C,0x00,0x00,0x00}, {0x00,0x1C,0x20,0x40,0x20,0x1C,0x00,0x00}, {0x00,0x3C,0x40,0x30,0x40,0x3C,0x00,0x00}, {0x00,0x44,0x28,0x10,0x28,0x44,0x00,0x00}, {0x00,0x1C,0xA0,0xA0,0x7C,0x00,0x00,0x00}, {0x00,0x44,0x64,0x54,0x4C,0x44,0x00,0x00}, {0x00,0x08,0x36,0x41,0x00,0x00,0x00,0x00}, {0x00,0x00,0x7F,0x00,0x00,0x00,0x00,0x00}, {0x00,0x41,0x36,0x08,0x00,0x00,0x00,0x00}, {0x00,0x02,0x01,0x01,0x02,0x01,0x00,0x00}, {0x00,0x02,0x05,0x05,0x02,0x00,0x00,0x00} }; // logo bitmap const carbonizzare Wifi1[] PROGMEM = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0xC0, 0xE0, 0xE0, 0xE0, 0xF0, 0xF0, 0xF8, 0xF8, 0xF8, 0xF8, 0xFC, 0xFC, 0xFC, 0xFC, 0xFC, 0xFC, 0xFC, 0xFC, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFC, 0xFC, 0xFC, 0xFC, 0xFC, 0xFC, 0xFC, 0xF8, 0xF8, 0xF8, 0xF8, 0xF8, 0xF0, 0xF0, 0xE0, 0xE0, 0xE0, 0xC0, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xC0, 0xC0, 0xC0, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0xF0, 0xF0, 0xF8, 0xFC, 0xFE, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0xFC, 0xF8, 0xF0, 0xF0, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0xC0, 0xC0, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0xF0, 0xF8, 0xF8, 0xFC, 0xFE, 0xFF, 0xFF, 0xFF, 0xFF, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0x3F, 0x3F, 0x1F, 0x1F, 0x3F, 0x3F, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x3F, 0x1F, 0x0F, 0x0F, 0x07, 0x03, 0x03, 0xC3, 0xC1, 0xC1, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0x00, 0x00, 0x00, 0xC0, 0xC0, 0xE0, 0xE0, 0xE0, 0xE0, 0xE1, 0xC1, 0x03, 0x03, 0x03, 0x07, 0x07, 0x0F, 0x1F, 0x3E, 0x7E, 0xF8, 0xF8, 0xF0, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFE, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x01, 0x3F, 0xFF, 0x3F, 0x0F, 0x00, 0x00, 0x00, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x03, 0x3F, 0xFF, 0x0F, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0xF8, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x0E, 0x0E, 0x0C, 0x0C, 0x0E, 0x0E, 0x0E, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x87, 0x87, 0x87, 0x87, 0x87, 0x87, 0x87, 0x87, 0x87, 0x87, 0x87, 0x87, 0x87, 0x87, 0x87, 0x07, 0x00, 0x00, 0x00, 0x09, 0xFB, 0xFB, 0xFB, 0xFB, 0xFB, 0xFB, 0xFB, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x80, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x80, 0xF8, 0xFF, 0xFF, 0xF0, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x80, 0xF0, 0xFE, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0B, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x0F, 0x3F, 0x7F, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x3F, 0x3F, 0x0F, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x80, 0x80, 0x80, 0xC0, 0xC0, 0xE0, 0xF0, 0xF8, 0xFC, 0x7F, 0x3F, 0x1F, 0x0F, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x03, 0x03, 0x07, 0x07, 0x07, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F (in formato 0x0F), 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x1F, 0x3F, 0x7F, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0xFE, 0x7E, 0x7E, 0x3E, 0x1E, 0x0E, 0x0E, 0x0E, 0x0E, 0x0E, 0x0E, 0x0E, 0x0E, 0x0E, 0x0E, 0x0E, 0x0E, 0x0F, 0x0F, 0x0F, 0x07, 0x07, 0x07, 0x03, 0x03, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x03, 0x03, 0x07, 0x07, 0x0F, 0x0F, 0x0F, 0x0F, 0x1F, 0x1F, 0x1F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x1F, 0x1F, 0x1F, 0x0F, 0x0F, 0x0F, 0x1F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x07, 0x07, 0x03, 0x03, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }; // bitmap to Heavyiron rfonde[] PROGRAMMA = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x80 (in questo 0x80), 0x80 (in questo 0x80), 0xC0 (informazioni in stato in stato in stato di, 0xC0 (informazioni in stato in stato in stato di, 0xC0 (informazioni in stato in stato in stato di, 0xE0 (in questo 0xE0), 0xE0 (in questo 0xE0), 0xF0 (in modo 0xF0), 0xF0 (in modo 0xF0), 0xF0 (in modo 0xF0), 0xF0 (in modo 0xF0), 0xF8 (in modo 0xF8), 0xF8 (in modo 0xF8), 0xF8 (in modo 0xF8), 0xFC (in formato 0xFC), 0xFC (in formato 0xFC), 0xFC (in formato 0xFC), 0xFC (in formato 0xFC), 0xFE (in modo 0xFE), 0xFE (in modo 0xFE), 0x7E, 0x7E, 0x7f, 0x7f, 0x3F (in modo di, 0x3F (in modo di, 0x3F (in modo di, 0x3F (in modo di, 0x1F, 0x1F, 0x1F, 0x1F, 0x1F, 0x1F, 0x0F (in formato 0x0F), 0x0F (in formato 0x0F), 0x0F (in formato 0x0F), 0x0F (in formato 0x0F), 0x0F (in formato 0x0F), 0x0F (in formato 0x0F), 0x0F (in formato 0x0F), 0x0F (in formato 0x0F), 0x0F (in formato 0x0F), 0x07 (in tissuta in stato di, 0x07 (in tissuta in stato di, 0x07 (in tissuta in stato di, 0x07 (in tissuta in stato di, 0x07 (in tissuta in stato di, 0x07 (in tissuta in stato di, 0x07 (in tissuta in stato di, 0x07 (in tissuta in stato di, 0x07 (in tissuta in stato di, 0x07 (in tissuta in stato di, 0x07 (in tissuta in stato di, 0x07 (in tissuta in stato di, 0x07 (in tissuta in stato di, 0x07 (in tissuta in stato di, 0x07 (in tissuta in stato di, 0x07 (in tissuta in stato di, 0x07 (in tissuta in stato di, 0x07 (in tissuta in stato di, 0x07 (in tissuta in stato di, 0x07 (in tissuta in stato di, 0x07 (in tissuta in stato di, 0x07 (in tissuta in stato di, 0x0F (in formato 0x0F), 0x0F (in formato 0x0F), 0x0F (in formato 0x0F), 0x0F (in formato 0x0F), 0x0F (in formato 0x0F), 0x0F (in formato 0x0F), 0x0F (in formato 0x0F), 0x0F (in formato 0x0F), 0x0F (in formato 0x0F), 0x1F, 0x1F, 0x1F, 0x1F, 0x1F, 0x1F, 0x3F (in modo di, 0x3F (in modo di, 0x3F (in modo di, 0x3F (in modo di, 0x7f, 0x7f, 0x7E, 0x7E, 0xFE (in modo 0xFE), 0xFE (in modo 0xFE), 0xFE (in modo 0xFE), 0xFC (in formato 0xFC), 0xFC (in formato 0xFC), 0xFC (in formato 0xFC), 0xF8 (in modo 0xF8), 0xF8 (in modo 0xF8), 0xF8 (in modo 0xF8), 0xF8 (in modo 0xF8), 0xF0 (in modo 0xF0), 0xF0 (in modo 0xF0), 0xF0 (in modo 0xF0), 0xE0 (in questo 0xE0), 0xE0 (in questo 0xE0), 0xC0 (informazioni in stato in stato in stato di, 0xC0 (informazioni in stato in stato in stato di, 0xC0 (informazioni in stato in stato in stato di, 0x80 (in questo 0x80), 0x80 (in questo 0x80), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x02 (in tissuta 0x0, 0x03 (in tissuta (in ti, 0x07 (in tissuta in stato di, 0x07 (in tissuta in stato di, 0x0F (in formato 0x0F), 0x0F (in formato 0x0F), 0x1F, 0x1F, 0x1F, 0x0F (in formato 0x0F), 0x0F (in formato 0x0F), 0x07 (in tissuta in stato di, 0x07 (in tissuta in stato di, 0x07 (in tissuta in stato di, 0x03 (in tissuta (in ti, 0x03 (in tissuta (in ti, 0x03 (in tissuta (in ti, 0x01 (in tissuta (in ti, 0x01 (in tissuta (in ti, 0x01 (in tissuta (in ti, 0x80 (in questo 0x80), 0x80 (in questo 0x80), 0x80 (in questo 0x80), 0xC0 (informazioni in stato in stato in stato di, 0xC0 (informazioni in stato in stato in stato di, 0xC0 (informazioni in stato in stato in stato di, 0xE0 (in questo 0xE0), 0xE0 (in questo 0xE0), 0xE0 (in questo 0xE0), 0xF0 (in modo 0xF0), 0xF0 (in modo 0xF0), 0xF0 (in modo 0xF0), 0xF0 (in modo 0xF0), 0xF8 (in modo 0xF8), 0xF8 (in modo 0xF8), 0xF8 (in modo 0xF8), 0xF8 (in modo 0xF8), 0xF8 (in modo 0xF8), 0xFC (in formato 0xFC), 0xFC (in formato 0xFC), 0xFC (in formato 0xFC), 0xFC (in formato 0xFC), 0xFC (in formato 0xFC), 0xFC (in formato 0xFC), 0xFC (in formato 0xFC), 0xFC (in formato 0xFC), 0x7E, 0x7E, 0x7E, 0x7E, 0x7E, 0x7E, 0x7E, 0x7E, 0x7E, 0x7E, 0x7E, 0x7E, 0x7E, 0x7E, 0x7E, 0x7E, 0x7E, 0x7E, 0x7E, 0x7E, 0x7E, 0x7E, 0xFC (in formato 0xFC), 0xFC (in formato 0xFC), 0xFC (in formato 0xFC), 0xFC (in formato 0xFC), 0xFC (in formato 0xFC), 0xFC (in formato 0xFC), 0xFC (in formato 0xFC), 0xFC (in formato 0xFC), 0xF8 (in modo 0xF8), 0xF8 (in modo 0xF8), 0xF8 (in modo 0xF8), 0xF8 (in modo 0xF8), 0xF8 (in modo 0xF8), 0xF0 (in modo 0xF0), 0xF0 (in modo 0xF0), 0xF0 (in modo 0xF0), 0xF0 (in modo 0xF0), 0xE0 (in questo 0xE0), 0xE0 (in questo 0xE0), 0xE0 (in questo 0xE0), 0xC0 (informazioni in stato in stato in stato di, 0xC0 (informazioni in stato in stato in stato di, 0xC0 (informazioni in stato in stato in stato di, 0x80 (in questo 0x80), 0x80 (in questo 0x80), 0x80 (in questo 0x80), 0x00 (in questo 0x00), 0x01 (in tissuta (in ti, 0x01 (in tissuta (in ti, 0x01 (in tissuta (in ti, 0x03 (in tissuta (in ti, 0x03 (in tissuta (in ti, 0x07 (in tissuta in stato di, 0x07 (in tissuta in stato di, 0x07 (in tissuta in stato di, 0x0F (in formato 0x0F), 0x0F (in formato 0x0F), 0x1F, 0x1F, 0x1F, 0x1F, 0x0F (in formato 0x0F), 0x0F (in formato 0x0F), 0x07 (in tissuta in stato di, 0x07 (in tissuta in stato di, 0x03 (in tissuta (in ti, 0x02 (in tissuta 0x0, 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x02 (in tissuta 0x0, 0x02 (in tissuta 0x0, 0x07 (in tissuta in stato di, 0x07 (in tissuta in stato di, 0x0F (in formato 0x0F), 0x0F (in formato 0x0F), 0x1F, 0x1F, 0x1F, 0x1F, 0x0F (in formato 0x0F), 0x0F (in formato 0x0F), 0x0F (in formato 0x0F), 0x07 (in tissuta in stato di, 0x07 (in tissuta in stato di, 0x07 (in tissuta in stato di, 0x03 (in tissuta (in ti, 0x03 (in tissuta (in ti, 0x03 (in tissuta (in ti, 0x01 (in tissuta (in ti, 0x01 (in tissuta (in ti, 0x01 (in tissuta (in ti, 0x81 (in questo stato del sistema), 0x81 (in questo stato del sistema), 0x80 (in questo 0x80), 0x80 (in questo 0x80), 0xC0 (informazioni in stato in stato in stato di, 0xC0 (informazioni in stato in stato in stato di, 0xC0 (informazioni in stato in stato in stato di, 0xC0 (informazioni in stato in stato in stato di, 0xC0 (informazioni in stato in stato in stato di, 0xE0 (in questo 0xE0), 0xE0 (in questo 0xE0), 0xE0 (in questo 0xE0), 0xE0 (in questo 0xE0), 0xE0 (in questo 0xE0), 0xE0 (in questo 0xE0), 0xE0 (in questo 0xE0), 0xE0 (in questo 0xE0), 0xE0 (in questo 0xE0), 0xE0 (in questo 0xE0), 0xE0 (in questo 0xE0), 0xE0 (in questo 0xE0), 0xE0 (in questo 0xE0), 0xE0 (in questo 0xE0), 0xE0 (in questo 0xE0), 0xE0 (in questo 0xE0), 0xE0 (in questo 0xE0), 0xE0 (in questo 0xE0), 0xE0 (in questo 0xE0), 0xE0 (in questo 0xE0), 0xE0 (in questo 0xE0), 0xC0 (informazioni in stato in stato in stato di, 0xC0 (informazioni in stato in stato in stato di, 0xC0 (informazioni in stato in stato in stato di, 0xC0 (informazioni in stato in stato in stato di, 0x80 (in questo 0x80), 0x80 (in questo 0x80), 0x80 (in questo 0x80), 0x81 (in questo stato del sistema), 0x01 (in tissuta (in ti, 0x01 (in tissuta (in ti, 0x01 (in tissuta (in ti, 0x03 (in tissuta (in ti, 0x03 (in tissuta (in ti, 0x03 (in tissuta (in ti, 0x07 (in tissuta in stato di, 0x07 (in tissuta in stato di, 0x07 (in tissuta in stato di, 0x0F (in formato 0x0F), 0x0F (in formato 0x0F), 0x0F (in formato 0x0F), 0x1F, 0x1F, 0x3F (in modo di, 0x1F, 0x1F, 0x0F (in formato 0x0F), 0x0F (in formato 0x0F), 0x07 (in tissuta in stato di, 0x06 (in inglese), 0x02 (in tissuta 0x0, 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x02 (in tissuta 0x0, 0x06 (in inglese), 0x07 (in tissuta in stato di, 0x0F (in formato 0x0F), 0x0F (in formato 0x0F), 0x1F, 0x1F, 0x3F (in modo di, 0x3F (in modo di, 0x1F, 0x1F, 0x0F (in formato 0x0F), 0x0F (in formato 0x0F), 0x0F (in formato 0x0F), 0x0F (in formato 0x0F), 0x07 (in tissuta in stato di, 0x07 (in tissuta in stato di, 0x07 (in tissuta in stato di, 0x07 (in tissuta in stato di, 0x07 (in tissuta in stato di, 0x07 (in tissuta in stato di, 0x07 (in tissuta in stato di, 0x07 (in tissuta in stato di, 0x07 (in tissuta in stato di, 0x07 (in tissuta in stato di, 0x07 (in tissuta in stato di, 0x07 (in tissuta in stato di, 0x07 (in tissuta in stato di, 0x07 (in tissuta in stato di, 0x07 (in tissuta in stato di, 0x07 (in tissuta in stato di, 0x07 (in tissuta in stato di, 0x07 (in tissuta in stato di, 0x0F (in formato 0x0F), 0x0F (in formato 0x0F), 0x0F (in formato 0x0F), 0x0F (in formato 0x0F), 0x1F, 0x1F, 0x1F, 0x3F (in modo di, 0x3F (in modo di, 0x1F, 0x1F, 0x0F (in formato 0x0F), 0x0F (in formato 0x0F), 0x06 (in inglese), 0x06 (in inglese), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x04 (in tissuta 0x0, 0x06 (in inglese), 0x0E (in formato 0x0E), 0x0E (in formato 0x0E), 0x0E (in formato 0x0E), 0x1e, 0x1e, 0x3F (in modo di, 0x3F (in modo di, 0x3E, 0x1e, 0x1e, 0x0E (in formato 0x0E), 0x0E (in formato 0x0E), 0x06 (in inglese), 0x04 (in tissuta 0x0, 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00), 0x00 (in questo 0x00) }; Dopo la programmazione, installiamo tutto nella custodia stampata e abbiamo un bel orologio fatto in casa, sempre aggiornato. L'orologio ora viene eseguito solo quando un server NTP ci raggiunge! Come attività si può considerare di cambiare il software in modo che l'ora viene aggiornata solo al minuto o all'ora completa e in mezzo calcoliamo autosufficientemente in ESP8266-01S. Ci sono anche altre linee disponibili sul display, che potrebbero anche essere integrate con una data. Nella parte superiore dell'alloggiamento ci sono ancora fori previsti per gli interruttori, che ne dici di un interruttore ON/ OFF? Divertiti a replicare e lascia le tue idee per migliorare i commenti.