मैं मान रहा हूँ कि आरटीसी या तो अपने स्वयं के क्रिस्टल के साथ एक अलग चिप है, या आपके माइक्रोकंट्रोलर के साथ एकीकृत एक मॉड्यूल है जिसमें फिर से मुख्य घड़ी की तुलना में एक अलग समय स्रोत (जैसे 32 kHz क्रिस्टल) है। और आरटीसी के लिए समय स्रोत माइक्रोकंट्रोलर के लिए एक से अधिक सटीक है।
यह निर्धारित करने के लिए कि आपको कितनी बार RTC पढ़ने की आवश्यकता है, आपको यह पता लगाना होगा कि आपकी मुख्य घड़ी में अधिकतम त्रुटि क्या हो सकती है। उदाहरण के लिए, यदि मुख्य क्रिस्टल 20 पीपीएम पर निर्दिष्ट है, तो यह 0.002% के समान है। इसलिए मुख्य घड़ी स्रोत पर आधारित एक घड़ी प्रतिदिन 0.00002 * 3600 * 24 = 1.728 सेकंड तक बहाव कर सकती है।
इसलिए यदि आप एक दिन में केवल दो बार RTC पढ़ते हैं, और बीच में एक बार एक टाइमर अवरोधक का उपयोग करके समय बढ़ाते हैं, तो आप कभी भी एक सेकंड से अधिक नहीं होंगे - RTC की तुलना में कभी भी एक सेकंड से अधिक न हों।
यदि, जैसा कि मैंने पहले माना था, आपका आरटीसी या तो अपने स्वयं के क्रिस्टल के साथ एक अलग चिप है, या आपके माइक्रोकंट्रोलर के साथ एकीकृत एक मॉड्यूल है, इसका मतलब यह नहीं है कि यह सही है। आरटीसी में त्रुटि भी हो सकती है। उदाहरण के लिए, यदि यह 5 पीपीएम (जो कि 10 पीपीएम वाले की तुलना में थोड़ा अधिक महंगा है) की सहिष्णुता के साथ 32 kHz क्रिस्टल का उपयोग कर रहा है, तो यह प्रति दिन 0.43 सेकंड - या प्रति माह 13 सेकंड तक बंद हो सकता है।
इसके आसपास जाने के लिए, आपको आरटीसी को ट्यून करना होगा, जहां आप एक रजिस्टर में एक सुधार कारक लिखते हैं। ऐसा करने से आपको व्यावहारिक रूप से त्रुटि शून्य हो जाएगी। लेकिन निश्चित रूप से आपको ट्यूनिंग करते समय संदर्भ के रूप में उपयोग करने के लिए एक तीसरा बाहरी घड़ी स्रोत होना चाहिए। अमेरिका में एक अत्यंत सटीक संदर्भ 60 हर्ट्ज एसी लाइन है, जो बिल्कुल सटीक होने की गारंटी है 60 * 60 * 60 * 24 ( 5.184.000) लगातार midnights के बीच 24 घंटे की अवधि में चक्र। इसके लिए उपयोगी होने के लिए, आपको पूरे 24 घंटे के लिए समय देना चाहिए, क्योंकि 60 हर्ट्ज मिडनाइट्स के बीच कुछ बहाव कर सकता है।
एक और उत्कृष्ट समय संदर्भ जीपीएस (10 एनएस सटीकता) का उपयोग होगा, अगर एक पहले से ही उनके प्रोजेक्ट में जीपीएस हार्डवेयर था।
यदि इसके बजाय आपका RTC बार किसी बाह्य स्रोत से आता है, जैसे सेलुलर नेटवर्क समय (AT + CCLK; कॉल), या NTP का उपयोग करने वाला नेटवर्क समय सर्वर, तो आप RTC मान का उपयोग कर सकते हैं क्योंकि तब से "ट्यून" करने के लिए कुछ नहीं होगा। ।