مائکروکنٹرولر اور اس کے پروگرامنگ کے ساتھ انٹرفیسنگ آر ٹی سی (DS1307)

مسائل کو ختم کرنے کے لئے ہمارے آلے کو آزمائیں





آر ٹی سی ایک الیکٹرانک ڈیوائس ہے جس میں ایک لازمی کردار ادا کرتا ہے ریئل ٹائم ایمبیڈڈ سسٹم ڈیزائن . یہ مختلف درخواستوں جیسے نظام گھڑی ، طلباء کی حاضری کا نظام اور الارم وغیرہ میں ایک عین وقت اور تاریخ مہیا کرتا ہے ، جو موجودہ وقت پر نظر رکھتے ہیں اور متعلقہ کام کو مستقل نتیجہ فراہم کرتے ہیں۔ یہ مضمون آر ٹی سی کو انٹرفیسنگ پیش کرتا ہے جس میں داخلی رجسٹروں کی 8051 مائکروکروٹرولینڈ بنیادی رسائی ہے۔

8051 مائکروکانٹرولر کے ساتھ آر ٹی سی انٹرفیسنگ

8051 مائکروکانٹرولر کے ساتھ آر ٹی سی انٹرفیسنگ



آر ٹی سی پروگرامنگ اور انٹرفیسنگ

8051 مائکروکانٹرولر کے ساتھ آر ٹی سی کا انٹرفیس کرنا اس میں انٹرفیس کی گئی دیگر تمام اقسام کے 'ریئل ٹائم گھڑیاں' کی طرح ہے۔ تو آئیے ، ہم انٹرفیسنگ کرنے والے سادہ آر ٹی سی کو دیکھیں 8051 مائکروکانٹرولر اور اس میں شامل پروگرامنگ کا طریقہ کار۔


مرحلہ 1: آر ٹی سی ڈیوائس کو منتخب کریں

مختلف قسم کے آر ٹی سی چپس ریئل ٹائم ایمبیڈڈ دنیا میں دستیاب ہیں ، جو مختلف معیارات جیسے پیکیج کی قسم ، سپلائی وولٹیج اور پن کی ترتیب وغیرہ کی بنیاد پر درجہ بندی کی جاتی ہیں۔ کچھ قسم کے آر ٹی سی ڈیوائسز ہیں۔



  • دو تار سیریل انٹرفیس (I2C بس)
  • تھری وائر سیریل انٹرفیس (USB بس)
  • چار تار سیریل انٹرفیس (SPI بس)

سب سے پہلے ، ہمیں I2C بس آرٹیسی یا ایس پی آئی بس آر ٹی سی یا دوسرے جیسے تقاضوں پر مبنی زمرہ کے مطابق آر ٹی سی ڈیوائس کو منتخب کرنے کی ضرورت ہے ، جو مائکروکانٹرولر کے ساتھ انٹرفیسنگ کے لئے مناسب ہے۔ پھر ہم درخواست کی ضرورت جیسے بیٹری کی زندگی ، مناسب پیکیج اور گھڑی کی فریکوئنسی پر منحصر ہوتے ہوئے آر ٹی سی ڈیوائس کی خصوصیات منتخب کرسکتے ہیں۔ آئیے دو تار انٹرفیسنگ پر غور کریں 8051 مائکروکانٹرولر جیسے DS1307 کے ساتھ آر ٹی سی .

مرحلہ 2: اندرونی رجسٹر اور آر ٹی سی ڈیوائس کا پتہ

آر ٹی سی کا مطلب اصلی وقت کی گھڑی ہے جو برسوں ، مہینوں ، ہفتوں ، دن ، گھنٹوں ، منٹ اور سیکنڈوں کو کرسٹل تعدد کی بنیاد پر مہیا کرتا ہے۔ آر ٹی سی ان بلٹ پر مشتمل ہے ڈیٹا اسٹوریج کے لئے رام میموری . بیٹری کو آر ٹی سی ڈیوائس سے جوڑ کر بجلی کی فراہمی میں ناکامی کی صورت میں بیٹری کا بیک اپ فراہم کیا جائے گا۔

RTC DB1307 تشکیل:

آر ٹی سی انٹرنل بلاکس اور پن ڈایاگرام

آر ٹی سی انٹرنل بلاکس اور پن ڈایاگرام

A0 ، A1 ، A2: RTC DB1307 چپ کے ایڈریس پن ہیں ، جو ماسٹر ڈیوائس کے ساتھ بات چیت کرنے کے لئے استعمال ہوسکتے ہیں۔ ہم آٹھ آلات کو کنٹرول کرسکتے ہیں جس میں RTC انٹرفیسنگ کرتے ہیں 8051 مائکروکانٹرولر I2C پروٹوکول کا استعمال کرتے ہوئے A0 ، A1 ، A2 بٹس کے ذریعہ۔


وی سی سی اور جی این ڈی: وی سی سی اور جی این ڈی بالترتیب بجلی کی فراہمی اور گراؤنڈ پن ہیں۔ یہ آلہ 1.8V سے 5.5V کی حد تک چلاتا ہے۔

وی بی ٹی: وی بی ٹی ایک بیٹری پاور سپلائی پن ہے۔ بیٹری طاقت کا منبع 2V سے 3.5V کے درمیان ہونا چاہئے۔

ایس سی ایل: ایس سی ایل ایک سیریل گھڑی پن ہے اور یہ سیریل انٹرفیس میں ڈیٹا کو ہم وقت سازی کے لئے استعمال کیا جاتا ہے۔

SDL: یہ ایک سیریل ان پٹ اور آؤٹ پٹ پن ہے۔ یہ سیریل انٹرفیس پر ڈیٹا منتقل اور وصول کرنے کے لئے استعمال ہوتا ہے۔

وقت پورا ہوا: یہ ایک اختیاری مربع لہر آؤٹ پٹ پن ہے۔

OSC0 اور OSC1: یہ کرسٹل آسکیلیٹر پن ہیں جو آر ٹی سی ڈیوائس کو گھڑی کے اشارے فراہم کرنے کے لئے استعمال ہوتے ہیں۔ معیاری کوارٹج کرسٹل تعدد 22.768KHz ہے۔

آلہ سے خطاب:

I2C بس پروٹوکول ایک وقت میں بہت سے غلام آلات کی اجازت دیتا ہے۔ اس کی نمائندگی کے ل Every ہر غلام آلہ کا اپنا پتہ ہونا چاہئے۔ ماسٹر ڈیوائس ایک ایڈریس کے ذریعہ خصوصی غلام آلہ کے ساتھ بات چیت کرتی ہے۔ آر ٹی سی ڈیوائس کا پتہ '0xA2' ہے جس میں '1010' مینوفیکچر کے ذریعہ دیا جاتا ہے اور A0 ، A1 ، A2 صارف کی وضاحت ایڈریس ہے ، جس پر آٹھ RTC آلات پر بات چیت کرنے کے لئے استعمال ہوتا ہے I2C بس پروٹوکول .

ڈیوائس ایڈریسنگ

ڈیوائس ایڈریسنگ

R / W بٹ آر ٹی سی میں پڑھنے اور لکھنے کی کارروائیوں کو انجام دینے کے لئے استعمال ہوتا ہے۔ اگر R / W = 0 ، تحریری کارروائی کی جاتی ہے اور پڑھنے کی کارروائی کے لئے R / W = 1۔

RTC = '0xA3' کے پڑھنے کے عمل کا پتہ

RTC = '0xA2' کے تحریری عمل کا پتہ

میموری رجسٹر اور پتہ:

آر ٹی سی رجسٹرز ایڈریس لوکیشنز میں 00h سے 0Fh تک ہیں اور رام میموری رجسٹرس ایڈریس کے مقامات پر 08h to3Fh تک ہیں جیسا کہ شکل میں دکھائے گئے ہیں۔ آر ٹی سی رجسٹرس کا استعمال کیلنڈر کی فعالیت اور دن کے ڈرائیو ٹائم اور ہفتے کے آخر میں ظاہر کرنے کے لئے کیا جاتا ہے۔

یادداشت کے اندراج اور پتہ

یادداشت کے اندراج اور پتہ

کنٹرول / اسٹیٹس رجسٹر:

DB1307 دو اضافی رجسٹروں پر مشتمل ہوتا ہے جیسے کنٹرول / حیثیت 1 اور کنٹرول / حیثیت 2 جو حقیقی وقت کی گھڑی کو کنٹرول کرنے کے لئے استعمال ہوتے ہیں اور رکاوٹیں .

کنٹرول / اسٹیٹ رجسٹر 1:

کنٹرول اسٹیٹ رجسٹر 1

کنٹرول اسٹیٹ رجسٹر 1

  • TEST1 = 0 عام وضع

= 1 EXT- گھڑی ٹیسٹ وضع

  • STOP = 0 RTC شروع ہوتا ہے

= 1 آر ٹی سی اسٹاپ

  • ری سیٹ پر TESTC = 0 پاور غیر فعال ہے

= ری سیٹ پر پاور قابل ہے

کنٹرول / حیثیت کا اندراج 2:

کنٹرول کی حیثیت کا اندراج 2

کنٹرول کی حیثیت کا اندراج 2

  • TI / TP = 0 INT ہر وقت متحرک رہتا ہے

= 1 INT فعال مطلوبہ وقت

  • AF = 0 الارم مماثل نہیں ہے

= 1 الارم میچ

  • TF = 0 ٹائمر اوور فلو نہیں ہوتا ہے

= 1 ٹائمر اوور فلو ہوتا ہے

  • ALE = 0 الارم میں خلل پڑتا ہے

= 1 الارم کی مداخلتیں فعال ہیں

  • TIE = 0 ٹائمر مداخلت غیر فعال

= 1 ٹائمر مداخلتیں قابل بنائیں

سٹی 3: 8051 کے ساتھ آر ٹی سی انٹرفیسنگ ds1307

آر ٹی سی ہوسکتا ہے انٹرفیس مائکروکانٹرولر مختلف سیریل بس پروٹوکول جیسے I2C اور استعمال کرکے ایس پی آئی پروٹوکول جو ان کے مابین مواصلت کا لنک فراہم کرتی ہے۔ اعداد و شمار سے پتہ چلتا ہے ، اصل وقت کی گھڑی I2C بس پروٹوکول کا استعمال کرتے ہوئے 8051 مائکروقابو کنٹرولر کے ساتھ مداخلت کرتی ہے۔ I2C ایک دو جہتی سیریل پروٹوکول ہے ، جس میں دو تاروں پر مشتمل ہے جیسے ایس سی ایل اور ایس ڈی اے بس سے منسلک آلات کے درمیان ڈیٹا منتقل کرنے کے لئے۔ 8051 مائکروکانٹرولر کے پاس کوئی انبیلٹ آر ٹی سی ڈیوائس نہیں ہے لہذا ہم نے ایک کے ذریعے بیرونی طور پر رابطہ قائم کیا ہے سیریل مواصلات پر مشتمل ڈیٹا کو یقینی بنانے کے ل.

8051 مائکروکانٹرولر کے ساتھ آر ٹی سی انٹرفیسنگ

8051 مائکروکانٹرولر کے ساتھ آر ٹی سی انٹرفیسنگ

I2C آلات میں کھلی نالیوں کی آؤٹ پٹ ہیں لہذا ، ایک پل اپ مزاحم کو I2C بس لائن سے وولٹیج کے ذریعہ منسلک کیا جانا چاہئے۔ اگر مزاحم کار ایس سی ایل اور ایس ڈی ایل لائنوں سے منسلک نہیں ہیں تو ، بس کام نہیں کرے گی۔

مرحلہ 4: آر ٹی سی ڈیٹا فریمنگ فارمیٹ

چونکہ RTC انٹرفیسنگ میں 8051 مائکروکانٹرولر I2C بس کا استعمال کرتا ہے لہذا ڈیٹا کی منتقلی بائٹس یا پیکٹوں کی شکل میں ہوتی ہے اور ہر بائٹ کی منظوری کے بعد ہوتا ہے۔

ڈیٹا فریم منتقل کرنا:

ٹرانسمیشن موڈ میں ، ماسٹر ایڈریس بٹ کے ذریعہ اسلام ڈیوائس کا انتخاب کرنے کے بعد اسٹارٹ کنڈیشن جاری کردے۔ ایڈریس بٹ میں 7 بٹ ہوتا ہے ، جو غلام ڈیوائسز کو ds1307 ایڈریس کے طور پر ظاہر کرتا ہے۔ سیریل ڈیٹا اور سیریل گھڑی ایس سی ایل اور ایس ڈی ایل لائنوں پر منتقل ہوتی ہے۔ اسٹارٹ ٹرانسفر کے آغاز اور اختتام کے طور پر اسٹارٹ اور اسٹاپ شرائط کو تسلیم کیا جاتا ہے۔ وصول اور منتقلی کی کارروائیوں کے بعد آر / ڈبلیو بٹ ہوتا ہے۔

ڈیٹا فریم منتقل کرنا

ڈیٹا فریم منتقل کرنا

شروع کریں: بنیادی طور پر ، ڈیٹا کی منتقلی ترتیب ماسٹر کے ذریعہ شروع کردہ حالت کی ابتدا کرتی ہے۔

7 بٹ ایڈریس: اس کے بعد ماسٹر غلام پتے کو کسی بھی 16 بٹ ایڈریس کی بجائے دو 8 بٹ فارمیٹس میں بھیجتا ہے۔

کنٹرول / حیثیت کا اندراج ایڈریس: کنٹرول / اسٹیٹس رجسٹر ایڈریس کنٹرول اسٹیٹس رجسٹروں کی اجازت دینے کے لئے ہے۔

کنٹرول / اسٹیٹ رجسٹر 1: کنٹرول اسٹیٹس رجسٹر 1 جو RTC ڈیوائس کو قابل بنانے کے لئے استعمال ہوتا ہے

کنٹرول / حیثیت کا اندراج 2: یہ مداخلت کو فعال اور غیر فعال کرنے کے لئے استعمال کیا جاتا ہے۔

R / W: اگر پڑھنے اور لکھنے میں تھوڑا سا کم ہے تو ، پھر لکھنے کا عمل انجام دیا جاتا ہے۔

ALAS: اگر غلام آلہ میں تحریری کارروائی کی جاتی ہے ، تو وصول کنندہ مائکرو قابو پانے والے کو 1 بٹ ACK بھیجتا ہے۔

رک: غلام ڈیوائس میں تحریری کارروائی کی تکمیل کے بعد ، مائکروکونٹرولر غلام بند کو روکنے کی شرط بھیجتا ہے۔

ڈیٹا فریم وصول کرنا:

ڈیٹا فریم وصول کرنا

ڈیٹا فریم وصول کرنا

شروع کریں: بنیادی طور پر ، ڈیٹا کی منتقلی ترتیب ماسٹر کے ذریعہ شروع کردہ حالت کی ابتدا کرتی ہے۔

7 بٹ ایڈریس: اس کے بعد ماسٹر غلام پتے کو کسی بھی 16 بٹ ایڈریس کی بجائے دو 8 بٹ فارمیٹس میں بھیجتا ہے۔

کنٹرول / حیثیت کا اندراج ایڈریس: کنٹرول / اسٹیٹس رجسٹر ایڈریس کنٹرول اسٹیٹس رجسٹروں کی اجازت دینے کے لئے ہے۔

کنٹرول / اسٹیٹس رجسٹر 1: کنٹرول اسٹیٹس رجسٹر 1 جو RTC ڈیوائس کو قابل بنانے کے لئے استعمال کیا جاتا ہے

کنٹرول / حیثیت کا اندراج 2: یہ مداخلت کو فعال اور غیر فعال کرنے کے لئے استعمال کیا جاتا ہے۔

R / W: اگر پڑھنے اور لکھنے میں تھوڑا سا زیادہ ہے ، تو پڑھنے کا عمل انجام دیا جاتا ہے۔

ALAS: اگر غلام آلہ میں تحریری کارروائی کی جاتی ہے ، تو وصول کنندہ مائکرو قابو پانے والے کو 1 بٹ ACK بھیجتا ہے۔

رک: غلام ڈیوائس میں تحریری کارروائی کی تکمیل کے بعد ، مائکروکونٹرولر غلام بند کو روکنے کی شرط بھیجتا ہے۔

مرحلہ 5: آر ٹی سی پروگرامنگ

ماسٹر سے غلام تک آپریشن لکھیں:

  1. ماسٹر سے غلام تک آغاز کی شرط جاری کریں
  2. غلام پتے کو SDL لائن پر لکھنے کے موڈ میں منتقل کریں
  3. کنٹرول رجسٹر ایڈریس ارسال کریں
  4. کنٹرول / حیثیت رجسٹر 1 قیمت بھیجیں
  5. کنٹرول / حیثیت رجسٹر 2 قدر ارسال کریں
  6. منٹ ، سیکنڈ اور گھنٹوں کی طرح تاریخ بھیجیں
  7. اسٹاپ بٹ بھیجیں

# شامل کریں

sbit SCL = P2 ^ 5
sbit ایس ڈی اے = P2 ^ 6
باطل آغاز ()
باطل میزبان (دستخط شدہ چارٹ)
تاخیر (دستخط شدہ چارٹ)

باطل اہم ()
{

شروع ()
لکھیں (0xA2) // غلام پتہ //
لکھیں (0x00) // کنٹرول رجسٹر ایڈریس //
لکھیں (0x00) // کنٹرول رجسٹر 1 ویلیو //
لکھیں (0x00) // قابو میں regiter2 vlaue //
لکھیں (0x28) // سیکنڈ ویلیو //
لکھیں (0x50) // منٹ ویلیو //
لکھیں (0x02) // گھنٹے کی قیمت //
}

باطل آغاز ()
{

ایس ڈی اے = 1 // ڈیٹا پر عملدرآمد //
ایس سی ایل = 1 // گھڑی اونچی ہے //
تاخیر (100)
ایس ڈی اے = 0 // ڈیٹا بھیجا //
تاخیر (100)
ایس سی ایل = 0 // گھڑی کا سگنل کم ہے //
}
باطل تحریر (دستخط شدہ چار ڈی)
{

دستخط شدہ چار ک ، j = 0 × 80
(k = 0k) کے لئے<8k++)
{
ایس ڈی اے = (ڈی اینڈ جے)
J = j >> 1
ایس سی ایل = 1
تاخیر (4)
ایس سی ایل = 0
}
ایس ڈی اے = 1
ایس سی ایل = 1
تاخیر (2)
c = ایس ڈی اے
تاخیر (2)
ایس سی ایل = 0
}
باطل تاخیر (INT p)
{
سائنڈینٹا ، بی
(a = 0a) کے لئے<255a++) //delay function//
کے لئے (b = 0b)}

غلام سے ماسٹر تک آپریشن پڑھیں:

# شامل کریں
sbit SCL = P2 ^ 5
sbit ایس ڈی اے = P2 ^ 6
باطل آغاز ()
باطل لکھنے (چارٹ پر دستخط)
باطل پڑھیں ()
باطل ایکک ()
باطل تاخیر (دستخط شدہ چارٹ)
باطل اہم ()
{
شروع ()
لکھیں (0xA3) // پڑھنے کے موڈ میں غلام ایڈریس //
پڑھیں ()
ہائے ()
سیکنڈ = قیمت
}
باطل آغاز ()
{

ایس ڈی اے = 1 // ڈیٹا پر عملدرآمد //
ایس سی ایل = 1 // گھڑی اونچی ہے //
تاخیر (100)
ایس ڈی اے = 0 // ڈیٹا بھیجا //
تاخیر (100)
ایس سی ایل = 0 // گھڑی کا سگنل کم ہے //
}
باطل تحریر (دستخط شدہ چار ڈی)
{

دستخط شدہ چار ک ، j = 0 × 80
(k = 0k) کے لئے<8k++)
{
ایس ڈی اے = (ڈی اینڈ جے)
J = j >> 1
ایس سی ایل = 1
تاخیر (4)
ایس سی ایل = 0
}
ایس ڈی اے = 1
ایس سی ایل = 1
تاخیر (2)
c = ایس ڈی اے
تاخیر (2)
ایس سی ایل = 0
}
باطل تاخیر (INT p)
{
سائنڈینٹا ، بی
(a = 0a) کے لئے<255a++) //delay function//
کے لئے (b = 0b)}
باطل پڑھیں ()
{
غیر دستخط شدہ چار جے ، زیڈ = 0 × 00 ، ق = 0 × 80
ایس ڈی اے = 1
(j = 0j) کے لئے<8j++)
{
ایس سی ایل = 1
تاخیر (100)
جھنڈا = ایس ڈی اے
اگر (پرچم == 1)

z = (z)
باطل ایکک ()
{
ایس ڈی اے = 0 // ایس ڈی اے لائن کم // پر جاتا ہے
ایس سی ایل = 1 // گھڑی کم سے کم ہے //
تاخیر (100)
ایس سی ایل = 0
}

8051 مائکروکانٹرولر کے ساتھ آر ٹی سی کے انٹرفیسنگ کے لئے یہ ضروری اقدامات ہیں۔ ان اقدامات کے علاوہ ، اعداد و شمار کی منتقلی اور وصول کرنے کے لئے استعمال ہونے والے ڈیٹا فریموں پر بھی مناسب پروگرامنگ کے ذریعے صارف کی تفہیم کے لئے اس مضمون میں تبادلہ خیال کیا گیا ہے۔ اس تصور کے بارے میں مزید مدد کے لئے آپ نیچے ایک تبصرہ دے سکتے ہیں۔