Mundarija:
- 1 -qadam: Sizga nima kerak
- 2 -qadam: Nextion Editor -da interfeysni ishlab chiqish
- 3 -qadam: O'chirish davri
- 4 -qadam: Visuino -ni ishga tushiring va Arduino UNO kengashi turini tanlang
- 5 -qadam: Visuino -da komponentlarni qo'shing
- 6 -qadam: Visuino Set komponentlarida
- 7 -qadam: Visuino Connect komponentlarida
- 8 -qadam: Nextion faylini SD -kartaga nusxalash
- 9 -qadam: Arduino kodini yaratish, kompilyatsiya qilish va yuklash
- 10 -qadam: O'ynang
- 11 -qadam: Resurslar
Video: Nextion displeyli va Arduinoli DIY ob -havo stantsiyasi: 11 qadam
2024 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2024-01-30 13:25
Ushbu qo'llanmada biz Nextion displeyi, rtc1307 vaqt moduli, Arduino UNO va Visuinodan joriy vaqt, harorat va namlikni ko'rsatish uchun foydalanamiz.
Namoyish videosini tomosha qiling.
1 -qadam: Sizga nima kerak
- Arduino uno (yoki nano, mega har kimdan foydalanish mumkin)
- Nextion lcd 2.8 dyuymli nx3224t028_011 (boshqa har qanday keyingi LCD ham ishlaydi)
- Arduino uchun I2C RTC DS1307 24C32 real vaqtda soat moduli
- Jumper simlari
- Non paneli
- Visuino dasturi: Visuino -ni yuklab oling
- Nextion Editor dasturi: Bu yerdan yuklab oling
2 -qadam: Nextion Editor -da interfeysni ishlab chiqish
Avval SD -karta FAT32 formatlanganligiga ishonch hosil qiling (kartani formatlash kabi dasturlardan foydalaning)
- Nextion Editor dasturini ishga tushiring va "Yangi" ni bosing va loyihangizni "Ob -havo" ga saqlang.
- Keyin "Sozlamalar" dialogi paydo bo'ladi, sizda mavjud bo'lgan displey turini tanlang.
- Bo'sh oq varaq yaratiladi.
- Chapdagi asboblar qutisidan 3x rasm.
- Chap pastki qismida "Rasm" yorlig'ini tanlang, + tugmachasini bosing va rasmlarni yuklang. Vaqt, harorat va namlik uchun (masalan, Iconarchive veb -sayti) Internetdan chiroyli piktogramma yuklab olishingiz mumkin.
- Rasmning har bir elementini tanlang va o'ng pastki qismidagi "Atribut" oynasida "pic" maydonini ikki marta bosing va rasmni tanlang, buni har bir rasm elementi uchun bajaring (3x).
Menyuda "Asboblar> Shrift generatori" ni bosing.
- Vaqt, harorat va namlikni ko'rsatish va "MyFont1" kabi nomni belgilash uchun ishlatiladigan shrift yarating.
- "Shrift yaratish" tugmachasini bosing va "Yaratilgan shrift qo'shilsinmi?" Degan so'rovga ko'ra, uni biron bir joyga saqlang. Ha ni bosing.
- Muloqot oynasini yoping, shunda shrift "0" identifikatori bilan "Shriftlar" oynasida chapda paydo bo'ladi.
- Chapdagi asboblar qutisidan 3x "matn" suring, uni ma'lumotlarni ko'rsatadigan joyga qo'ying
- "Atributlar" oynasining o'ng pastki qismidagi har bir matn elementi uchun shrift 0 <siz yaratgan shriftning identifikatori, siz bir nechta shriftlardan foydalanishingiz va har bir matn elementi uchun identifikatorni o'rnatishingiz mumkin.
- Standart matn qiymatini "txt" maydoniga o'rnatishingiz mumkin, masalan "Vaqt", "C", "%"
- Siz "pco" maydonini bosish orqali rangni belgilashingiz mumkin, har bir matn elementida "t0" va boshqalar kabi ma'lum bir ob'ekt nomi borligini unutmang, bu keyinchalik Visuino -da ishlatiladi.
- Siz har bir ob'ekt nomini "atributlar" oynasi> objname ostida topishingiz mumkin
Barcha elementlarni joylashtirganingizda va joylashtirganingizda:
- "Kompilyatsiya" tugmasini bosing
- "Fayl"> "Ochish papkasini ochish" menyusini bosing, bizning holatimizda "Weather.tft" faylini toping va uni SD -kartaga nusxalash.
3 -qadam: O'chirish davri
- Arduino pinini [5v] ulash paneliga ulang Ijobiy pin [Qizil]
- Arduino pinini [GND] non paneliga ulang Negativ pin [Moviy]
- DHT11 sensor pinini [-] Arduino piniga [GND] ulang
- DHT11 datchik pinini [-] non paneli musbat piniga ulang [Qizil]
- DHT11 sensor signal pinini [S] Arduino raqamli piniga [7] ulang.
- Vaqt DS1307 moduli pinini [Vcc] bortli musbat piniga ulang [Qizil]
- Vaqt DS1307 moduli pinini [GND] manfiy -salbiy piniga ulang [Moviy]
- Vaqt DS1307 moduli pinini [SDA] Arduino piniga [SDA] ulang
- Time DS1307 moduli pinini [SCL] Arduino piniga [SCL] ulang
- Nextion displey pinini [VCC] bortli musbat piniga ulang [Qizil]
- Nextion displey pinini [GND] salbiy taxtali piniga ulang [Moviy]
- Nextion Display pinini [RX] Arduino piniga [TX] ulang
- Nextion Display pinini [TX] Arduino piniga [RX] ulang
4 -qadam: Visuino -ni ishga tushiring va Arduino UNO kengashi turini tanlang
Arduino dasturlashni boshlash uchun siz bu erdan Arduino IDE -ni o'rnatishingiz kerak bo'ladi:
Shuni yodda tutingki, Arduino IDE 1.6.6 da ba'zi muhim xatolar mavjud. 1.6.7 yoki undan yuqori versiyasini o'rnatganingizga ishonch hosil qiling, aks holda bu ko'rsatma ishlamaydi! Agar siz bajarilmagan bo'lsangiz, Arduino UNO dasturini o'rnatish uchun Arduino IDE ni o'rnatish bo'yicha ko'rsatmalarni bajaring! Visuino: https://www.visuino.eu ham o'rnatilishi kerak. Visuino -ni birinchi rasmda ko'rsatilgandek ishga tushiring, Visuino -dagi Arduino komponentidagi "Asboblar" tugmasini bosing (1 -rasm) Dialog paydo bo'lganda, 2 -rasmda ko'rsatilgandek "Arduino UNO" -ni tanlang.
5 -qadam: Visuino -da komponentlarni qo'shing
- "Ishga tushirish" komponentini qo'shing
- "Real vaqt soati (RTC) DS 1307" komponentini qo'shing
- "Soat generatori" komponentini qo'shing
- "Namlik va termometr DHT11" komponentini qo'shing
- 2x "Matnga analog" komponentasini qo'shing
- "Dekodlash (ajratish) datetime" komponentini qo'shing
- "Nextion Display" komponentini qo'shing
6 -qadam: Visuino Set komponentlarida
"RealTimeClock1" komponentini ikki marta bosing, elementlar oynasi ochiladi va:
- "Kunni belgilash" ni torting va xususiyatlar oynasi ostidagi "Qiymat" ni joriy sanaga o'rnating
- "Yilni belgilash" ni torting va xususiyatlar oynasida "Qiymat" ni joriy yilga qo'ying
- "Oyni o'rnatish" ni torting va xususiyatlar oynasi ostida "Qiymat" ni joriy oyga o'rnating
- "Soatni o'rnatish" ni torting va xususiyatlar oynasi ostidagi "Qiymat" ni joriy soatingizga o'rnating
- "Daqiqani o'rnatish" ni torting va xususiyatlar oynasi ostidagi "Qiymat" ni hozirgi daqiqalarga o'rnating
"FormattedText1" komponentini tanlang va xususiyatlar oynasi ostida "matn" ni sozlang:%0:%1:%2
"FormattedText1" komponentini ikki marta bosing, elementlar oynasi ochiladi va:
3x "Matn elementi" ni chapga torting
"DisplayNextion1" komponentini ikki marta bosing, elementlar oynasi ochiladi va:
3x "Matn" elementini chapga siljiting va har bir element uchun:
- Birinchi element nomi uchun: Vaqt
- Ikkinchi elementning nomi: Harorat
- Uchinchi elementning nomi: namlik
- Har bir element uchun "Sahifalar indeksi" o'rnatilgan: 0
- "Element nomi" birinchi elementlar to'plami uchun: t0 (bu har bir element ustidagi Nextion tahrirlovchisida ko'rinadigan ism, uning t0)
- "Element nomi" ikkinchi elementlar to'plami uchun: t1 (bu har bir element ustidagi Nextion tahrirlovchisida ko'rinadigan ism, uning t1)
- "Element nomi" ikkinchi elementlar to'plami uchun: t2 (bu har bir element ustidagi Nextion tahrirlovchisida ko'rinadigan ism, uning t2)
7 -qadam: Visuino Connect komponentlarida
- "Ishga tushirish1" pinini "Chiqish" ni "RealTimeClock1"> "Kun1ni belgilash" pinini "Soat" ga ulang.
- "Ishga tushirish1" pinini "Chiqish" ni "RealTimeClock1"> "Soatni sozlash 1" piniga "Soat" ga ulang.
- "Ishga tushirish1" pinini "Chiqish" ni "RealTimeClock1"> "Yilni belgilash 1" piniga "Soat" ga ulang.
- "Ishga tushirish1" pinini "Chiqish" ni "RealTimeClock1"> "Oyni sozlash 1" pinli "Soat" ga ulang.
- "Start1" pin "Out" ni "RealTimeClock1"> "Minute1 Set" pin "Clock" ga ulang.
- "RealTimeClock1" komponent pinini [Out] "DecodeDateTime1" piniga ulang [In]
- "RealTimeClock1" komponent pinini [Boshqarish] Arduino platasining I2C piniga ulang [In]
- "ClockGenerator1" komponent pinini [Out] "HumidityThermometer1" komponent piniga [Soat] ulang.
- "DecodeDateTime1" komponentini [Hour] "FormattedText1"> "Textelement1" piniga ulash uchun ulang.
- "DecodeDateTime1" komponentini [Hour] "FormattedText1"> "Textelement2" piniga ulash uchun ulang.
- "DecodeDateTime1" komponentini [Hour] "FormattedText1"> "Textelement3" piniga ulash uchun ulang.
- "HumidityThermometer1" komponent pimini [Harorat] ni "AnalogToText1" komponentli piniga [In] ulang
- "HumidityThermometer1" komponent pinini [Namlik] "AnalogToText2" komponent piniga [In] ulang
- "HumidityThermometer1" komponentli pinini [Sensor] Arduino kartali raqamli piniga ulang [7]
- "FormattedText1" komponentli pinini [Chiqish] "DisplayNextion1" komponentli piniga ulang Vaqt [Kirish]
- "AnalogToText1" komponent pinini [Chiqish] "DisplayNextion1" komponentli pin haroratiga ulang [In]
- "AnalogToText2" komponent pinini [Chiqish] "DisplayNextion1" komponent piniga namlik [In] ga ulang.
"DisplayNextion1" pinini [Chiqish] arduino platasining "Serial [0]" piniga [In] ulang
8 -qadam: Nextion faylini SD -kartaga nusxalash
SD kartada Nextion fayli borligiga ishonch hosil qiling
- Nextion displeyini o'chiring
- SD -kartani Nextion displeyiga joylashtiring
- Nextion displeyini yoqing va siz Nextion displeyini yangilash jarayonini ko'rasiz
- Nextion displeyini o'chiring
- SD kartani Nextion displeyidan chiqarib oling
Endi Nextion displeyi tayyor.
9 -qadam: Arduino kodini yaratish, kompilyatsiya qilish va yuklash
Visuino -da F9 tugmachasini bosing yoki Arduino kodini yaratish uchun 1 -rasmda ko'rsatilgan tugmani bosing va Arduino IDE -ni oching, kodni kompilyatsiya qilish va yuklash uchun Yuklash tugmasini bosing (2 -rasm) Eslatma:
Arduino pinini [RX] va Arduino pinini [TX] ajratish uchun kodni Arduino -ga yuklaganingizda, yuklash tugagandan so'ng, Arduino pinini [RX] va Arduino pinini [TX] qayta ulang
10 -qadam: O'ynang
Agar siz Arduino UNO modulini quvvatlantirsangiz, displeyda Visuino -da o'rnatilgan harorat va namlik darajasi + vaqti ko'rsatila boshlaydi. Tabriklaymiz! Siz Visuino bilan ob -havo stantsiyasi loyihasini yakunladingiz.
Men Visuino -da yuklab olish va ochish uchun ko'rsatma berish uchun yaratgan Visuino loyihasi ham biriktirilgan:
va
Nextion muharriri uchun Nextion fayli (Weather. HMI) va tuzilgan Nextion fayli (Weather.tft), uni to'g'ridan -to'g'ri Nextion displeyiga ko'chirishingiz mumkin.
11 -qadam: Resurslar
Bundan tashqari, Nextion Displays bilan ishlashni o'rganish uchun ushbu ajoyib qo'llanmani tekshirib ko'rishingiz mumkin.
Tavsiya:
8051 va LCD displeyli IQ sensori yordamida tashrif buyuruvchilar hisoblagichi: 3 qadam
LCD bilan 8051 va IQ sensori yordamida tashrif buyuruvchilar hisoblagichi: Aziz do'stlar, men 8051 va IQ sensori yordamida mehmonlar hisoblagichini yasashni tushuntirdim va uni LCD displeyda ko'rsatdim. 8051 - bu butun dunyo bo'ylab sevimli mashg'ulotlarini, tijorat dasturlarini ishlab chiqarishda ishlatiladigan eng mashhur mikrokontrolderlardan biri. Men vizitka qildim
WiFi boshqariladigan LED chiziqli matritsali displeyli soat nuri: 3 qadam (rasmlar bilan)
WiFi boshqariladigan LED chiziqli matritsali displeyli soat nuri: dasturlashtiriladigan LED chiziqlar, masalan. WS2812 -ga asoslangan, ajoyib. Ilovalar ko'p qirrali va siz tezda ajoyib natijalarga erisha olasiz. Va qandaydir tarzda, soatlar qurish men o'ylaydigan boshqa domenga o'xshaydi. Bir oz tajribadan boshlaylik
DHT11 va I2C 20x4 LCD displeyli harorat monitor: 6 qadam
DHT11 va I2C 20x4 LCD displeyli harorat monitori: Ushbu qo'llanmada biz DHT11 sensori va I2C LCD yordamida oddiy harorat monitorini yasashni o'rganamiz Videoni tomosha qiling
OLED displeyli DIY masofa o'lchagichi: 4 qadam
OLED displeyli DIY masofa o'lchagichi: Ushbu qo'llanmada biz OLED -displeyda qiymatlarni chiqaradigan raqamli masofa o'lchagichini quramiz. Ushbu loyiha uchun siz ardiuno yoki ESP8266 modulidan foydalanishni tanlashingiz mumkin va men ikkalasiga ham kod beraman. Agar siz ESP826 dan foydalanayotgan bo'lsangiz
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)