- مطلوبہ مواد:
- آر ٹی سی کیا ہے؟
- DS3231 RTC کو MSP430 کے ساتھ مربوط کرنا:
- پروگرامنگ MSP430 RTC ماڈیول کے لئے:
اس سبق میں ہم RSP ماڈیول DS3231 کو MSP430 کے ساتھ انٹرفیس کرکے ڈیجیٹل گھڑی بنائیں گے اور 16x2 LCD پر وقت اور تاریخ ڈسپلے کریں گے۔ MSP-EXP430G2 ایک ترقیاتی ٹول ارف لانچ پیڈ ہے جو ٹیکس کے سازو سامان کے ذریعہ فراہم کیا جاتا ہے تاکہ وہ اپنے مائکروکانٹرولرز کو استعمال کرنے کے طریقوں کو سیکھنے اور اس پر عمل کرنے کے ل. فراہم کرسکیں۔ یہ بورڈ MSP430 ویلیو لائن زمرے کے تحت آتا ہے جہاں ہم MSP430 سیریز کے تمام مائکروکانٹرولرز پروگرام کر سکتے ہیں۔ اگر آپ ایم ایس پی میں نئے ہیں تو ایم ایس پی 4 t30 سبق کے ساتھ ہمارا آغاز چیک کریں۔
مطلوبہ مواد:
- ایم ایس پی 430
- DS3231 RTC ماڈیول
- POT -10k
- LCD ماڈیول 16 * 2
- مربوط تاروں
- بریڈ بورڈ
آر ٹی سی کیا ہے؟
DS3231 ایک RTC (ریئل ٹائم گھڑی) ماڈیول ہے۔ اس کا استعمال بیشتر الیکٹرانکس منصوبوں کی تاریخ اور وقت کو برقرار رکھنے کے لئے کیا جاتا ہے۔ اس ماڈیول کی اپنی کوئین سیل بجلی کی فراہمی ہے جس کا استعمال کرتے ہوئے وہ تاریخ اور وقت کو برقرار رکھتا ہے یہاں تک کہ جب مرکزی طاقت کو ہٹا دیا جاتا ہے یا ایم سی یو کسی سخت ری سیٹ سے گزرتا ہے۔ لہذا ایک بار جب ہم اس ماڈیول میں تاریخ اور وقت طے کرتے ہیں تو وہ ہمیشہ اس کا ٹریک رکھتا ہے۔ آر ٹی سی کے کئی قسم کے آئی سی دستیاب ہیں جیسے DS1307 ، DS3231 وغیرہ۔
اس سے پہلے ہم ذیل میں پروجیکٹس میں دوسرے مائکروکانٹرولرز کے ساتھ آر ٹی سی کا استعمال کرچکے ہیں۔
نوٹ: اس ماڈیول کو پہلی بار استعمال کرتے وقت آپ کو تاریخ اور وقت مقرر کرنا ہوگا۔ آپ آر ٹی سی آئی سی DS1307 بھی استعمال کرسکتے ہیں ، اس سے قبل ہم ارڈینو کے ساتھ DS1307 استعمال کرچکے ہیں۔
DS3231 RTC کو MSP430 کے ساتھ مربوط کرنا:
ایم ایس پی 430 مائکروکنٹرولر پر مبنی ڈیجیٹل کلاک کیلئے سرکٹ ڈایاگرام ذیل میں دیا گیا ہے۔ جیسا کہ پہلے بتایا گیا ہے کہ DS3231 آئی 2 سی مواصلات کی مدد سے کام کرتا ہے لہذا اس میں سیریل کلاک (ایس سی ایل) اور سیریل ڈیٹا (ایس ڈی اے) پن ہوگا جس کو ہمارے ایم ایس پی 430 پر آئی 2 سی پنوں سے جوڑنا ہوگا جو پن 9 (پن 2.1) ہے۔ ، ایس سی ایل) اور پن 10 (پن 2.2 ، ایس ڈی اے)۔
MSP430 3.3V Vcc دیتا ہے لیکن ہمیں LCD اور RTC ماڈیول کے ساتھ مربوط کرنے کے لئے 5V کی ضرورت ہے۔ لہذا ، ہم ایک ہیک استعمال کریں گے ، وہاں ایک جمپر دستیاب ہے جس کا نام TP1 ہے جس میں USB کیبل کنیکٹر کے قریب ہے۔ آپ وہاں سے 5V لے سکتے ہیں۔
سرکٹ ڈایاگرام:
پروگرامنگ MSP430 RTC ماڈیول کے لئے:
یہاں ہم پروگرامنگ کے لئے انرجیئا IDE استعمال کررہے ہیں۔ یہ اردوینو IDE کی طرح اور استعمال میں آسان ہے۔ اگر آپ ایم ایس پی اور انرجیئیا کے لئے نئے ہیں تو ، ایمرجنسی آئی ڈی ای کا استعمال کرتے ہوئے ایم ایس پی کے ساتھ شروعات کریں۔ آر ٹی سی ماڈیول کو انٹرفیس کرنے کے لئے ہمیں اس بورڈ کے لئے لائبریری کی ضرورت ہے۔ اس لنک سے آر ٹی سی لائبریری ڈاؤن لوڈ کریں اور انسٹال کریں۔
ہمیں وائر (I2C مواصلت کے لئے استعمال شدہ) اور مائع کرسٹل لائبریریوں کی بھی ضرورت ہے جو ایورجیہ IDE میں پہلے سے نصب ہیں۔
اس مضمون کے آخر میں اس ایم ایس پی 430 ڈیجیٹل گھڑی کا مکمل کوڈ دیا گیا ہے۔ کوڈ آسان اور آسانی سے قابل فہم ہے۔ یہاں ہم اس کے کچھ حص explaے بیان کررہے ہیں۔
پہلے ، ہمیں ضروری لائبریریوں کو شامل کرنا ہے۔
لائبریری کے نیچے آر ٹی سی ماڈیول اور ایم ایس پی 430 کے مابین I2C مواصلات کے لئے ہے۔ ایس ڈی اے اور ایس سی کے پنوں کی پہلے سے ہی اس لائبریری میں تعریف کی گئی ہے ، لہذا ہمیں ان پنوں کو الگ سے ڈیکلئیر کرنے کی ضرورت نہیں ہے۔
# شامل کریں
پھر ہم نے RTC گھڑی کے لئے RTClib.h لائبریری اور LCD افعال کے لئے LiquidCrystal.h شامل کیا ہے۔
# شامل کریں "RTClib.h" # شامل کریں
اس کے بعد ، ہمیں اپنے آر ٹی سی ماڈیول کو شروع کرنے کے ل an ایک مثال بنانی ہوگی۔
RTC_DS3231 rtc؛
اس کے بعد 7 سائز کا ایک صف بنائیں اور اس میں نام کے ساتھ سات دن محفوظ کریں۔
چار دنآپ ویک = {"اتوار" ، "پیر" ، "منگل" ، "بدھ" ، "جمعرات" ، "جمعہ" ، "ہفتہ"}؛
LCD ڈسپلے کے ذریعہ استعمال ہونے والے MSP430 کا پنوں کا اعلان یہاں ہے: (RS (P2.0)، EN (P1.4)، D4 (P1.5)، D5 (P2.3)، D6 (P2.4)، D7 (P2.5))
لیکویڈ کرسٹل ایل سی ڈی (8 ، 6 ، 7،11،12،13)؛
میں باطل سیٹ اپ () ، ہم LCD اسکرین اور آر ٹی سی انٹرفیس سے initialized اور ڈسپلے کے طول و عرض (چوڑائی اور اونچائی) وضاحت، کیا ہے شروع ()
کسی دوسرے کی لائبریری کمانڈز سے پہلے کہا جا کرنے کی ضرورت ہے.
باطل سیٹ اپ () c lcd.begin (16 ، 2)؛ lcd.setCursor (3،0)؛ lcd.print ("RTC گھڑی")؛ تاخیر (3000)؛ lcd.clear ()؛ rtc.begin ()؛ // rtc.adjust (تاریخ وقت (F (__ DATE__)، F (__ TIME__)))؛ }
اب ، ڈسپلے پر دکھائے جانے والا وقت صحیح ہے لیکن ایک مسئلہ ہے ، جب بھی آپ اپنے مائکروقانٹرولر کو دوبارہ اسٹارٹ کریں / ری سیٹ کریں گے ، LCD آپ کوڈ اپ لوڈ کرنے کے وقت کو دکھائے گا۔ اس کی وجہ یہ ہے کہ rtc.adjust () فنکشن نے آپ کے کمپیوٹر کا وقت محفوظ کرلیا ہے ، لہذا جب آپ دوبارہ سیٹ کریں گے تو اس وقت سے شروع ہوجاتا ہے۔
اس مسئلے کو حل کرنے کے لئے پہلے rtc.adjust () فنکشن کو بغیر کسی حالت کے اپلوڈ کریں ۔ پھر ، فوری طور پر اسی لائن پر تبصرہ کریں اور دوبارہ پروگرام اپ لوڈ کریں۔ اب ، آپ کی تاریخ اور وقت طے ہوچکے ہیں اور مائکروکنٹرولر کو دوبارہ ترتیب دینے سے متاثر نہیں ہوں گے۔
میں لوپ تقریب ہم نامی پیش وضاحتی متغیر میں آر ٹی سی ماڈیول اور اسٹور سے تاریخ اور وقت لگتا ہے اب اور استعمال کرتے ہوئے LCD پر ظاہر lcd.print () تقریب.
باطل لوپ () { ڈیٹ ٹائم اب = rtc. अब ()؛ lcd.clear ()؛ lcd.setCursor (3،0)؛ lcd.print (now.day ()، DEC)؛ lcd.print ("/")؛…. …….
مکمل کوڈ اور ویڈیو ذیل میں دیا گیا ہے۔