نمایش نتایج: از 1 به 10 از 49
Like Tree14 لایک

موضوع: ماژول ساعت فوق دقیق ds3231 با رابط i2c

Threaded View

  1. #5
    Junior Member
    تاریخ عضویت
    Jul 2014
    نوشته ها
    14
    سلام. ممنون از جوابتون.
    راستش من کدهای گیت هابش رو خوب نفهمیدم. این شد که خودم نشستم فایل های کتابخونه رو خوندم و متوجه کارکردش شدم. نمونه کدمو میذارم اینجا، شاید کسی یه روزی به کارش اومد.
    کد:
    #include <Wire.h>
    #include "ds3231.h" // https://github.com/rodan/ds3231
    #include "rtc_ds3231.h"
    
    const unsigned long interval = 1000;
    unsigned long prev, now;
    struct ts timestamp;
    
    void setup() {
      Serial.begin(9600);
      Wire.begin();
      DS3231_init(DS3231_INTCN);
      timestamp.year = 2014;
      timestamp.mon = 7;
      timestamp.mday = 26;
      timestamp.hour = 23;
      timestamp.min = 37;
      timestamp.sec = 40;
      DS3231_set(timestamp); // تنظیم زمان
    }
    
    void loop() {
      now = millis();
      if (now - prev > interval) {
        DS3231_get(&timestamp); // گرفتن زمان
        Serial.print("Time:");
        String timestr = String(timestamp.hour) + ":" + String(timestamp.min) + ":" + String(timestamp.sec);
        Serial.println(timestr);
        Serial.print("Temp:");
        Serial.println(DS3231_get_treg()); // گرفتن و چاپ دما در سریال
        prev = now;
      }
    }
    همونطور که میبینید، برای کار با زمان و تاریخ میبایستی از یه ساختار (structure) استفاده کنید. کد بسیار ساده هستش. توی setup زمان رو ست کردم و توی loop هر ثانیه یک بار اونو توی سریال چاپ میکنم.
    ضمناً از دماسنج ماژول هم استفاده میکنم. علاوه بر زمان، دما رو هم نشون میدم. زیاد دقیق نیست اما خوبه. فقط یه دونه تابع هم داره که دما رو به سانتی گراد برمیگردونه.

    نمونه خروجی هم به صورت زیر هستش:
    کد:
    Time:23:39:24
    Temp:24.75
    Time:23:39:25
    Temp:24.75
    Time:23:39:26
    Temp:24.75
    ویرایش توسط MaMaL : 07-26-2014 در ساعت 08:03 PM دلیل: کامنت گذاری در کد

کلمات کلیدی این موضوع

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •  

SEO by vBSEO