Mündəricat:

Saat, LCD Ekran, İnfraqırmızı: 6 addım
Saat, LCD Ekran, İnfraqırmızı: 6 addım

Video: Saat, LCD Ekran, İnfraqırmızı: 6 addım

Video: Saat, LCD Ekran, İnfraqırmızı: 6 addım
Video: Saat Ayarı Nasıl Yapılır Dijital? | Set Sport Digital Watch (Turkish)? 2024, Noyabr
Anonim
Saat, LCD Ekran, Ayarlamaq üçün İnfraqırmızı
Saat, LCD Ekran, Ayarlamaq üçün İnfraqırmızı
Saat, LCD Ekran, Ayarlamaq üçün İnfraqırmızı
Saat, LCD Ekran, Ayarlamaq üçün İnfraqırmızı

İldə bir neçə dəqiqə ərzində aktuasiya müddətini saxlayan real vaxt saatı yaradın. Kod və komponentlər asanlıqla digər layihələrə yenidən yerləşdirilə bilər.

Bu layihə minimum miqdarda məftil və lehim tələb etmir. Vaxt qoruyucu bir DS3231 real vaxt saatıdır. Saat ucuz 1602 LCD -də göstərilir. Hər iki modul I2C rabitəsindən istifadə edir. I2C, bir Arduino -ya qoşularkən modul başına yalnız 2 tel istifadə edir. Arduino Nano istifadə edirəm, çünki çörək taxtasına yaxşı oturur. Aşağıdakı təlimatlar bir Arduino Uno ilə işləyəcək, çünki bu layihə üçün Nano ilə eyni pin nömrələrinə malikdir. Digər komponent infraqırmızı qəbuledicidir. Smart TV -də olduğu kimi vaxtı təyin etmək üçün TV pultu kimi ümumi bir uzaqdan idarəedicidən istifadə etməyə imkan verir. İnfraqırmızı qəbuledicinin Arduino -ya qoşulması üçün yalnız bir tel lazımdır.

İlk addım Arduino -nu sınamaq və çörək taxtasına bağlamaqdır. Aşağıdakı addımlar müstəqil işləmək üçün hazırlanmışdır. Hər addımda kabel təlimatları və sınaq təlimatları var. Layihələr qurduğumda, hər bir komponentin işlədiyini təsdiqləmək üçün onları bağlayıram və sınayıram. Bu, çox sayda komponentin inteqrasiyasına kömək edir, çünki hər işin və inteqrasiya tələblərinə diqqət yetirə biləcəyimi bilirəm.

Bu Təlimat Arduino IDE -nin quraşdırılmasını tələb edir. Bu layihədəki bağlantılardan bir Arduino eskiz proqramı yükləmək, proqram üçün bir kataloq (proqram adı ilə eyni kataloq adı) yaratmaq üçün də əsas bacarıqlara sahib olmalısınız. Növbəti addımlar proqramı IDE -də yükləmək, görmək və redaktə etməkdir. Sonra proqramı USB kabel vasitəsilə Arduino lövhəsinə yükləyin.

Təchizat

  • Arduino üçün Nano V3 ATmega328P CH340G Mikro nəzarətçi kartı. Alternativ olaraq Uno istifadə edə bilərsiniz.
  • DS3231 real vaxt saatı və CR2032 batareyası.
  • I2C modulu olan 1602 LCD
  • İnfraqırmızı qəbuledici və uzaqdan idarəetmə. İnfraqırmızı qəbuledici və infraqırmızı uzaqdan idarəetmə ilə gələn IR Simsiz Uzaqdan İdarəetmə Modulu Kitlərindən istifadə etdim.
  • Çörək lövhəsi
  • Tel kabellər
  • 5 voltluq divar adapteri

Parçaları əsasən Hong Kong və ya Çin distribyutorlarından eBay -də aldım. ABŞ distribyutorları bəzən münasib qiymətlər və daha sürətli çatdırılma üçün eyni və ya oxşar hissələrə sahibdirlər. Çin hissələrinin çatdırılması 3-6 həftə çəkir. İstifadə etdiyim distribyutorların hamısı etibarlı idi.

Təxmini xərclər: Nano 3 dollar, DS3231 $ 1, LCD 3 dollar, infraqırmızı dəst 1 dollar, çörək taxtası 2 dollar, 40 telli kabel paketi 1 dollar, 5 voltluq divar adapteri üçün 1 dollar. Cəmi, təxminən 11 dollar. Diqqət, lehimləmə qabiliyyətim zəif olduğu üçün Nano və LCD -ni artıq lehimlənmiş çörək taxtası pinləri ilə aldım. Saat batareyası üçün təxminən 1.25 dollara 5 paket lityum CR2032 batareya aldım. Vaxt parçalarını sevdiyim üçün 5 paket DS3231 də aldım. Bu layihədə 1 ədəd çörək taxtası istifadə olunur. Təxminən 7 dollara 3 ədəd taxta paketi aldım; fərdi lövhə almaqdan daha yaxşıdır.

Addım 1: Arduino Nanonu Breadboard -a əlavə edin

Arduino Nanonu Breadboard -a əlavə edin
Arduino Nanonu Breadboard -a əlavə edin

Arduino Nanonu Çörək Lövhəsinə qoşun. Və ya istəsəniz, bu layihə üçün bir Arduino Uno istifadə edə bilərsiniz; bu layihə üçün hər ikisi eyni pinlərdən istifadə edir. Nano (və ya Uno) kompüterinizə USB kabel vasitəsilə qoşun.

Arduinodan güc və zəmini çörək taxtasının güc çubuğuna bağlayın. Arduino 5+ pinini çörək taxtasının müsbət çubuğuna bağlayın. Arduino GRN (torpaq) pinini çörək taxtasının mənfi (yer) çubuğuna bağlayın. Bu digər komponentlər tərəfindən istifadə ediləcək.

Əsas Arduino test proqramını yükləyin və işə salın: arduinoTest.ino. Proqramı işləyərkən, göyərtədəki LED işığı 1 saniyə yanacaq, sonra 1 saniyə sönəcək. Ayrıca, Arduino IDE Tools/Serial Monitorda baxıla bilən mesajlar yerləşdirilir.

+++ Quraşdırma.

+ Çıxış üçün lövhədə LED rəqəmsal pin işə salındı. LED sönüb. ++ Döngəyə keçin. + Döngü sayğacı = 1 + Döngü sayğacı = 2 + Döngə sayğacı = 3…

Bir məşq olaraq, yanıp sönən işıqda gecikməni dəyişdirin, dəyişdirilmiş proqramı yükləyin və dəyişikliyi təsdiq edin.

Yuxarıdakı fotoşəkildə, 3 ilə 5 dollara əldə edə biləcəyiniz 140 ədəd lehimsiz çörək taxtası tullanan tel dəsti qutusu var. Qısa bağlantılar üçün uzun kabellər istifadə edərək lövhələri daha səliqəli edirlər.

Addım 2: DS3231 Saat Modulunu əlavə edin və Arduinoya qoşun

DS3231 Saat Modulunu əlavə edin və Arduinoya qoşun
DS3231 Saat Modulunu əlavə edin və Arduinoya qoşun

Saat modulunu çörək taxtasına qoşun. Saat modulunun GND pinini çörək taxtasının yer çubuğu şeridinə bağlayın. Saat modulunun VCC pinini çörək taxtasının müsbət bar şeridinə qoşun. Saat modulu SDA (məlumat) pinini Arduino A4 pininə (I2C məlumat pimi) bağlayın. Saat modulu SCL (saat) pinini Arduino A5 pininə (I2C saat pimi) bağlayın.

Arduino IDE -də DS3231 Saat Kitabxanasını quraşdırın. Alətlər/Kitabxanaları İdarə et seçin. 'Rtclib' yazaraq axtarışınızı süzün. Adafruit tərəfindən RTClib seçin (istinad üçün kitabxana bağlantısı).

Əsas test proqramını yükləyin və işə salın: clockTest.ino. Proqramı işləyərkən Arduino IDE Tools/Serial Monitor -da baxıla bilən saat vaxtı mesajları yerləşdirilir.

+++ Quraşdırma.

+ Saat dəsti. ++ Döngəyə keçin. ---------------------------------------- + Cari Tarix və Saat: 2020/3/ 22 (Bazar) 11: 42: 3 + Cari Tarix və Saat: 2020/3/22 (Bazar) 11: 42: 4 + Cari Tarix və Saat: 2020/3/22 (Bazar) 11: 42: 5…

Bir məşq olaraq, saatın vaxtını və tarixini təyin etmək, dəyişdirilən proqramı yükləmək və dəyişikliyi təsdiq etmək üçün rtc.adjust () istifadə edin.

rtc.adjust (DateTime (2020, 3, 19, 10, 59, 50)); // Baharın ilk günü, 2020.

Addım 3: 1602 LCD Ekran Modulunu əlavə edin və Arduinoya qoşun

1602 LCD Ekran Modulunu əlavə edin və Arduinoya qoşun
1602 LCD Ekran Modulunu əlavə edin və Arduinoya qoşun

LCD modulunu çörək taxtasına qoşun. Saat modulunun GND pinini çörək taxtasının yer çubuğu şeridinə bağlayın. Saat modulunun VCC pinini çörək taxtasının müsbət bar şeridinə qoşun. Saat modulu SDA (məlumat) pinini Arduino A4 pininə (I2C məlumat pimi) bağlayın. Saat modulu SCL (saat) pinini Arduino A5 pininə (I2C saat pimi) bağlayın.

Arduino IDE -də 1602 LCD Kitabxana quraşdırın. Alətlər/Kitabxanaları İdarə et seçin. 'LiquidCrystal' yazaraq axtarışınızı süzün. Frank de Barbander tərəfindən LiquidCrystal I2C seçin (istinad üçün kitabxana bağlantısı).

Əsas test proqramını yükləyin və işə salın: lcd1602Test.ino. Proqramı işləyərkən Arduino IDE Tools/Serial Monitor -da baxıla bilən saat vaxtı mesajları yerləşdirilir.

+++ Quraşdırma.

+ LCD istifadə üçün hazırdır. +++ Döngəyə keçin. + TheCounter = 1 + TheCounter = 2 + The Counter = 3…

Bir məşq olaraq, LCD ekran mesajlarını dəyişdirin, dəyişdirilən proqramı yükləyin və dəyişikliyi təsdiq edin.

Addım 4: İnfraqırmızı Alıcını əlavə edin və Arduinoya qoşun

İnfraqırmızı alıcını əlavə edin və Arduinoya qoşun
İnfraqırmızı alıcını əlavə edin və Arduinoya qoşun

Dişi ilə kişi kabel tellərini infraqırmızı alıcıya qoşun (qadın ucları). Saat modulunun şnurunu çörək taxtasının yer çubuğu zolağına bağlayın. Saat modulunun güc pinini çörək bortunun müsbət bar şeridinə bağlayın. İnfraqırmızı alıcının çıxış pinini Arduino A1 pininə bağlayın.

İnfraqırmızı alıcını, pinləri yuxarı soldan sağa bağlayın:

Ən çox sol (X -in yanında) - Nano pin A1 Mərkəzi - 5V Sağ - yer

A1 + - - Nano pin əlaqələri

| | | -İnfraqırmızı qəbuledici pinlər --------- | S | | | | --- | | | | | | --- | | | ---------

Arduino IDE -də infraqırmızı kitabxana quraşdırın. Alətlər/Kitabxanaları İdarə et seçin. 'IRremote' yazaraq axtarışınızı süzün. IRremote by Shirriff seçin (istinad üçün kitabxana bağlantısı).

Əsas test proqramını yükləyin və işə salın: infraredReceiverTest.ino. Proqramı işləyərkən, pultunuzu alıcıya yönəldin və 0 -dan 9 -a qədər olan nömrələr kimi müxtəlif düymələrə basın. Arduino IDE Tools/Serial Monitorda baxıla bilən serial mesajları çıxır (çap olunur).

+++ Quraşdırma.

+ İnfraqırmızı qəbuledici işə salındı. ++ Döngəyə keçin. + Açar OK - Keçid + Açar> - sonrakı + Açar < - əvvəlki + Açar + Aşağı + Açar + Açar 1: + Açar 2: + Açar 3: + Açar 4: + Açar 6: + Açar 7: + Açar 8: + Açar 9: + Açar 0: + Açar * (Geri) + Açar # (Çıx)

Təlim olaraq, çap olunan dəyərləri görmək üçün televizorun pultundan istifadə edin. Daha sonra infraredSwitch () funksiyasının keçid ifadəsindəki dəyərlərdən istifadə etmək üçün proqramı dəyişə bilərsiniz. Məsələn, "0" düyməsini basın və pultunuzun dəyərini əldə edin, məsələn "0xE0E08877". Sonra, keçid ifadəsinə aşağıdakı kod parçasında olduğu kimi bir hal əlavə edin.

halda 0xFF9867:

hal 0xE0E08877: Serial.print ("+ Açar 0:"); Serial.println (""); fasilə;

Addım 5: Saat Arduino Sketch Proqramını Yükləyin və Test Edin

Saat Arduino Sketch Proqramını Yükləyin və Test Edin
Saat Arduino Sketch Proqramını Yükləyin və Test Edin
Saat Layihəsi Arduino Sketch Proqramını yükləyin və Test edin
Saat Layihəsi Arduino Sketch Proqramını yükləyin və Test edin
Saat Arduino Sketch Proqramını Yükləyin və Test Edin
Saat Arduino Sketch Proqramını Yükləyin və Test Edin

İndi bütün komponentlər çörək taxtasına əlavə olunduqdan sonra telə bağlanır və sınaqdan keçirilir; əsas saat proqramını yükləmək və işə salmaq vaxtıdır. Saat proqramı saat modulundan vaxt alır, vaxtı LCD -də göstərir və infraqırmızı uzaqdan idarəetmə vasitəsi ilə vaxtı təyin etməyə imkan verir.

Layihənin saat proqramını yükləyin və işləyin: clockLcdSet.ino.

Proqram başlayanda, DS3231 -in vaxtını 1602 LCD ekranda göstərəcək. Mesajları Arduino IDE Tools/Serial Monitorda görmək olar.

+++ Quraşdırma.

+ LCD dəsti. + syncCountWithClock, theCounterHours = 13 theCounterMinutes = 12 theCounterSeconds = 13 + Saat qurulur və proqram dəyişənləri ilə sinxronlaşdırılır. + İnfraqırmızı qəbuledici aktivdir. ++ Döngəyə keçin. + clockPulseMinute (), TheCounterMinutes = 15 + clockPulseMinute (), TheCounterMinutes = 16 + clockPulseMinute (), theCounterMinutes = 17…

Uzaqdan idarə etmənizi alıcıya yönəldin və sağ ox düyməsini basın. Ayar üçün il göstəriləcək. İl, ay, gün, saat, dəqiqə və saniyələri təyin edə biləcəyinizi görmək üçün sağ ox düyməsini bir neçə dəfə basın. Bir vaxt dəyəri təyin etmək üçün dəyərə gedin. Ekran dəyərini təyin etmək üçün yuxarı və aşağı oxlardan istifadə edin. Sonra saatın dəyərini təyin etmək üçün "OK" düyməsini istifadə edin. Bir anda bir dəyər təyin olunur.

Addım 6: Xarici Güc Təchizatı

Xarici enerji təchizatı
Xarici enerji təchizatı

Saatınız sınaqdan keçirildiyindən və kompüterinizdən çıxarıb müstəqil bir enerji təchizatı istifadə edə bilərsiniz. Sadəlik üçün təxminən bir dollara satın alınacaq 5 voltluq divar adapterindən və başqa bir dollardan USB kabelindən istifadə edirəm. Kabel Arduino +5V divar adapterinə qoşulur. Arduino güc və topraklama pinləri çörək taxtasına qoşulduğundan, digər komponentləri gücləndirəcək.

Sadəliyi və aşağı qiyməti səbəbiylə digər layihələri gücləndirmək üçün eyni kombinasiyadan istifadə edirəm.

Ümid edirəm uğur qazandınız və infraqırmızı idarə olunan bir LCD saat qurmaqdan zövq aldınız.

Tövsiyə: