Mundarija:
- Ta'minotlar
- 1 -qadam: Arduino Nano -ni elektron jadvalga qo'shing
- 2 -qadam: DS3231 soat modulini qo'shing va uni Arduino -ga ulang
- 3 -qadam: 1602 LCD displey modulini qo'shing va Arduino -ga ulang
- 4 -qadam: Infraqizil qabul qilgichni qo'shing va Arduino -ga ulang
- 5 -qadam: Clock Project Arduino eskiz dasturini yuklang va uni sinab ko'ring
- 6 -qadam: tashqi quvvat manbai
Video: Soat, LCD displey, infraqizil: 6 qadam
2024 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2024-01-30 13:23
Yiliga bir necha daqiqa ichida harakatlanish vaqtini saqlaydigan real vaqt soatini yarating. Kod va komponentlarni boshqa loyihalarga osongina qaytarish mumkin.
Ushbu loyiha minimal miqdordagi simlarni talab qiladi va lehimsiz. Vaqtni saqlovchi - bu DS3231 real vaqt soati. Vaqt arzon 1602 LCD displeyda ko'rsatiladi. Ikkala modul ham I2C aloqasidan foydalanadi. I2C Arduino -ga ulanishda modul uchun faqat 2 ta simdan foydalanadi. Men Arduino Nano -dan foydalanmoqdaman, chunki u non taxtasiga juda mos keladi. Quyidagi ko'rsatmalar Arduino Uno bilan ishlaydi, chunki u ushbu loyiha uchun nano raqamlari bilan bir xil. Boshqa komponent - infraqizil qabul qilgich. Vaqtni bizning aqlli televizorimizdagidek sozlash uchun sizga televizorning masofadan boshqarish pulti kabi umumiy masofadan boshqarish pultidan foydalanish imkonini beradi. Infraqizil qabul qilgichni Arduino -ga ulash uchun faqat bitta sim kerak.
Birinchi qadam - Arduino -ni sinab ko'rish va uni taxtaga ulash. Keyingi bosqichlar mustaqil ishlash uchun mo'ljallangan. Har bir bosqichda simlarni ulash bo'yicha ko'rsatmalar va sinov ko'rsatmalari mavjud. Men loyihalarni qurganimda, ularning ishlashini tasdiqlash uchun har bir komponentni sim bilan tekshiraman. Bu komponentlar sonini birlashtirishga yordam beradi, chunki bilamanki, har bir ish va men integratsiya talablariga e'tibor qaratishim mumkin.
Bu yo'riqnomada Arduino IDE o'rnatilgan bo'lishi kerak. Shuningdek, siz ushbu loyihadagi havolalardan Arduino eskiz dasturini yuklab olish, dastur uchun katalog yaratish uchun asosiy ko'nikmalarga ega bo'lishingiz kerak (katalog nomi dastur nomi bilan bir xil). Keyingi qadamlar - dasturni IDE -ga yuklash, ko'rish va tahrir qilish. Keyin dasturni USB kabeli orqali Arduino kartasiga yuklang.
Ta'minotlar
- Nano V3 ATmega328P CH340G Arduino uchun mikro boshqaruv paneli. Shu bilan bir qatorda, Uno -dan foydalanishingiz mumkin.
- Haqiqiy vaqtda DS3231 soati va CR2032 batareyasi.
- I2C modulli 1602 LCD
- Infraqizil qabul qilgich va masofadan boshqarish pulti. Men infraqizil qabul qilgich va infraqizil masofadan boshqarish pulti bilan birga kelgan IQ simsiz masofadan boshqarish moduli to'plamlarini ishlatardim.
- Non paneli
- Kabel kabellari
- 5 voltli devor adapteri
Men ehtiyot qismlarni eBayda, asosan Gonkong yoki Xitoy distribyutorlaridan sotib oldim. AQSh distribyutorlari bir xil yoki shunga o'xshash qismlarga mos narxlarda va tezroq etkazib berish uchun ega. Xitoy qismlarini etkazib berish 3 dan 6 haftagacha davom etadi. Men ishlatgan distribyutorlar ishonchli edi.
Taxminiy xarajatlar: Nano $ 3, DS3231 $ 1, LCD $ 3, Infraqizil to'plam $ 1, non paneli 2 dollar, 40 simli kabellar to'plami $ 1, 5 voltli devor adapteri uchun 1 dollar. Hammasi bo'lib, taxminan 11 dollar. E'tibor bering, men Nano va LCD -ni sotib oldim. Soat batareyasi uchun men 5 lityum CR2032 batareyasini taxminan 1,25 dollarga sotib oldim. Men 5 ta DS3231 paketini ham sotib oldim, chunki menga vaqt bo'laklari yoqadi. Ushbu loyihada 1 ta non paneli ishlatiladi. Men taxminan 7 dollarga 3 ta non paneli sotib oldim; individual taxta sotib olishdan ko'ra yaxshiroq shartnoma.
1 -qadam: Arduino Nano -ni elektron jadvalga qo'shing
Arduino Nano -ni elektron jadvalga ulang. Yoki agar xohlasangiz, ushbu loyiha uchun Arduino Uno -dan foydalanishingiz mumkin; bu loyiha uchun ikkalasi bir xil pinlardan foydalanadilar. Nano (yoki Uno) ni kompyuterga USB kabeli orqali ulang.
Quvvat va erni Arduino -dan paneldagi quvvat paneliga ulang. Arduino 5+ pinini panelning ijobiy paneliga ulang. Arduino GRN (tuproqli) pinini non panelidagi manfiy (erga) ulang. Bu boshqa komponentlar uchun ishlatiladi.
Arduino -ning asosiy sinov dasturini yuklab oling va ishga tushiring: arduinoTest.ino. Dastur ishlayotganda, bortdagi LED chiroq 1 soniya yonadi, keyin 1 soniya o'chadi. Bundan tashqari, Arduino IDE Tools/Serial Monitor -da ko'rish mumkin bo'lgan xabarlar joylashtiriladi.
+++ sozlash.
+ Chiqish uchun bortli LED raqamli pin boshlandi. LED o'chirilgan. ++ Loopga o'tish. + Loop hisoblagichi = 1 + Loop hisoblagichi = 2 + Loop hisoblagichi = 3…
Jismoniy mashqlar sifatida miltillovchi chiroqdagi kechikish vaqtini o'zgartiring, o'zgartirilgan dasturni yuklang va o'zgarishni tasdiqlang.
Yuqoridagi rasmda siz 3 dan 5 dollargacha sotib olishingiz mumkin bo'lgan 140 dona lehimsiz non taxtali simli to'plam qutisi. Qisqa ulanish uchun uzun kabellardan foydalangan holda, ular taxtalarni yanada toza qiladi.
2 -qadam: DS3231 soat modulini qo'shing va uni Arduino -ga ulang
Soat modulini non paneliga ulang. Soat modulining GND PIN -kodini, taxtaning taglik chizig'iga ulang. Soat modulining VCC pinini non panelining musbat chiziqli bandiga ulang. SDA (ma'lumotlar) soat moduli pinini Arduino A4 piniga (I2C ma'lumot pin) ulang. Soat moduli SCL (soat) pinini Arduino A5 piniga (I2C soat pinli) ulang.
Arduino IDE -da DS3231 soat kutubxonasini o'rnating. Asboblar/Kutubxonalarni boshqarish -ni tanlang. Qidiruvni "rtclib" yozib filtrlang. Adafruit tomonidan RTClib -ni tanlang (ma'lumot uchun, kutubxona havolasi).
Asosiy test dasturini yuklab oling va ishga tushiring: clockTest.ino. Dasturni ishga tushirganda, Arduino IDE Tools/Serial Monitor -da ko'rish mumkin bo'lgan vaqt haqidagi xabarlar joylashtiriladi.
+++ sozlash.
+ Soatlar to'plami. ++ Loopga o'tish. ---------------------------------------- + Joriy sana va vaqt: 2020/3/ 22 (yakshanba) 11: 42: 3 + Joriy sana va vaqt: 2020/3/22 (yakshanba) 11: 42: 4 + Joriy sana va vaqt: 2020/3/22 (yakshanba) 11: 42: 5…
Mashq sifatida rtc.adjust () dan foydalanib, soat va vaqtni belgilang, o'zgartirilgan dasturni yuklang va o'zgarishni tasdiqlang.
rtc.adjust (DateTime (2020, 3, 19, 10, 59, 50)); // Bahorning birinchi kuni, 2020 yil.
3 -qadam: 1602 LCD displey modulini qo'shing va Arduino -ga ulang
LCD modulini non paneliga ulang. Soat modulining GND PIN -kodini, taxtaning taglik chizig'iga ulang. Soat modulining VCC pinini non panelining musbat chiziqli bandiga ulang. SDA (ma'lumotlar) soat moduli pinini Arduino A4 piniga (I2C ma'lumot pin) ulang. Soat moduli SCL (soat) pinini Arduino A5 piniga (I2C soat pinli) ulang.
Arduino IDE -ga 1602 LCD kutubxonasini o'rnating. Asboblar/Kutubxonalarni boshqarish -ni tanlang. "LiquidCrystal" ni terish orqali qidiruvni filtrlang. Frank de Barbanderning LiquidCrystal I2C -ni tanlang (ma'lumot uchun, kutubxona havolasi).
Asosiy sinov dasturini yuklab oling va ishga tushiring: lcd1602Test.ino. Dasturni ishga tushirganda, Arduino IDE Tools/Serial Monitor -da ko'rish mumkin bo'lgan vaqt haqidagi xabarlar joylashtiriladi.
+++ sozlash.
+ LCD ishlatishga tayyor. +++ Loopga o'tish. + hisobchi = 1 + hisoblagich = 2 + hisoblagich = 3 …
Jismoniy mashqlar sifatida LCD displey xabarlarini o'zgartiring, o'zgartirilgan dasturni yuklang va o'zgarishni tasdiqlang.
4 -qadam: Infraqizil qabul qilgichni qo'shing va Arduino -ga ulang
Ayolni erkak kabeliga uzatuvchi simlarni infraqizil qabul qilgichga ulang (ayol uchlari). Soat modulining topraklama pinini, non panelining asosiy chiziqli tasmasiga ulang. Soat modulining quvvat pinini, non panelining musbat tasmasiga ulang. Infraqizil qabul qilgichning chiqish pinini Arduino A1 piniga ulang.
Yuqori chapdan o'ngga infraqizil qabul qilgichni ulang:
Eng chapda (X yonida) - Nano pinli A1 markazi - 5V O'ngda - er
A1 + - - nano -pinli ulanishlar
| | | -Infraqizil qabul qilgich pinlari --------- | S | | | | --- | | | | | | --- | | | ---------
Arduino IDE -da infraqizil kutubxonani o'rnating. Asboblar/Kutubxonalarni boshqarish -ni tanlang. "IRremote" yozish orqali qidiruvni filtrlang. IRremote by Shirriff -ni tanlang (ma'lumot uchun kutubxona havolasi).
Asosiy test dasturini yuklab oling va ishga tushiring: infraredReceiverTest.ino. Dasturni ishga tushirayotganda masofadan boshqarish pultini qabul qilgichga yo'naltiring va 0 dan 9 gacha bo'lgan raqamlar kabi turli tugmachalarni bosing. Arduino IDE Tools/Serial Monitorda ko'rish mumkin bo'lgan ketma -ket xabarlar chiqariladi (chop etiladi).
+++ sozlash.
+ Infraqizil qabul qilgich ishga tushirildi. ++ Loopga o'tish. + Tugma OK - Ochish + Tugmachasi - - Keyingi + Tugma < - oldingi + Tugma + Tugma + Tugma + Tugma 1: + Tugma 2: + Tugma 3: + Tugma 4: + Klaviatura 6: + Klaviatura 7: + Tugma 8: + 9 -tugma: + Key 0: + Key * (Qaytish) + Key # (Chiqish)
Mashq sifatida, bosilgan qiymatlarni ko'rish uchun televizorning pultidan foydalaning. Keyin infraredSwitch () funktsiyasining kalit so'zidagi qiymatlardan foydalanish uchun dasturni o'zgartirishingiz mumkin. Masalan, "0" tugmachasini bosing va masofadan boshqarish pultining qiymatini oling, masalan, "0xE0E08877". So'ngra, quyidagi kod parchasida bo'lgani kabi switch bayonotiga katta harf qo'shing.
holat 0xFF9867:
holat 0xE0E08877: Serial.print ("+ Key 0:"); Serial.println (""); tanaffus;
5 -qadam: Clock Project Arduino eskiz dasturini yuklang va uni sinab ko'ring
Endi barcha komponentlar non paneliga qo'shiladi, simlanadi va sinovdan o'tkaziladi; asosiy soat dasturini yuklash va uni ishga tushirish vaqti keldi. Soat dasturi soat modulidan vaqtni oladi, LCD displeyda vaqtni ko'rsatadi va infraqizil masofadan boshqarish pulti yordamida vaqtni sozlash imkonini beradi.
Loyihaning soat dasturini yuklab oling va ishga tushiring: clockLcdSet.ino.
Dastur ishga tushganda, u 1602 LCD displeyida DS3231 vaqtini ko'rsatadi. Xabarlarni Arduino IDE Tools/Serial Monitor -da ko'rish mumkin.
+++ sozlash.
+ LCD to'plami. + syncCountWithClock, theCounterHours = 13 theCounterMinutes = 12 theCounterSeconds = 13 + Soat o'rnatilgan va dastur o'zgaruvchilari bilan sinxronlashtiriladi. + Infraqizil qabul qilgich yoqilgan. ++ Loopga o'tish. + clockPulseMinute (), TheCounterMinutes = 15 + clockPulseMinute (), TheCounterMinutes = 16 + clockPulseMinute (), TheCounterMinutes = 17…
Masofadan boshqarish pultini qabul qilgichga yo'naltiring va o'ng o'q tugmasini bosing. Sozlash uchun yil ko'rsatiladi. Yilni, oyni, kunni, soatni, daqiqani va soniyani belgilash uchun o'ng o'q tugmasini bir necha marta bosing. Vaqt qiymatini belgilash uchun qiymatga o'ting. Ko'rsatish qiymatini o'rnatish uchun yuqoriga va pastga o'qlarini ishlating. Keyin soat qiymatini belgilash uchun "OK" tugmachasidan foydalaning. Bir vaqtning o'zida bitta qiymat belgilanadi.
6 -qadam: tashqi quvvat manbai
Endi sizning soatingiz sinovdan o'tgan va ishlayotganda, siz uni kompyuterdan uzib, mustaqil quvvat manbaidan foydalanishingiz mumkin. Oddiylik uchun men 5 voltli devor adapteridan foydalanaman, uni taxminan bir dollarga sotib olish mumkin, va USB kabeli, yana bir dollar. Kabel Arduino -ni +5V devor adapteriga ulaydi. Arduino quvvat va topraklama pinlari non paneliga ulanganligi sababli, u boshqa komponentlarni quvvatlantiradi.
Oddiyligi va arzonligi tufayli men boshqa loyihalarni qo'llab -quvvatlash uchun xuddi shu kombinatsiyadan foydalanaman.
Umid qilamanki, siz muvaffaqiyatga erishdingiz va infraqizil boshqaruvli LCD soatni qurishdan zavqlandingiz.
Tavsiya:
Micropython bilan TTGO (rangli) displey (TTGO T-displey): 6 qadam
Micropythonli TTGO (rangli) displey (TTGO T-displey): TTGO T-displeyi-ESP32 asosidagi, 1,14 dyuymli rangli displeyni o'z ichiga olgan taxta. Kengashni 7 dollardan kam bo'lgan mukofotga sotib olish mumkin (etkazib berish, banggoodda ko'rilgan mukofot). Bu ESP32 uchun ajoyib mukofot, shu jumladan displey
Arduino va Led nuqta matritsali displey yordamida raqamli soat: 6 qadam
Arduino va Led nuqta matritsali displeydan foydalanadigan raqamli soat: Hozirgi vaqtda ishlab chiqaruvchilar va ishlab chiqaruvchilar loyihalarning prototipini tez rivojlantirish uchun Arduinoni afzal ko'rishadi. Arduino-bu ochiq manbali elektronika platformasi, uni ishlatish uchun qulay bo'lgan apparat va dasturiy ta'minotga asoslangan. Arduino juda yaxshi foydalanuvchilar hamjamiyatiga ega, bu loyihada
C51 4 bitli elektron soat - yog'och soat: 15 qadam (rasmlar bilan)
C51 4 bitli elektron soat - yog'ochdan yasalgan soat: dam olish kunlari bo'sh vaqtim bor edi, shuning uchun men ilgari AliExpress -dan sotib olgan 2,40 dollarlik 4 bitli DIY elektron raqamli soatni yig'dim
ESP32 va OLED -displey: Internet -soat - DHT22: 10 qadam (rasmlar bilan)
ESP32 va OLED -displey: Internet -soat - DHT22: Bu ko'rsatma raqobatlashadi: "GIFs Challenge 2017", agar sizga yoqsa, iltimos, yuqoridagi bannerni bosib ovozingizni bering. Katta rahmat!;-) Bu darslik bu ajoyib IoT qurilmasi haqida ko'proq bilish uchun sayohatning davomi
Arduino yordamida P10 LED displey modulidagi displey harorati: 3 qadam (rasmlar bilan)
Arduino yordamida P10 LED displey modulidagi displey harorati: Oldingi qo'llanmada Arduino va DMD ulagichi yordamida nuqta matritsali LED displeyli P10 modulida matnni qanday ko'rsatish kerakligi ko'rsatilgan. Ushbu qo'llanmada biz P10 modulini displey vositasi sifatida ishlatib, oddiy loyiha qo'llanmasini beramiz