İçindekiler:

TTGO T-Watch: 9 Adım (Resimlerle)
TTGO T-Watch: 9 Adım (Resimlerle)

Video: TTGO T-Watch: 9 Adım (Resimlerle)

Video: TTGO T-Watch: 9 Adım (Resimlerle)
Video: Grizu263 ekibi ile Uydu Izleme ve Yer Kontrol Istasyonu 2024, Temmuz
Anonim
Image
Image
TTGO T-İzle
TTGO T-İzle

Bu talimat, TTGO T-Watch ile oynamaya nasıl başlayacağınızı gösterir.

Adım 1: TTGO T-Watch Nedir?

TTGO T-Watch Nedir?
TTGO T-Watch Nedir?
TTGO T-Watch Nedir?
TTGO T-Watch Nedir?
TTGO T-Watch Nedir?
TTGO T-Watch Nedir?
TTGO T-Saat Nedir?
TTGO T-Saat Nedir?

TTGO T-Watch, saat şeklindeki ESP32 tabanlı geliştirme kitidir. 16 MB flash ve 8 MB PSRAM her ikisi de en üst düzey özelliklerdir. Ayrıca yerleşik 240x240 IPS LCD, dokunmatik ekran, mikro SD kart bağlantı noktası, I2C bağlantı noktası, RTC, 3 eksenli ivmeölçer ve özel bir düğme. Arka panel ayrıca LORA, GPS ve SIM gibi diğer modüllere de değiştirilebilir.

Ancak kullanılabilir bir saat haline getirebileceği en önemli şey güç sistemidir. AXP202 çok kanallı programlanabilir güç yönetimi çipini entegre etti. I2C tarafından kontrol edilebilir bir güç çipine sahip bir geliştirme kitini ilk kez görüyorum!

AXP202X_Library arayüzüne göre, her güç kanalını açıp kapatabilir, pil seviyesini, şarj durumunu okuyabilir ve hatta güç düğmesine bastığınız gibi gücü doğrudan kapatabilirsiniz.

Referans:

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

2. Adım: Basit İzleme PoC

Basit İzleme PoC
Basit İzleme PoC

Güç yongası iyi görünüyor, ancak yerleşik 180 mAh pil için ne kadar dayanır?

Saat görünümü olarak tasarlandığından, güç çipinin nasıl çalıştığını incelemek için PoC olarak basit bir saat örneği ile başlayalım.

3. Adım: Saat Yüzünü Tasarlayın

Tasarım Saat Yüzü
Tasarım Saat Yüzü

ESP32 çok güçlü bir çip olup, 240 Mhz çift çekirdekli CPU ve 80 Mhz SPI hızında oldukça akıcı bir ekran düzeni tasarlayabilmektedir. Bu yüzden sürekli taramalı ikinci el ile düzgün bir saat yüzü tasarladım.

Ancak tasarım zorlukları beklenmedik bir şekilde yüksek, son saniye ibresini göz kırpmadan çıkarmak kolay değil. Bunu yapmak için 4 ekstra yöntem denedim. Yukarıdaki resimler, ekranda kaldırılmayan son saniye piksellerinde kalan başarısız bir yeniden çizimi göstermektedir. Tasarım saat yüzü çalışması, bu projenin biraz dışında söylenebilecek pek çok kelimeye sahip. Bir sonraki derslerimde tasarım yolculuğu hakkında daha fazla şey söyleyebilir miyim, adı "Arduino Watch Core" olmalı.

4. Adım: Saati Ayarlayın

T-Watch'in yerleşik RTC çipi vardır, bu da geliştirme sırasında sıfırlama arasındaki süreyi koruyabileceği anlamına gelir. Zamanı tutabilmesi için önce zamanı ayarlamalıyız.

Saati ayarlamanın çeşitli yolları vardır:

  • ESP32'nin WiFi özelliği vardır, böylece zamanı NTP ile senkronize edebilirsiniz
  • dijital kamera gibi diğer elektronik cihazlara benzer şekilde, zamanı ayarlamak için bir UI yazabilirsiniz.
  • GPS arka panelini kullanabilir, ardından uydudan zamanı alabilirsiniz.

Basitleştirmek için, zamanı ayarlamak için hala çeşitli tembel bir yol, bu yolu bazı TFT saat örneklerinde bulabilirsiniz. Programı Arduino'da derlediğinizde, önişlemci derleme zamanını kaydetmek için "_DATE_" ve "_TIME_" 2 değişkenini tanımladı. Bu bilgiyi RTC zamanını ayarlamak için çok basit bir program yapmak için kullanabiliriz.

Not:

Bu basit program her zaman açılışta zamanı ayarlar. Ancak derleme zamanı yalnızca ilk açılışta geçerlidir, bu nedenle zaman başarısını ayarladığında diğer programın üzerine yazmalısınız.

Referans:

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

Adım 5: Güç Tüketimi

Güç tüketimi
Güç tüketimi
Güç tüketimi
Güç tüketimi

Saat çalışırken, sürekli tarama saniye ibresi gösterdiğinde, 60 mA'dan biraz daha fazla tüketir. Güç tasarrufu nedeni ile belli bir süre sonra uyku moduna geçmelidir.

LCD arka ışığını kapatıp ESP32 derin uykuyu çağırırsam, yaklaşık 7,1 mA'ya düşer. 180 mAh pil için sadece 1 gün dayanabilir.

LCD çipi tarafından yaklaşık 6 mA tüketildiğini biliyorum. ST7789 veri sayfasına göre uyku moduna girme komutu vardır. Ancak mevcut TFT_eSPI kitaplığı henüz uyku modu API'sine sahip değil.

Ayrıca hala bir yerlerde tüketilen yaklaşık 1 mA var.

Adım 6: Programlanabilir Güç Yönetimi Yongası

Image
Image
programı
programı

Geliştirme kitinde, veri sayfalarına göre çoğu güç tasarrufu modunu destekleyen birçok yonga var. Ancak, tüm kitaplıklar güç tasarrufu modu API'sini göstermedi. Ve her modülün uyku moduna girmesini kontrol ederek ve çağırarak güç tasarrufu için uzun bir kodlamadır.

Güç düğmesine doğrudan basıldığı gibi gücü doğrudan kapatmaya ne dersiniz? AXP202X_Library, yalnızca kapatma() işlevini çağırarak bunu yapabilir. Kapatma modunda, yalnızca 0,3 mA'nın biraz altında tüketir. 180 mAh pil için 25 gün dayanabilir!

Not:

28 Haziran'da pili yeni şarj ettim, en son pil durumunu öğrenmek için twitter'ımı takip edebilirsiniz.

Güncelleme:

Pil 18 Temmuz'da bitiyor, pil 20 gün dayanabiliyor. Günde birkaç kez zamanı kontrol ettiğim süre boyunca, saatin normal kullanımda 1-2 hafta dayanabileceğini varsayıyorum.

Referans:

github.com/lewisxhe/AXP202X_Library/pull/2

Adım 7: Program

  1. Yazılımı ve kitaplığı yüklemek için https://github.com/Xinyuan-LilyGO/TTGO-T-Watch sayfası talimatını izleyin.
  2. Kaynak kodunu GitHub'dan indirin:
  3. RTC tarih ve saatini güncellemek için Set_RTC.ino dosyasını açın, derleyin ve yükleyin
  4. Arduino-T-Watch-simple.ino'yu açın, derleyin ve yükleyin
  5. Tamamlandı!

Basit izleme programı şunları yapacaktır:

  • RTC tarih ve saatini okuyun
  • saat işareti çizin (yuvarlak veya kare saat işaretini seçebilirsiniz)
  • sürekli süpürme ikinci elini göster
  • 60 saniye sonra kapatma gücü (veya anında kapanma için güç düğmesini basılı tutabilirsiniz)
  • tekrar açmak için güç düğmesine basın

Adım 8: Mutlu Programlama

Mutlu Programlama!
Mutlu Programlama!

TTGO T-watch, basit bir saatten çok daha fazlasını yapabilir, ör.

  • ESP32, WiFi ve BT kablosuz iletişimi yapabilir
  • dokunmatik ekran panelini kullanmak daha süslü bir kullanıcı arayüzü geliştirebilir
  • yerleşik üç eksenli ivmeölçer (BMA423), yerleşik adım sayacı algoritması ve diğer çok işlevli GSensor
  • değiştirilebilir arka panel LORA, GPS, SIM işlevi ekleyebilir
  • I2C portu çok daha fazla özelliği genişletebilir

Adım 9: Arduino-T-Watch-GFX

Image
Image

Arduino-T-Watch-simple, uyanmak için küçük güç düğmesine basıp basılı tutmayı gerektirir ve LCD'nin ilk tanıtımı birkaç saniye gecikmelidir. Yani kullanıcı deneyimi o kadar iyi değil.

Bunu geliştirmek için Arduino-T-Watch-GFX adlı başka bir program ekledim. Bu program Arduino_GFX ekran kitaplığını kullanacak şekilde değişir, daha sonra güç tasarrufu için ekrana uyku moduna girdiğini söyleyebilir. Yani ESP32 hafif uykuya geçtiğinde, şimdi sadece 3 mA'nın altında tüketiyor. Ayrıca artık ekrana dokunarak uyanmayı tetikleyebilir. ESP32 uyandırma ve görüntüleme uyku modu, tüm yeniden başlatma işleminden çok daha hızlıdır, yukarıdaki videoyu görebilirsiniz, neredeyse anında yanıttır. Teorik olarak pil 2 günden fazla dayanabilmelidir:P

Önerilen: