Sommario:

TTGO T-Watch: 9 passaggi (con immagini)
TTGO T-Watch: 9 passaggi (con immagini)

Video: TTGO T-Watch: 9 passaggi (con immagini)

Video: TTGO T-Watch: 9 passaggi (con immagini)
Video: DOOM on the Lilygo T-watch! 2024, Novembre
Anonim
Image
Image
TTGO T-Watch
TTGO T-Watch

Queste istruzioni mostrano come iniziare a giocare con TTGO T-Watch.

Passaggio 1: cos'è TTGO T-Watch?

Cos'è TTGO T-Watch?
Cos'è TTGO T-Watch?
Cos'è TTGO T-Watch?
Cos'è TTGO T-Watch?
Cos'è TTGO T-Watch?
Cos'è TTGO T-Watch?
Cos'è TTGO T-Watch?
Cos'è TTGO T-Watch?

TTGO T-Watch è un kit di sviluppo basato su ESP32 a forma di orologio. 16 MB di flash e 8 MB di PSRAM sono entrambe le specifiche migliori. Incorpora anche un LCD IPS 240x240, touch screen, porta per scheda micro-SD, porta I2C, RTC, accelerometro a 3 assi e un pulsante personalizzato. Il backplane può anche essere commutato su altri moduli come LORA, GPS e SIM.

Ma la cosa più importante che può diventare un orologio utilizzabile è il sistema di alimentazione. Ha integrato il chip di gestione dell'alimentazione programmabile multicanale AXP202. Questa è la prima volta che vedo un kit di sviluppo con un chip di alimentazione controllabile I2C!

Secondo l'interfaccia AXP202X_Library, è possibile controllare l'accensione e lo spegnimento di ciascun canale di alimentazione, leggere il livello della batteria, lo stato di carica e persino spegnere direttamente l'alimentazione, proprio come si preme il pulsante di accensione.

Rif.:

github.com/Xinyuan-LilyGO/TTGO-T-Watch

Passaggio 2: semplice orologio PoC

Orologio semplice PoC
Orologio semplice PoC

Il chip di alimentazione sembra buono, ma quanto dura la batteria integrata da 180 mAh?

Dal momento che è stato progettato come una prospettiva per l'orologio, iniziamo con un semplice esempio di orologio come PoC per esaminare come funziona il chip di alimentazione.

Passaggio 3: progettare il quadrante dell'orologio

Design quadrante dell'orologio
Design quadrante dell'orologio

ESP32 è un chip molto potente, CPU dual core da 240 Mhz e velocità SPI di 80 Mhz in grado di progettare un layout di visualizzazione molto fluido. Così ho progettato un quadrante decente con la lancetta dei secondi a scansione continua.

Tuttavia, le difficoltà di progettazione sono inaspettatamente elevate, non è facile rimuovere la lancetta dell'ultimo secondo senza battere le palpebre. Ho provato 4 metodi extra per farlo. Le immagini sopra mostrano un ridisegno fallito che è rimasto pixel dell'ultimo secondo non rimosso sullo schermo. Il design del quadrante dell'orologio ha molte parole da dire, ma un po' al di fuori di questo progetto. Forse posso dire di più sul viaggio del design nei miei prossimi istruttori, dovrebbe essere chiamato "Arduino Watch Core".

Passaggio 4: imposta l'ora

T-Watch ha un chip RTC integrato, il che significa che può mantenere il tempo tra il ripristino durante lo sviluppo. Prima che possa mantenere l'ora, dovremmo prima impostare l'ora.

Ci sono vari modi per impostare l'ora:

  • ESP32 ha funzionalità WiFi, quindi puoi sincronizzare l'ora con NTP
  • simile ad altri dispositivi elettronici, come la fotocamera digitale, puoi scrivere un'interfaccia utente per impostare l'ora
  • puoi usare il backplane GPS, quindi puoi ottenere l'ora dal satellite

Per semplificare, è ancora un modo molto pigro per impostare l'ora, puoi trovare questo modo in alcuni esempi di orologio TFT. Quando si compila il programma in Arduino, il preprocessore ha definito 2 variabili "_DATE_" e "_TIME_" per registrare il tempo di compilazione. Possiamo utilizzare queste informazioni per creare un programma molto semplice per impostare l'ora RTC.

Nota:

Questo semplice programma imposta sempre l'ora all'avvio. Ma il tempo di compilazione è valido solo al primo avvio, quindi dovresti sovrascrivere con un altro programma una volta impostato il successo del tempo.

Rif.:

gcc.gnu.org/onlinedocs/cpp/Standard-Predef…

Passaggio 5: consumo energetico

Consumo di energia
Consumo di energia
Consumo di energia
Consumo di energia

Quando l'orologio è in funzione, mostrando la lancetta dei secondi a scansione continua, consuma poco più di 60 mA. Per motivi di risparmio energetico, dovrebbe entrare in modalità di sospensione dopo un certo periodo.

Se spengo la retroilluminazione LCD e chiamo ESP32 Deep Sleep, scende a circa 7,1 mA. Può durare solo circa 1 giorno per la batteria da 180 mAh.

So che circa 6 mA vengono consumati dal chip LCD. Secondo la scheda tecnica ST7789, c'è un comando per entrare in modalità sospensione. Ma l'attuale libreria TFT_eSPI non ha ancora l'API della modalità di sospensione.

E inoltre c'è ancora circa 1 mA consumato da qualche parte.

Passaggio 6: chip di gestione dell'alimentazione programmabile

Image
Image
Programma
Programma

Ci sono molti chip nel kit di sviluppo, secondo la loro scheda tecnica, la maggior parte di essi supporta la modalità di risparmio energetico. Tuttavia, non tutte le librerie hanno esposto l'API della modalità di risparmio energetico. Ed è una lunga codifica per il risparmio energetico controllando e chiamando ogni modulo per entrare in modalità di sospensione.

Che ne dici di spegnere direttamente l'alimentazione proprio come se avessi premuto direttamente il pulsante di accensione? AXP202X_Library può farlo semplicemente chiamando la funzione shutdown(). In modalità di spegnimento, consuma solo poco meno di 0,3 mA. Può durare 25 giorni per la batteria da 180 mAh!

Nota:

Ho appena caricato la batteria il 28 giugno, puoi seguire il mio twitter per conoscere lo stato della batteria più recente.

Aggiornare:

La batteria si scarica il 18 luglio, la batteria può durare 20 giorni. Durante il periodo in cui controllo l'ora alcune volte al giorno, presumo che l'orologio possa durare 1-2 settimane in condizioni di utilizzo normale.

Rif.:

github.com/lewisxhe/AXP202X_Library/pull/2

Passaggio 7: programma

  1. Segui le istruzioni della pagina https://github.com/Xinyuan-LilyGO/TTGO-T-Watch per installare il software e la libreria.
  2. Scarica il codice sorgente su GitHub:
  3. Apri, compila e carica Set_RTC.ino per aggiornare la data e l'ora dell'RTC
  4. Apri, compila e carica Arduino-T-Watch-simple.ino
  5. Fatto!

Il semplice programma orologio farà:

  • leggi la data e l'ora dell'RTC
  • disegnare il segno dell'orologio (è possibile selezionare il segno dell'orologio rotondo o quadrato)
  • mostra la lancetta dei secondi a scansione continua
  • spegnere l'alimentazione dopo 60 secondi (o puoi tenere premuto il pulsante di accensione per lo spegnimento istantaneo)
  • premere il pulsante di accensione per riaccenderlo

Passaggio 8: buona programmazione

Buona programmazione!
Buona programmazione!

TTGO T-watch può fare molto di più di un semplice orologio, ad es.

  • ESP32 può effettuare comunicazioni wireless WiFi e BT
  • utilizzare il pannello touch screen può sviluppare un'interfaccia utente più elaborata
  • Accelerometro a tre assi integrato (BMA423), algoritmo contapassi integrato e altro GSensor multifunzione
  • backplane sostituibile può aggiungere LORA, GPS, funzione SIM
  • La porta I2C può estendere molte più funzionalità

Passaggio 9: Arduino-T-Watch-GFX

Image
Image

Arduino-T-Watch-semplice richiede di premere e tenere premuto il piccolo pulsante di accensione per svegliarsi e l'introduzione iniziale dell'LCD ritarda di pochi secondi. Quindi l'esperienza dell'utente non è così buona.

Ho aggiunto un altro programma chiamato Arduino-T-Watch-GFX per migliorarlo. Questo programma cambia per utilizzare la libreria di visualizzazione Arduino_GFX, quindi può dire al display di entrare in modalità di sospensione per risparmiare energia. Quindi, quando l'ESP32 entra nel sonno leggero, ora consuma solo meno di 3 mA. E ora può anche attivare la sveglia toccando lo schermo. La sveglia ESP32 e il display sleep out sono molto più veloci dell'intero processo di riavvio, puoi vedere il video sopra è una risposta quasi istantanea. Teoricamente la batteria dovrebbe durare più di 2 giorni:P

Consigliato: