Мазмұны:
- Жабдықтар
- 1 -қадам: Arduino Nano -ны тақтаға қосыңыз
- 2 -қадам: DS3231 сағат модулін қосыңыз және оны Arduino -ға қосыңыз
- 3 -қадам: 1602 СК дисплей модулін қосып, Arduino -ға қосыңыз
- 4 -қадам: Инфрақызыл қабылдағышты қосыңыз және оны Arduino -ға қосыңыз
- 5 -қадам: Clock Project Arduino Sketch бағдарламасын жүктеңіз және оны тексеріңіз
- 6 -қадам: Сыртқы қуат көзі
Бейне: Сағат, СКД дисплейі, орнатылған инфрақызыл: 6 қадам
2024 Автор: John Day | [email protected]. Соңғы өзгертілген: 2024-01-30 10:23
Жылына бірнеше минут ішінде әрекет ету уақытын сақтайтын нақты уақыт сағатын жасаңыз. Код пен компоненттерді басқа жобаларға оңай ауыстыруға болады.
Бұл жоба сымдардың минималды мөлшерін және дәнекерлеуді қажет етпейді. Уақыт сақшысы - бұл DS3231 нақты уақыт сағаты. Уақыт арзан 1602 кристалды дисплейде көрсетіледі. Екі модульде де I2C байланысы қолданылады. I2C бір модульге Arduino -ға қосылған кезде тек 2 сымды қолданады. Мен Arduino Nano қолданамын, себебі ол нанға жақсы сәйкес келеді. Келесі нұсқаулар Arduino Uno -мен жұмыс істейді, себебі бұл жобаның нано нөмірімен бірдей. Басқа компонент - инфрақызыл қабылдағыш. Бұл біздің ақылды теледидардағыдай уақытты орнату үшін теледидардың пульті сияқты жалпы қашықтан басқару пультін пайдалануға мүмкіндік береді. Инфрақызыл қабылдағышқа оны Arduino -ға қосу үшін тек бір сым қажет.
Бірінші қадам - Arduino -ны тестілеу және оны тақтаға қосу. Келесі қадамдар дербес жұмыс жасауға арналған. Әр қадамда сым бойынша нұсқаулықтар мен сынақ нұсқаулары бар. Мен жобаларды құрған кезде олардың жұмыс істейтінін растау үшін әр компонентті қосамын және тексеремін. Бұл құрамдас бөліктердің санын біріктіруге көмектеседі, өйткені әр жұмыс мен интеграция талаптарына назар аудара алатынымды білемін.
Бұл нұсқаулық Arduino IDE орнатылғанын талап етеді. Сіз сондай -ақ осы жобадағы сілтемелерден Arduino эскиздік бағдарламасын жүктеу, бағдарламаның каталогын жасау үшін негізгі дағдыларға ие болуыңыз керек (каталог атауы бағдарламаның атымен бірдей). Келесі қадамдар - IDE бағдарламасын жүктеу, қарау және өңдеу. Содан кейін бағдарламаны USB кабелі арқылы Arduino тақтасына жүктеңіз.
Жабдықтар
- Nano V3 ATmega328P CH340G Arduino үшін микроконтроллер тақтасы. Балама ретінде Uno қолдануға болады.
- DS3231 нақты уақыттағы сағат және CR2032 батареясы.
- I2C модулі бар 1602 СКД
- Инфрақызыл қабылдағыш және пульт. Мен инфрақызыл қабылдағышпен және инфрақызыл қашықтан басқару пультімен бірге келетін IR сымсыз қашықтан басқару модулі жиынтығын қолдандым.
- Нан тақтасы
- Сымды кабельдер
- 5 вольтты қабырға адаптері
Мен бөлшектерді eBay -ден сатып алдым, көбіне Гонконг немесе Қытай дистрибьюторларынан. АҚШ дистрибьюторлары бір уақытта ұқсас немесе ұқсас бөлшектерге қол жетімді бағамен және жылдам жеткізіліммен ие болады. Қытай бөлшектерін жеткізу 3 -тен 6 аптаға дейін созылады. Мен қолданған дистрибьюторлардың барлығы сенімді болды.
Шамамен шығындар: Nano $ 3, DS3231 $ 1, СКД $ 3, Инфрақызыл жинақ $ 1, нан тақтасы $ 2, 40 сымды кабель пакеті $ 1, 5 вольтты қабырға адаптері үшін $ 1. Барлығы, шамамен $ 11. Назар аударыңыз, мен нано мен СКД -ны дәнекерленген түйреуіштермен сатып алдым, өйткені менің дәнекерлеу дағдыларым нашар. Сағат батареясы үшін мен 5 пакеттік литий CR2032 батареяларын шамамен 1,25 долларға сатып алдым. Мен сонымен қатар DS3231 5 пакетін сатып алдым, себебі маған уақыт бөліктері ұнайды. Бұл жобада 1 нан тақтасы қолданылады. Мен шамамен 7 долларға 3 нан пакетін сатып алдым; жеке тақта сатып алудан гөрі жақсы келісім.
1 -қадам: Arduino Nano -ны тақтаға қосыңыз
Arduino Nano нан тақтасына қосыңыз. Немесе, егер қаласаңыз, сіз осы жобаға Arduino Uno пайдалана аласыз; олар бұл жоба үшін бір түйреуішті пайдаланады. Наноны (немесе Uno) компьютерге USB кабелі арқылы қосыңыз.
Қуат пен жерді Arduino -дан тақтаның қуат жолағына қосыңыз. Arduino 5+ түйреуішін тақтаның оң жолағына қосыңыз. Arduino GRN (жер) түйреуішін нан тақтасының теріс (жерге) жолағына жалғаңыз. Бұл басқа компоненттермен қолданылады.
Arduino тестінің негізгі бағдарламасын жүктеп алыңыз және іске қосыңыз: arduinoTest.ino. Бағдарламаны іске қосқан кезде светодиод шамы 1 секундқа қосылады, содан кейін 1 секундқа өшеді. Сондай -ақ, Arduino IDE құралдарында/сериялық мониторда көруге болатын хабарлар орналастырылады.
+++ орнату.
+ Шығу үшін борттық жарықдиодты сандық түйреуіш іске қосылды. Жарық диоды өшірулі. ++ Циклға өту. + Цикл есептегіші = 1 + Цикл есептегіші = 2 + Цикл есептегіші = 3…
Жаттығу ретінде жыпылықтайтын шамдағы уақыт кідірісін өзгертіңіз, өзгертілген бағдарламаны жүктеңіз және өзгерісті растаңыз.
Жоғарыда келтірілген суретте 140 данадан тұратын дәнекерлеуге арналған сөмкелер жиынтығының қорабы бар, сіз оны 3 доллардан 5 долларға дейін ала аласыз. Олар қысқа байланыстар үшін ұзын кабельдерді қолданатын тақталарды ұқыпты етеді.
2 -қадам: DS3231 сағат модулін қосыңыз және оны Arduino -ға қосыңыз
Сағат модулін тақтаға қосыңыз. Сағат модулінің GND түйреуішін нан тақтасының жолақ жолағына жалғаңыз. Сағат модулінің VCC түйреуішін нан тақтасының оң жолақ жолағына жалғаңыз. SDA (деректер) сағат модулінің түйреуішін Arduino A4 істікшесіне (I2C деректер штыры) қосыңыз. Сағат модулінің SCL (сағат) түйреуішін Arduino A5 түйреуішіне (I2C сағат штыры) қосыңыз.
Arduino IDE -де DS3231 сағат кітапханасын орнатыңыз. Құралдар/Кітапханаларды басқару таңдаңыз. Іздеуді «rtclib» теру арқылы сүзіңіз. Adafruit RTClib таңдаңыз (анықтама үшін кітапхана сілтемесі).
Негізгі тестілік бағдарламаны жүктеңіз және іске қосыңыз: clockTest.ino. Бағдарламаны іске қосқан кезде Arduino IDE құралдарында/сериялық мониторда қарауға болатын сағаттық хабарламалар орналастырылады.
+++ орнату.
+ Сағат жиыны. ++ Циклға өту. ---------------------------------------- + Ағымдағы күні мен уақыты: 2020/3/ 22 (жексенбі) 11: 42: 3 + Ағымдағы күні мен уақыты: 2020/3/22 (жексенбі) 11: 42: 4 + Ағымдағы күні мен уақыты: 2020/3/22 (жексенбі) 11: 42: 5…
Жаттығу ретінде rtc.adjust () көмегімен сағаттың уақыты мен күнін орнатыңыз, өзгертілген бағдарламаны жүктеңіз және өзгерісті растаңыз.
rtc.adjust (DateTime (2020, 3, 19, 10, 59, 50)); // Көктемнің бірінші күні, 2020 ж.
3 -қадам: 1602 СК дисплей модулін қосып, Arduino -ға қосыңыз
СКД модулін тақтаға қосыңыз. Сағат модулінің GND түйреуішін нан тақтасының жолақ жолағына қосыңыз. Сағат модулінің VCC түйреуішін нан тақтасының оң жолақ жолағына жалғаңыз. SDA (деректер) сағат модулінің түйреуішін Arduino A4 істікшесіне (I2C деректер штыры) қосыңыз. Сағат модулінің SCL (сағат) түйреуішін Arduino A5 түйреуішіне (I2C сағат штыры) қосыңыз.
Arduino IDE -де 1602 LCD кітапханасын орнатыңыз. Құралдар/Кітапханаларды басқару таңдаңыз. 'LiquidCrystal' теру арқылы іздеуді сүзіңіз. Франк де Барбандердің LiquidCrystal I2C таңдаңыз (анықтама үшін кітапхана сілтемесі).
Негізгі тестілік бағдарламаны жүктеп алыңыз және іске қосыңыз: lcd1602Test.ino. Бағдарламаны іске қосқан кезде Arduino IDE құралдарында/сериялық мониторда қарауға болатын сағаттық хабарламалар орналастырылады.
+++ орнату.
+ СКД пайдалануға дайын. +++ Циклге өтіңіз. + Есептегіш = 1 + Есептегіш = 2 + Есептегіш = 3…
Жаттығу ретінде СКД дисплей хабарларын өзгертіңіз, өзгертілген бағдарламаны жүктеңіз және өзгерісті растаңыз.
4 -қадам: Инфрақызыл қабылдағышты қосыңыз және оны Arduino -ға қосыңыз
Аналық кабель сымдарын аналық инфрақызыл қабылдағышқа қосыңыз (аналық ұштар). Сағат модулінің жерге тұйықтауышын нан тақтасының жолақ жолағына жалғаңыз. Сағат модулінің қуат түйреуішін нан тақтасының оң жақ жолағына жалғаңыз. Инфрақызыл қабылдағыштың шығыс штырын Arduino A1 түйреуішіне жалғаңыз.
Инфрақызыл қабылдағышты, түйреуіштерді жоғарыдан солға қарай қосыңыз:
Ең сол жақта (X жанында) - A1 Nano түйреуіші - 5В Оң жақта - жер
A1 + - - нано түйреуіш қосылыстары
| | | -инфрақызыл қабылдағыш түйреуіштері --------- | S | | | | --- | | | | | | --- | | | ---------
Arduino IDE -де инфрақызыл кітапхананы орнатыңыз. Құралдар/Кітапханаларды басқару таңдаңыз. Іздеуді «IRremote» теру арқылы сүзіңіз. IRremote by Shirriff таңдаңыз (анықтама үшін кітапхана сілтемесі).
Негізгі тестілік бағдарламаны жүктеңіз және іске қосыңыз: infraredReceiverTest.ino. Бағдарламаны іске қосқан кезде қашықтан басқару құралын қабылдағышқа бағыттаңыз және 0 -ден 9 -ға дейінгі сан сияқты әр түрлі түймелерді басыңыз. Сериялық хабарламалар шығарылады (басып шығарылады), оларды Arduino IDE құралдарында/сериялық мониторда көруге болады.
+++ орнату.
+ Инфрақызыл қабылдағыш инициализацияланды. ++ Циклға өту. + OK пернесі - ауысу + пернесі - - келесі + перне < - алдыңғы + жоғары + пернесі + төмен түсіру + пернесі 1: + пернесі 2: + пернесі 3: + пернесі 4: + пернесі 6: + пернесі 7: + пернесі 8: + 9 пернесі: + пернесі 0: + пернесі * (қайтару) + пернесі # (шығу)
Жаттығу ретінде басып шығарылған мәндерді көру үшін теледидардың қашықтан басқару құралын пайдаланыңыз. Содан кейін infraredSwitch () функциясының қосқыш операторындағы мәндерді қолдану үшін бағдарламаны өзгертуге болады. Мысалы, «0» пернесін басып, қашықтан басқару пультінің мәнін алыңыз, мысалы, «0xE0E08877». Содан кейін келесі код үзіндісіндегідей switch операторына регистрді қосыңыз.
0xFF9867 жағдайы:
жағдай 0xE0E08877: Serial.print («+ Key 0:»); Serial.println («»); үзіліс;
5 -қадам: Clock Project Arduino Sketch бағдарламасын жүктеңіз және оны тексеріңіз
Енді барлық компоненттер тақтаға қосылады, сым қосылады және тексеріледі; негізгі сағаттық бағдарламаны жүктеп, оны іске қосу уақыты келді. Сағат бағдарламасы модульден уақытты алады, уақытты СКД -де көрсетеді және инфрақызыл қашықтан басқару пульті арқылы уақытты орнатуға мүмкіндік береді.
Жобаның сағаттық бағдарламасын жүктеңіз және іске қосыңыз: clockLcdSet.ino.
Бағдарлама басталғанда, ол 1602 СКД экранында DS3231 уақытын көрсетеді. Хабарламалар Arduino IDE құралдарында/сериялық мониторда көрінеді.
+++ орнату.
+ СКД жиынтығы. + syncCountWithClock, theCounterHours = 13 theCounterMinutes = 12 theCounterSeconds = 13 + Бағдарлама айнымалыларымен орнатылған және синхрондалған. + Инфрақызыл қабылдағыш қосылған. ++ Циклға өту. + clockPulseMinute (), TheConterMinutes = 15 + clockPulseMinute (), TheConterMinutes = 16 + clockPulseMinute (), TheCounterMinutes = 17…
Қашықтан басқару пультін ресиверге бағыттап, оң жақ көрсеткі түймесін басыңыз. Орнату үшін жыл көрсетіледі. Жылды, айды, күнді, сағатты, минутты және секундты орнатуға болатынын көру үшін оң жақ көрсеткі түймесін бірнеше рет басыңыз. Уақыт мәнін орнату үшін мәнге өтіңіз. Көрсету мәнін орнату үшін жоғары және төмен көрсеткілерді пайдаланыңыз. Содан кейін сағаттың мәнін орнату үшін «OK» пернесін пайдаланыңыз. Бір уақытта бір мән орнатылады.
6 -қадам: Сыртқы қуат көзі
Енді сіздің сағатыңыз тексеріліп, жұмыс істеп тұр, сіз оны компьютерден ажыратып, тәуелсіз қуат көзін қолдана аласыз. Қарапайым болу үшін мен 5 вольтты қабырға адаптерін қолданамын, оны бір долларға сатып алуға болады, ал USB кабелін - тағы бір доллар. Кабель Arduino -ны +5В қабырға адаптеріне қосады. Arduino қуат пен жерге қосқыштар тақтаға қосылғандықтан, бұл басқа компоненттерді қуаттандырады.
Қарапайымдылығы мен арзандығына байланысты мен осы комбинацияны басқа жобаларды қолдау үшін қолданамын.
Сіз сәтті болды деп сенемін және инфрақызыл басқарылатын СКД сағатын жасау сізге ұнады.
Ұсынылған:
ESP32 және ST7789 135x240 СКД дисплейі: 3 қадам
ESP32 және ST7789 135x240 СК дисплейі: ST7789 дисплейін ESP32 тақтасына қалай қосу керек. Мен басқа дисплейлермен тәжірибе жасадым және оны іске қосу біршама қиын болды. Бұл байланыс схемасы мен коды басқаларға көмектеседі деп үміттенемін
Bluetooth басқарылатын Messenger СКД -- 16x2 СКД -- Hc05 -- Қарапайым -- Сымсыз хабарландыру тақтасы: 8 қадам
Bluetooth басқарылатын Messenger СКД || 16x2 СКД || Hc05 || Қарапайым || Сымсыз хабарландыру тақтасы: …………………………. Басқа бейнелер үшін менің YouTube каналыма ТІРКЕЛІҢІЗ …… ………………………………… Хабарландыру тақтасы адамдарды жаңа ақпаратпен жаңарту үшін қолданылады немесе егер сіз хабарламаны бөлмеде немесе жартылай жібергіңіз келсе
СКД басқыншылары: 16x2 СКД дисплейіндегі ойын сияқты ғарыштық басқыншылар: 7 қадам
СКД басқыншылары: 16x2 СКД дисплейіндегі ғарыштық басқыншылар ойыны: Аңызға айналған «Космостық басқыншылар» ойынын енгізудің қажеті жоқ. Бұл жобаның ең қызықты ерекшелігі - бұл графикалық шығару үшін мәтіндік дисплейді қолдану. Бұған 8 таңбалы таңбаны енгізу арқылы қол жеткізуге болады. Сіз толық Arduino жүктей аласыз
I2C / IIC СКД дисплей - IUC LCD дисплейіне SPI СКД дисплейін Arduino көмегімен SPI - IIC модулін қолданып қолданыңыз: 5 қадам
СКД дисплейі I2C / IIC | IUC LCD дисплейіне SPI LCD дисплейін Arduino көмегімен SPI мен IIC модулін қолдана отырып қолданыңыз: Сәлеметсіздер ме, балалар, өйткені қалыпты SPI LCD 1602 сымдары өте көп, сондықтан оларды arduino -мен байланыстыру өте қиын, бірақ нарықта бір модуль бар. SPI дисплейін IIC дисплейіне түрлендіріңіз, сонда сізге тек 4 сымды қосу қажет
СКД дисплейі I2C / IIC - SPI СКД I2C СК дисплейіне түрлендіру: 5 қадам
СКД дисплейі I2C / IIC | SPI СКД дисплейін I2C СК дисплейіне түрлендіріңіз: LCD дисплейін пайдалану үшін тым көп қосылым қажет, сондықтан мен i2c lcd -ді спи -LCD -ге түрлендіретін модуль таптым