आरटीसी M41T56 सुविधाएँ

M41T56 एक रियल टाइम क्लॉक चिप है, जो लोकप्रिय DS1307 का एक एनालॉग है। और हालांकि माइक्रोकिरिट का पिनआउट भी समान है, उनके बीच महत्वपूर्ण अंतर हैं, जिनके बारे में मैं बात करने की कोशिश करूंगा।

संक्षिप्त विवरण


मैं IIC बस के संचालन पर ध्यान केंद्रित नहीं करूंगा, मैं बस ध्यान देता हूं कि दोनों चिप्स का पता 0xd0 है। समय के साथ काम करने के लिए, microcircuit में सात खाता रजिस्टर और एक नियंत्रण रजिस्टर होता है। खाता रजिस्टर में बाइनरी दशमलव प्रारूप में नंबर होते हैं, हालांकि कुछ बिट्स का विशेष अर्थ होता है।

रजिस्टरों
xxx - बिट वैल्यू परिभाषित नहीं है।
समारोहसूचीबिट्ससंभव मान
76543210
सेकंड0x00अनुसूचित जनजातिसेकंड के दसियोंसेकंड की इकाइयाँ० - ५ ९
मिनट0x01xxxदसियों मिनटमिनट की इकाइयाँ० - ५ ९
घड़ी0x02SEBएस.बी.दर्जनों घंटेघंटे इकाइयों० - २३
दिन0x03xxxxxxxxxxxxxxxसप्ताह का दिन1 - 7
महीने का दिन0x04xxxxxxदर्जनों दिनदिन की इकाइयाँ1 - (28 | 29 | 30 | 31)
माह0x05xxxxxxxxxdessमहीने की इकाइयाँ1 - 12
साल0x06दसियों सालवर्ष की इकाइयाँ० - ९९
नियंत्रण रजिस्टर0x07बाहरएफटीएससुधार राशि-

बिट्स
x - चालू करने के बाद, बिट की स्थिति कोई भी हो सकती है।
एक सारीसेट के बादविवरण
अनुसूचित जनजातिएक्सइस बिट में 1 लिखते समय, जनरेटर बंद हो जाता है
CEBएक्सजब CEB (सेंचुरी इनेबल बिट) बिट सेट हो जाता है, तो जब एक नई शताब्दी पहुँच जाती है, तो CB (सेंचुरी बिट) बिट मान को विपरीत में बदल देगा।
सीबीएक्स
बाहर1जब OUT (OUTput स्तर) और FT (फ्रिक्वेंसी टेस्ट) बिट्स शून्य के बराबर होते हैं, तो FT / OUT पिन को जमीन पर दबाया जाता है। FT = 1 के साथ, आउटपुट FT / OUT 512 हर्ट्ज है और OUT बिट कोई फर्क नहीं पड़ता।
एफटी0
एसएक्सआरटीसी स्ट्रोक अंशांकन चिह्न।

घड़ी रजिस्टर के बिट्स 7, 6 और 5 के असाइनमेंट में अंतर शुरू होता है। M41T56 में, बिट्स 7 और 6 का उपयोग नई सदी में संक्रमण को इंगित करने के लिए किया जाता है, और बिट्स 5 और 4 का उपयोग दसियों घंटे गिनने के लिए किया जाता है। इसके अलावा, केवल 24 की गिनती मोड 24 में संभव है, AM / PM मोड उपलब्ध नहीं है। DS1307 में, बिट 7 का उपयोग नहीं किया जाता है, बिट 6 में एक शून्य इंगित करता है कि गिनती मोड 24 का उपयोग किया जाता है, और इस मामले में, बिट्स 5 और 4 में दसियों घंटे होते हैं। यदि बिट 6 एक है, तो बिट 5 AM / PM ध्वज बन जाता है, और बिट 4 में दस घंटे होते हैं।

महत्वपूर्ण अंतर नियंत्रण रजिस्टर में होते हैं, जिसमें शब्द सुधार स्ट्रोक होता है।

पाठ्यक्रम सुधार


M41T56 आपको -62 से +124 पीपीएम तक की रेंज में क्वार्ट्ज गुंजयमान यंत्र की त्रुटि की भरपाई करने की अनुमति देता है, जो प्रति माह per 5 सेकंड से अधिक नहीं का विचलन देता है। मुआवजे के लिए, नियंत्रण रजिस्टर के छह सबसे महत्वपूर्ण बिट जिम्मेदार हैं। बिट्स 4-0 में सुधार मूल्य का अहस्ताक्षरित पूर्णांक होता है, और बिट 5 सुधार दिशा निर्धारित करता है। यदि बिट 5 में शून्य होता है, तो स्ट्रोक 2.034 पीपीएम की वृद्धि में धीमा हो जाता है, अन्यथा आरटीसी 4.068 पीपीएम की वेतन वृद्धि में तेजी लाता है। यह असुविधाजनक है, इसलिए मैंने पीपीएम से सुधार शब्द और इसके विपरीत में परिवर्तित करने के लिए सरल कार्यों के एक जोड़े को स्केच किया।

/*        . */ #define MASK_CALIBR ((1 << 4) | (1 << 3) | (1 << 2) | (1 << 1) | (1 << 0)) /*        . */ #define MASK_CALIBR_SIGN (1 << 5) /** *    . * @param caliber    RTC. * @return    ppm. */ int8_t caliber_to_ppm(uint8_t caliber) { int8_t result = caliber & MASK_CALIBR; result = (uint8_t) result * 2; if ((caliber & MASK_CALIBR_SIGN) != 0) { result = -result; } else { result = (uint8_t) result * 2; } return result; } /** *   . * @param ppm    ppm. * @return    RTC. */ uint8_t ppm_to_caliber(int8_t ppm) { uint8_t result; if (ppm < 0) { result = (uint8_t) (-ppm + 1) / 2; result |= MASK_CALIBR_SIGN; } else { result = (uint8_t) (ppm + 2) / 4; } return result; } 

दोष का पता लगाना


न तो DS1307, लेकिन M41T56 पीढ़ी की त्रुटियों का पता लगा सकता है, लेकिन वे गारंटी देते हैं कि जब बिजली चालू होती है, तो कुछ बिट्स एक निश्चित स्थिति में होंगे। नियंत्रण कक्ष में सक्षम होने पर M41T56 10xxxxxx होगा। प्रोग्राम क्रैश को ट्रैक करने के लिए, आप निम्न एल्गोरिथम का उपयोग कर सकते हैं। यदि, जब माइक्रोकंट्रोलर को चालू किया जाता है, तो RTC कंट्रोल रजिस्टर में 10xxxxxx होता है, तब बिजली की विफलता होती है और मूल्य को रजिस्टर में लिखा जाना चाहिए, जिसके उच्च बिट्स 10 के बराबर नहीं हैं। सबसे सरल बात यह है कि बिट्स 7 और 6 के बराबर सुधार शब्द को शून्य पर लिखें।

साहित्य


Source: https://habr.com/ru/post/hi457796/


All Articles