 |
:: استاذ و مشرف قسم الالكترونيات ::
تاريخ التسجيل: May 2007
المشاركات: 6,894
|
|
نشاط [ F.Abdelaziz ]
قوة السمعة:332
|
|
03-09-2012, 09:44 PM
المشاركة 3
|
|
سجلات DS1307 :
يتم الحصول على معلومات الوقت والتقويم بواسطة قراءة بايتات السجل المناسب . الجدول السابق يبين سجلات RTC . يستخدم السجل نظام الأعداد الثنائية المكودة عشريا BCD (Binary Coded Decimal) لحفظ القيم . على سبيل المثال لنأخذ السجل الموجود بالعنوان 01h , فهو يحفظ الدقائق MINUTES . لنفرض أن الزمن 13 دقيقة 13 minutes , عندئذ سوف يقوم بحفظها كمايلى :
لذلك يكون القيمة السداسية عشر الموجودة بسجل الدقائق الذى عنوانه "01h" هى "0x13" . يجب عليك تحويلها إلى عشرى (حتى يمكن عرضها فيما بعد على شاشة وحدة عرض LCD ) . يمكن القيام بذلك بالطريقة التالية :
// Assuming the value "0x13" is store in a variable named "sec"
sec = ((sec & 0xF0) >> 4)*10 + (sec & 0x0F);
سجل أيام الاسبوع يتزايد عند منتصف الليل . القيم المقابلة لأيام الاسبوع تحدد بمعرفة المستخدم ولكن يجب أن تكون متسلسلة ( بمعنى إذا كان الواحد 1 يساوى يوم الأحد Sunday , عندئذ يكون 2 تساوى يوم الاثنين Monday وهكذا ) الوقت والتاريخ الغير منطقى يتسبب فى عملية غير محددة .
البت Bit 7 بالسجل "0" هى بت "توقف الساعة" clock halt (CH) . عند تعيين هذه البت بواحد "1" , يتم عدم تمكين المذبذب . وعندما تكون بصفر "0" يتم تمكين المذبذب . عند بداية تطبيق القدرة للجهاز تكون سجلات التوقيت time والتاريخ date فى حالة تصفير reset بالقيم :
01/01/00 01 00:00:00 (MM/DD/YY DOW HH:MM:SS) . البت CH بالسجل الثانى سوف تتحدد بواحد "1" يمكن إيقاف الساعة عندما لا نحتاج لوظائف حفظ التوقيت , حيث يتم تقليل التيار .
الدائرة المتكاملة DS1307 يمكن أن تعمل فى أى من النظام 12-hour أو النظام 24-hour . البت Bit 6 لسجل الساعات هى بت تحديد هذا النظام . فى النظام . عندما تكون مرتفعة يتم اختيار النظام 12-hour . فى النظام 12-hour البت bit 5 هى بت AM/PM , عندما تكون مرتفعة يتم اختيار PM . فى النظام
24-hour , البت bit 5 تكون البت الثانية لعشرات الساعات 10-hour bit (20 to 23 hours) . قيمة الساعات يجب إعادة إدخالها كلما تغيرت بت اختيار النظام 12/24-hour .
ناقل البيانات I2C DATA BUS :
|