Mundarija:
- 1 -qadam: Ob -havo stantsiyasi
- 2 -qadam: materiallar
- 3 -qadam: dasturiy ta'minot
- 4 -qadam: LCD pinout
- 5 -qadam: WS amalda
- 6 -qadam: Ba'zi muhim maslahatlar
- 7 -qadam: bajarildi
- 8 -qadam: Kichik yangilanish
Video: TSP LCD displeyli ESP8266/ESP32 ob -havo stantsiyasi: 8 qadam
2024 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2024-01-30 13:23
Salom!
Bu qisqa ko'rsatmali men o'zimning ikkinchi Esp8266 WS loyihamni taqdim qilmoqchiman. Men birinchi ESP loyihasini joylashtirganimdan so'ng, men o'zimni ikkinchi loyihaga aylantirmoqchi edim. Shunday qilib, mening ehtiyojlarimga mos keladigan eski manba kodini qayta ishlash uchun bo'sh vaqtim bor edi.
Shuning uchun, agar qarshi bo'lmasangiz, men uni taqdim etaman.
1 -qadam: Ob -havo stantsiyasi
WS hali ham ob -havo ma'lumotlarini yuklab olish va ekranda ko'rsatish uchun openweathermap API kalitidan foydalanadi.
Biroz kodlash kerak edi, chunki u formada men xohlagan ob -havo belgilarini ko'rsatolmasdi.
2 -qadam: materiallar
WS uchun zarur bo'lgan qismlar:
- Nodemcu V3 ESP8266
- ST7735 haydovchi IC bilan 1,8 dyuymli TFT LCD
- F-F simlari
- Manba kodi
- Arduino IDE
- SPIFFS -ni qo'llab -quvvatlash
- Openweathermap API kaliti
3 -qadam: dasturiy ta'minot
Men ushbu loyiha uchun manba kodini va kerakli bitmap rasmlarini beraman, uni github sahifamdan yuklab oling: https://github.com/Lacybad/ESP8266-ST7735- ob-havo-…
Men foydalangan kutubxona Bodmer tomonidan yaratilgan TFT_eSPI.
Siz qilishingiz kerak bo'lgan narsa: to'g'ri kutubxonalarni yuklab oling, kompilyatsiya qiling va taxtaga yuklang, SPIFFS yordamida bitmap rasmlarini ESP -ga yuklang va lcd -ga ulaning.
Men 24 bitli 100 X100 bitmapli tasvirlardan foydalanganman, lekin siz boshqa har qanday ikonkalardan foydalanishingiz mumkin. Men ishlatganlar https://www.flaticon.com saytidan yuklab olingan
4 -qadam: LCD pinout
Pinout quyidagicha:
// SDO/MISO ni NodeMCU pin D6 -ga ko'rsatish (yoki TFT o'qilmasa, uzilgan holda qoldiring)
// LEDni NodeMCU pin VIN (yoki 5V, pastga qarang) ga ko'rsatish
// SC5 -ni NodeMCU pin D5 -ga ko'rsatish
// SDI/MOSI -ni D7 NodeMCU piniga ko'rsatish
// DC (RS/AO) ni D3 NodeMCU piniga ko'rsatish
// RESETni NodeMCU pin D4 (yoki RST, pastga qarang) ga ko'rsatish
// CS ni NodeMCU pin D8 (yoki GND, pastga qarang) ga ko'rsatish
// GND ni NodeMCU pin GND (0V) ga ko'rsatish
// VCC ni NodeMCU 5V yoki 3.3V ga ko'rsatish
Yorug'likni kamaytirish uchun siz 10K potentsiometrdan yoki boshqa GPIO pinidan foydalanishingiz mumkin. O'zimga kelsak, men odatda orqa nuri pinini TX piniga ulayman. Bilaman, bu ESP uchun juda yaxshi g'oya yoki juda sog'lom emas, lekin u shunday ishlaydi.
5 -qadam: WS amalda
Hamma narsani to'g'ri bajarganingizdan so'ng, meteorologik stansiya Internetga ulanganini va ob -havo ma'lumotlarini yuklayotganini ko'rishingiz mumkin.
Turli xil parametrlar turli halqalarda ajratilgan.
Siz ko'rgan narsa - bu ob -havoning haqiqiy tavsifi, harorat, namlik, shamol tezligi, metrlarda ko'rish qobiliyati, havo bosimi, shamol burchagi, bulut qoplamasi foizda (%).
21:00 dan 7:00 gacha bo'lgan bonusga kelsak, displey tungi vaqtni aks ettirish uchun teskari aylanadi.
6 -qadam: Ba'zi muhim maslahatlar
Hammaga ma'lumki, Internetda 1,8 dyuymli TFT-ning bir nechta variantlari mavjud. Haqiqiy Adafruit lcd-lari bilan odatda hech qanday muammo bo'lmaydi. Lekin soxta (odatda Aliexpress-dan) ishlatilganda siz ba'zi o'zgartirishlar kiritishingiz kerak bo'ladi.
Bodmers TFT_eSPI kutubxonasi juda ajoyib va boy funktsiyaga ega. Va eng yaxshi tomoni shundaki, u siz foydalanadigan 1,8 dyuymli TFT turiga qarab piksellar almashinuvini boshqarishga muvaffaq bo'ldi.
Ushbu muammoni hal qilish uchun men quyidagilarni taklif qilaman.
Kutubxona papkasiga o'ting va User_Setup.h faylini tahrirlang. Sharh #ST7735_DRIVERni belgilang va boshqalarga izoh bering.
Keyin tft balandligini kengligi bo'yicha izohlang. Va keyin mening holatimda (REDTAB), masalan: #define ST7735_REDTAB. Shundan so'ng, uni hozir saqlang va eskizni tuzing va taxtaga yuklang. Eskizda parametrlarni aniqlaganimga ishonch hosil qilish uchun, bu biroz uzoq protsedura, chunki siz ofset yo'qolguncha taxtaga chiqish uchun har safar eskizni kompilyatsiya qilishingiz va yuklashingiz kerak bo'ladi, lekin tajriba o'tkazishga arziydi. H tahrir qilish uchun. Men Wordpad -ni tavsiya qilaman. Rasmlar kiritilgan.
7 -qadam: bajarildi
Hamma narsani to'g'ri bajarganingizdan so'ng, siz ushbu kichik gadjetdan bahramand bo'lishingiz mumkin. Men bitmap tasvirlarini ob -havo kodlari bilan iloji boricha birlashtirishga harakat qildim, lekin hozircha uni sinab ko'rmoqdaman.
Asosan, men buni o'zim uchun qildim, lekin bir kundan keyin men buni baham ko'raman deb o'yladim. Balki mendan ko'ra kimgadir yoqar.
Mening ko'rsatmalarni o'qiganingiz uchun tashakkur, umid qilamanki, siz uni foydali deb topasiz va xohlaganingizcha ishlatasiz.
Hayrli kun!
8 -qadam: Kichik yangilanish
Bir necha kundan keyin men ushbu WS -ni yangi shaklda qayta tuzaman deb o'yladim.
O'zgarishlar: ESP32 Uno R3
Parallel ILI9340/41 TFT LCD
Yangi piktogramma
1 ta qo'shimcha variant
User_setup.h faylini TFT_eSPI kutubxonasida mos ravishda eskizda tahrir qiling. Pls ularga izoh qoldiring va boshqa variantni izohlang, aks holda u ishlamaydi.
Siz GPIO 35 dan 15 gacha, GPIO 33 dan 34 gacha, GPIO 32 dan 36 gacha ulashingiz kerak, chunki ular faqat kirish pimlari, keyin displeyimiz ishlamaydi (rasmga qarang).
Manba kodi github -da mavjud.
Tavsiya:
Sensorli displeyli ESP32 asosidagi RFID o'quvchi: 7 qadam
Sensorli displeyli ESP32 asosidagi RFID o'quvchi: ESP32 DEV KIT C moduli, RC-522 asosidagi o'quvchi kompyuteri va AZ-Touch ESP to'plami yordamida devorga o'rnatish uchun TFT chiqishi bilan oddiy RFID o'quvchi qanday yaratilishini ko'rsataman. Siz ushbu o'quvchidan eshikka kirish yoki boshqa odamlarning kirishi uchun foydalanishingiz mumkin
ESP32 va xarakterli LCD displeyli harfli -raqamli klaviatura: 4 qadam
ESP32 va xarakterli LCD displeyli alifodali -raqamli klaviatura: Ushbu maqola ESP32 -ga ma'lumotlarni kiritish uchun raqamli raqamli klaviatura moduli va 16x2 I2C belgili LCD modulidan foydalanishni ko'rsatadi. Bu usuldan ESP32 ga Wi-Fi hisob ma'lumotlarini va boshqa ma'lumotlarni kiritish va olish uchun foydalanish mumkin
I2c LCD displeyli Arduino va ESP8266: 9 qadam
Arduino va ESP8266 I2c LCD displeyli: Bizning asosiy maqsadimiz - 2x16 yoki 20x4 LCD displey uchun ketma -ket i2c modulining ishlashini ko'rsatish. Ushbu modul yordamida biz faqat ikkita pin (SDA va SCL) yordamida yuqorida ko'rsatilgan displeylarni boshqarishimiz mumkin. Bu muloqotni juda sodda va oson qiladi
LCD displeyli ESP8266 raqamli termometr: 7 qadam
LCD displeyli ESP8266 raqamli termometr: Bugun men sizga ESP8266 NodeMCU-dagi TFT LCD displeyidan ma'lum vaqtdagi harorat va namlik ma'lumotlarini ko'rsatish uchun ko'rsataman. Men harorat va namlik o'lchagichi bo'lgan DHT22 yordamida displeydan foydalanishga misol keltiraman. Ichida
Yotoqxona elektr stantsiyasi/NiMH zaryadlash stantsiyasi: 3 qadam
Yotoqxona elektr stantsiyasi/NiMH zaryadlash stantsiyasi: Menda elektr stantsiyasi bor. Men bitta dastgohga zaryadlangan hamma narsani siqib chiqarmoqchi edim va unda lehimlash uchun joy bo'lishi kerak edi. Quvvatli narsalar ro'yxati: uyali telefon (buzilgan, lekin u mening telefonim batareyalarini zaryad qiladi, shuning uchun u har doim ulanadi va zaryadlanadi)