İçindekiler:
- Adım 1: TTGO T-Watch Nedir?
- 2. Adım: Basit İzleme PoC
- 3. Adım: Saat Yüzünü Tasarlayın
- 4. Adım: Saati Ayarlayın
- Adım 5: Güç Tüketimi
- Adım 6: Programlanabilir Güç Yönetimi Yongası
- Adım 7: Program
- Adım 8: Mutlu Programlama
- Adım 9: Arduino-T-Watch-GFX
Video: TTGO T-Watch: 9 Adım (Resimlerle)
2024 Yazar: John Day | [email protected]. Son düzenleme: 2024-01-30 13:19
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, 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
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
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
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ı
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
- Yazılımı ve kitaplığı yüklemek için https://github.com/Xinyuan-LilyGO/TTGO-T-Watch sayfası talimatını izleyin.
- Kaynak kodunu GitHub'dan indirin:
- RTC tarih ve saatini güncellemek için Set_RTC.ino dosyasını açın, derleyin ve yükleyin
- Arduino-T-Watch-simple.ino'yu açın, derleyin ve yükleyin
- 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
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
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:
ESP32 TTGO WiFi Sinyal Gücü: 8 Adım (Resimlerle)
ESP32 TTGO WiFi Sinyal Gücü: Bu eğitimde, ESP32 TTGO kartını kullanarak bir WiFi ağ sinyal gücünün nasıl görüntüleneceğini öğreneceğiz.Videoyu izleyin
TTGO Lora OLED Saat: 4 Adım
TTGO Lora OLED Saat: LORA protokolü için piyasada bulunan çeşitli ucuz modüllerden en ucuz seçenek, yerleşik SMA anten portu ve OLED ile birlikte gelen TTGO'dur. LORA'nın kendi yetenekleri vardır, ancak bu modülü yine de BLE veya ESP modülü olarak kullanabiliriz
BITCOIN CANLI FİYATI AL TTGO ESP32: 10 Adım
BITCOIN CANLI FİYAT EDİNİN TTGO ESP32: Bu eğitimde, bir TTGO ESP32 ve Visuino kullanarak USD ve EUR cinsinden güncel bir Bitcoin fiyatının nasıl alınacağını öğreneceğiz.Videoyu izleyin.(İndirmek için Yeni Güncellenmiş Dosya aşağıda!)
Micropython ile TTGO (renkli) Ekran (TTGO T-ekran): 6 Adım
Micropython'lu TTGO (renkli) Ekran (TTGO T-ekran): TTGO T-Display, 1,14 inç renkli ekran içeren ESP32 tabanlı bir karttır. Pano 7$'dan daha düşük bir ödülle satın alınabilir (nakliye dahil, banggood'da görülen ödül). Bu, ekran içeren bir ESP32 için inanılmaz bir ödül. T
TTGO T-İzle Robotu: 11 Adım
TTGO T-Watch Robot: Bu talimat, bir TTGO T-Watch'in küçük bir robota nasıl dönüştürüleceğini gösterir