İçindekiler:

TFT LCD(ler)li ESP8266/ESP32 Hava İstasyonu: 8 Adım
TFT LCD(ler)li ESP8266/ESP32 Hava İstasyonu: 8 Adım

Video: TFT LCD(ler)li ESP8266/ESP32 Hava İstasyonu: 8 Adım

Video: TFT LCD(ler)li ESP8266/ESP32 Hava İstasyonu: 8 Adım
Video: Meraklısına! Arduino İle LoRa Modülü Kullanımı - Maduino IOT 2024, Temmuz
Anonim
TFT LCD(ler)li ESP8266/ESP32 Hava İstasyonu
TFT LCD(ler)li ESP8266/ESP32 Hava İstasyonu
TFT LCD(ler)li ESP8266/ESP32 Hava İstasyonu
TFT LCD(ler)li ESP8266/ESP32 Hava İstasyonu
TFT LCD(ler)li ESP8266/ESP32 Hava İstasyonu
TFT LCD(ler)li ESP8266/ESP32 Hava İstasyonu

Merhaba!

Bu kısa talimatta ikinci Esp8266 WS projemi sunmak istiyorum. İlk ESP projemi yayınladığımdan beri kendime ikincisini yapmak istedim. Bu yüzden eski bir kaynak kodunu ihtiyaçlarıma uyacak şekilde yeniden çalışmak için biraz boş zamanım oldu.

O yüzden sakıncası yoksa ben sunacağım.

Adım 1: Hava İstasyonu

WS, hava durumu verilerini indirmek ve ekranda görüntülemek için hala openweathermap API anahtarını kullanıyor.

Biraz kodlama gerekliydi çünkü bu formda istediğim hava durumu simgelerini görüntüleyemiyordu.

Adım 2: Malzemeler

WS için gerekli parçalar:

- Nodemcu V3 ESP8266

- ST7735 sürücü IC'li 1.8 inç TFT LCD

- F-F kabloları

- Kaynak kodu

-Arduino IDE'si

- SPIFFS desteği

- Openweathermap API anahtarı

3. Adım: Yazılım

Bu proje için gereken kaynak kodunu ve bitmap görüntülerini sağlıyorum, github sayfamdan indirin:

Kullandığım kitaplık Bodmer tarafından oluşturulan TFT_eSPI'dir.

Tek yapmanız gereken: Doğru kütüphaneleri indirin, derleyin ve tahtaya yükleyin, bitmap görüntülerini SPIFFS ile ESP'ye yükleyin ve lcd ile bağlanın.

24 bit 100 X100 bitmap görüntüleri kullandım, ancak diğer simgeleri de kullanabilirsiniz. Kullandıklarımı https://www.flaticon.com adresinden indirdim.

Adım 4: LCD Pin Çıkışı

Pin çıkışı aşağıdaki gibidir:

// SDO/MISO'yu NodeMCU pin D6'ya göster (veya TFT okumuyorsa bağlantıyı kes)

// Ekran LED'ini NodeMCU pin VIN'e (veya 5V, aşağıya bakın)

// SCK'yi NodeMCU pin D5'e göster

// SDI/MOSI'yi NodeMCU pin D7'ye göster

// DC'yi (RS/AO) NodeMCU pin D3'e göster

// NodeMCU pin D4'e RESET'i göster (veya RST, aşağıya bakın)

// CS'yi NodeMCU pin D8'e göster (veya GND, aşağıya bakın)

// GND'yi NodeMCU pin GND'ye (0V) göster

// VCC'yi NodeMCU 5V veya 3.3V'a göster

Azaltılmış arka ışık için 10K potansiyometre veya başka bir GPIO pini kullanabilirsiniz. Kendime gelince, genellikle arka ışık pinini TX pinine bağlarım. ESP için çok iyi bir fikir veya çok sağlıklı olmadığını biliyorum ama bu şekilde çalışıyor.

Adım 5: WS İş Başında

WS Eylemde
WS Eylemde
WS Eylemde
WS Eylemde
WS Eylemde
WS Eylemde

Her şeyi doğru yaptıktan sonra, meteoroloji istasyonunun internete bağlandığını ve hava durumu verilerini indirdiğini görebilirsiniz.

Farklı parametreler farklı döngülerde ayrılır.

Gördüğünüz, gerçek hava durumu tanımı, sıcaklık, nem, rüzgar hızı, metre cinsinden görünürlük, hava basıncı, rüzgar açısı, yüzde olarak bulut kapsamıdır (%).

Akşam 9 ile sabah 7 arasındaki bir bonusa gelince, ekran geceyi simgelemek için ters çevrilir.

6. Adım: Bazı Önemli İpuçları

Bazı Önemli İpuçları
Bazı Önemli İpuçları
Bazı Önemli İpuçları
Bazı Önemli İpuçları
Bazı Önemli İpuçları
Bazı Önemli İpuçları

Hepinizin bildiği gibi, 1.8 TFT'nin internetteki birkaç çeşidi vardır. Orijinal Adafruit lcd'ler ile genellikle sorun olmaz. Ancak sahte olanları (genellikle Aliexpress'den) kullanırken bazı ayarlamalar yapmanız gerekir.

Bodmers TFT_eSPI kütüphanesi çok harika ve zengin bir işlevselliğe sahiptir. Ve en iyi yanı, hangi tür 1.8 TFT kullandığınıza bağlı olarak piksel ofsetlerini işlemesini sağlamasıdır.

Bu sorunun üstesinden gelmek için aşağıdakileri öneriyorum:

Kütüphane klasörüne gidin ve User_Setup.h dosyasını düzenleyin. #define ST7735_DRIVER'ı kaldırın ve diğerlerini yorumlayın.

Ardından, tft yüksekliğini ve genişliğini kaldırın. Ve sonra benim durumumda (REDTAB) örneğin: #define ST7735_REDTAB. Bundan sonra o an için kaydedin ve taslağı derleyin ve panoya yükleyin. Emin olmak için çizimde parametreleri de tanımladım. Bu biraz uzun bir işlem çünkü ofset gidene kadar her seferinde çizimi derleyip yüklemeniz gerekiyor, ancak denemeye değer. Düzenlemek için h. Wordpad'i şiddetle tavsiye ettiğim dosyalar. Resimler dahil.

7. Adım: Tamamlandı

Her şeyi doğru yaptıktan sonra bu küçük gadget'ın keyfini çıkarabilirsiniz. Bitmap görüntülerini hava kodlarıyla olabildiğince iyi eşleştirmeyi denedim, ancak şu anda hala test ediyorum.

Aslında kendim için yaptım ama bir gün sonra paylaşayım dedim. Belki biri benden daha çok sever.

Talimatımı okuduğunuz için teşekkür ederim, umarım faydalı bulursunuz ve istediğiniz gibi kullanırsınız.

İyi günler!

8. Adım: Küçük Bir Güncelleme

Küçük Bir Güncelleme
Küçük Bir Güncelleme
Küçük Bir Güncelleme
Küçük Bir Güncelleme
Küçük Bir Güncelleme
Küçük Bir Güncelleme

Birkaç gün sonra bu WS'yi yeni bir biçimde yeniden yapacağımı düşündüm.

Değişiklikler: ESP32 Uno R3

Paralel ILI9340/41 TFT LCD

Yeni simgeler

1 ekstra seçenek

Lütfen TFT_eSPI kitaplığındaki User_setup.h dosyasını taslağa göre düzenleyin. Lütfen onları yorumlayın ve diğer seçeneği yorumlayın, aksi takdirde çalışmaz.

GPIO 35 ila 15, GPIO 33 ila 34, GPIO 32 ila 36, çünkü bunlar yalnızca giriş pinleridir ve bu durumda ekranımız çalışmayacaktır (resme bakın).

Kaynak kodu github'da mevcuttur.

Önerilen: