আমি চাই যে আমার রিয়েল-টাইম ঘড়িটি আমার পিসিতে সময় হিসাবে সেট করবে। যাইহোক, আমি যখন নিম্নলিখিত স্কেচটি চালনা করি তখন রিয়েল-টাইম ক্লকটি সময়টি আমার পিসি সময়টির চেয়ে 32-33 সেকেন্ড আগে বলে দেয়।
#include <Wire.h>
#include "RTClib.h"
RTC_DS1307 RTC;
void setup () {
Serial.begin(57600);
Wire.begin();
RTC.begin();
if (! RTC.isrunning()) {
Serial.println("RTC is NOT running!");
// following line sets the RTC to the date & time this sketch was compiled
// uncomment it & upload to set the time, date and start run the RTC!
RTC.adjust(DateTime(__DATE__, __TIME__));
}
}
void loop () {
DateTime now = RTC.now();
Serial.print(now.year(), DEC);
Serial.print('/');
Serial.print(now.month(), DEC);
Serial.print('/');
Serial.print(now.day(), DEC);
Serial.print(' ');
Serial.print(now.hour(), DEC);
Serial.print(':');
Serial.print(now.minute(), DEC);
Serial.print(':');
Serial.print(now.second(), DEC);
Serial.println();
}
আমি নিজেও আরটিসি-তে সময় নির্ধারণ করার চেষ্টা করেছি, তবে আমি একই সমস্যাটি শেষ করছি: আরটিসি সর্বদা 32.33 সেকেন্ড আমার পিছনে থাকে I স্কেচটি চালানোর সাথে সাথে ল্যাগটি ঘটে যায়। এটি আমার কাছে খুব অদ্ভুত বলে মনে হচ্ছে যে আমি সময় নির্ধারণের চেষ্টা করি না কেন, আমি ঠিক একই ত্রুটিটি দিয়ে শেষ করি। আমি আরডিনোকে বলতে পারি যে আরটিসি যা বলছে তার পরে 33 সেকেন্ড হিসাবে সময়টি রিপোর্ট করতে পারে, তবে এই সমাধানটি একধরণের স্কেচিযুক্ত বলে মনে হচ্ছে এবং আমি উদ্বিগ্ন যে আমার আরটিসি বা আমি যেভাবে এটি ব্যবহার করছি তাতে কিছু ভুল হয়েছে।
আমি অ্যাডাফ্রুট থেকে এসেম্বলড ডেটা লগিং শিল্ড সহ একটি আরডুইনো ইউনো ব্যবহার করছি। ডেটা লগিং শিল্ড একটি DS1307 আরটিসি ব্যবহার করে। কারও কি এর আগেও এই সমস্যা ছিল, বা এর কারণ কী হতে পারে সে সম্পর্কে কোনও ধারণা আছে? কোন সাহায্যের অনেক প্রশংসা হবে।