Fan: O’rnatilgan tizimlar Mustaqil ishi Mavzu: ds3231 modulini Arduino uno platasiga ulash. Displey ekranida vaqtni ko'rsatish Bajardi
Download 0.81 Mb.
|
Mustqil ish Rustamov Anvar
- Bu sahifa navigatsiya:
- Eslatma Dokon Mening bloknotim IC1
- DS3231 real vaqtda soat moduli nima Haqiqiy vaqtda soat moduli
- DS3231 texnik xususiyatlari
- 32 ming
- Bularning barchasi nima uchun kerak 60 soniya * 60 min * 24 soat * 365 kun = yiliga 31 536 000 soniya.
- Modul soatiga vaqtni belgilashning qanday usullari mavjud
Radio elementlari ro'yxati
". DS3231 real vaqtda soat moduli bilan tanishamiz. Maqolada video ko'rsatmalar, dasturlar ro'yxati, DS oilasidan modullarni Arduino-ga ulashning maqsadi va usullari mavjud. Haqiqiy vaqtda soat moduli DS3231 DS3231 real vaqtda soat moduli nima? Haqiqiy vaqtda soat moduli- bu elektron sxema, xronometrik ma'lumotlarni (joriy vaqt, sana, haftaning kuni va boshqalar) yozish uchun mo'ljallangan, avtonom quvvat manbai va buxgalteriya qurilmasidan olingan tizimdir. DS3231 moduli Asosan, bu oddiy soat. Arduino platalarida allaqachon o'rnatilgan soat mavjud Millis, ammo u faqat taxtaga quvvat berilganda ishlaydi. Arduino-ni o'chirib qo'yish va qayta yoqish Millis vaqtini nolga qaytaradi. Va DS3231 bortida batareya mavjud bo'lib, u hatto Arduino platasi o'chirilgan bo'lsa ham, modulni "quvvat" berishda davom etadi va vaqtni o'lchash imkonini beradi. Moduldan Arduino platalari asosidagi soat yoki budilnik sifatida foydalanish mumkin. Yoki turli tizimlar uchun ogohlantirish sifatida, masalan, Smart Home-da. DS3231 texnik xususiyatlari: modul soatlar, daqiqalar, soniyalar, sanalar, oylar, yillarni hisoblaydi (kabisa yillari 2100 yilgacha hisobga olinadi); ulanish uchun turli qurilmalar, soat I2C interfeysi orqali ulanadi. 32 ming- Oziqlantirish uchun mo'ljallangan chiqish tashqi quvvat manbai>12V. SQW- Dasturlashtiriladigan kvadrat to'lqinli signal chiqishi. SCL- Ushbu pin orqali ma'lumotlar I2C interfeysi orqali soat bilan almashtiriladi. SDA– Soatdan olingan ma’lumotlar ushbu pin orqali uzatiladi. VCC– Haqiqiy vaqtda soat quvvat manbai, 5 volt kerak. Agar bu pinga kuchlanish qo'llanilmasa, soat uyqu rejimiga o'tadi. GND- Yer. DS3231 real vaqtda soatni ulash sxemasi va oddiy dastur Turli Arduino platalarida SDA va SCL pinlari:
Haqiqiy vaqt soat modulini Arduino UNO ga ulaymiz. SDA - pin A4, SCL - pin A5. Modelning ishlashi uchun quyidagi dastur mos keladi (siz dasturni oddiygina Arduino IDE-ga nusxalashingiz mumkin): #o'z ichiga oladi bekor o'rnatish()( kechikish (300); Serial.begin(9600); time.begin(); } void loop()( }
Avvalo, skriptda, kutubxonaning ulanishi arduino_RTC.h. Xuddi shu joyda, u bilan to'g'ri ishlash uchun modulingizning aniq nomini ko'rsating. Natijada, biz DS3231 modulidan port monitoriga chiqish vaqtini olamiz. Soatlarni, daqiqalarni, soniyalarni ko'rsatadi. Keyingi eskizda biz funktsiyani qo'shamiz belgilangan vaqt, dastlabki ortga hisoblash vaqtini belgilash imkonini beradi. #o'z ichiga oladi iarduino_RTC vaqti (RTC_DS3231); bekor o'rnatish()( kechikish (300); Serial.begin(9600); time.begin(); time.settime(0,0,18,24,04,17,1); // 0 soniya, 0 daqiqa, 18 soat, 2017 yil 24 aprel, dushanba } void loop()( if(millis()%1000==0)( // 1 soniya o'tgan bo'lsa Serial.println(time.gettime("d-m-Y, H:i:s, D")); // chiqish vaqti kechikish (1); // vaqtni 1ms ichida bir necha marta ko'rsatmaslik uchun 1ms to'xtatib turing } } Misolda, vaqt 0 sek, 0 min, 18 soat, 2017 yil 24 aprel, dushanbadan boshlab hisoblana boshlaydi. Dars postlari: Birinchi dars: . Ikkinchi dars: . Uchinchi dars: . To'rtinchi dars: . Beshinchi dars: . Oltinchi dars: . Ettinchi dars: . Sakkizinchi dars: . To'qqizinchi dars: Bularning barchasi nima uchun kerak? 60 soniya * 60 min * 24 soat * 365 kun = yiliga 31 536 000 soniya. Ushbu millionlarning har biri uchun 2 soniya u yoki bu tomonga ketishi mumkin. 31,5 million millionga bo'linadi va 2 ga ko'paytiriladi: biz yiliga 63 soniyani olamiz (maksimal). Qabul qilinadigan variantmi? Juda. Lekin har olti oyda bir marta vaqtni 1 daqiqaga to'g'ri kelishi uchun sinxronlashtirardim. Modul soatiga vaqtni belgilashning qanday usullari mavjud? An'anaga ko'ra, DS3107 modulidan boshlab, vaqt kutubxonaning foydalanish holatlaridan Arduino eskizi yordamida o'rnatildi. Algoritm quyidagicha: eskizni oching, "kompilyatsiya va yuklash" tugmasini bosing va nazoratchi birinchi marta ishga tushirilganda vaqt belgilanadi. Savol qoladi: soat nechada? Arduino qaysi vaqtni belgilashni qanday bilishi mumkin? Va juda oddiy - eskizni tuzish vaqti. Biroq, men ushbu yondashuvning bir qator kamchiliklarini ko'raman: kompilyatsiya vaqti kompyuterning "quvvatiga" bog'liq; yuklash vaqti tuzilgan eskizni Arduino platasiga o'tkazish tezligiga bog'liq; yuklangan eskiz "bir martalik" (Arduino-ga yuklangandan so'ng darhol eskirgan). Qanday qilib bu cheklovlarni chetlab o'tish uchun "qochish" mumkin? Masalan, kompilyatsiya vaqtini bilish (eksperimental ravishda o'rnatish), siz shu vaqtga qadar kompyuterdagi soatni oldinga "haydashingiz" mumkin. Keyin kompilyatsiyani ishga tushiring, taxtani miltillang va vaqt belgilanadi. Usulning afzalligi uning nisbatan soddaligi. Kamchiliklari - nisbatan noqulay, nisbatan noto'g'ri, bir martalik usul. Yana nimani o'ylashingiz mumkin? Siz, masalan, eskizda kerakli vaqtni qo'lda o'rnatishingiz, tugmani bosishingiz mumkin to'g'ri daqiqa belgilangan vaqtni "qo'l bilan" o'rnatadi, masalan, joriy paytdan boshlab 2 daqiqadan so'ng: eskiz "to'ldirilayotganda", biz tugmani bosishning eng to'g'ri daqiqasini qo'lda kuzatishga tayyorlanayotganimizda, atigi bir necha daqiqa davom etadi. o'tish. Va keyin, kompyuterdagi soatga qarab, tugmani bosish uchun "bir xil" daqiqani kuting. Taroziga soling - oldingi usuldan ko'ra murakkabroq, lekin hali ham nisbatan sodda, lekin birinchi usuldan ko'ra aniqroq. Kamchiliklari - bu usul yanada noqulay, uzoqroq, hali ham "bir martalik" eskiz. Download 0.81 Mb. Do'stlaringiz bilan baham: |
Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling
ma'muriyatiga murojaat qiling