- مطلوبہ مواد:
- مختصر انٹرو 16 × 2 ڈاٹ میٹرکس LCD ڈسپلے:
- سرکٹ ڈایاگرام اور کنکشن:
- پروگرامنگ MSP430 ینجیگیا کا استعمال کرتے ہوئے LCD کے لئے:
- MSP430G2 کے ساتھ 16x2 LCD:
یہ سبق آموز ترتیب کے سلسلے میں تیسرا سبق ہے جس میں ہم انرجیہ آئی ڈی ای کا استعمال کرتے ہوئے ایم ایس پی 430 جی 2 لانچ پیڈ کو پروگرام کرنا سیکھ رہے ہیں۔ ہمارے پچھلے سبق میں ، ہم نے اپنے ایم ایس پی بورڈ میں ڈیجیٹل ان پٹ اور آؤٹ پٹ پنوں کو کس طرح کنٹرول کرنا سیکھا۔ اس ٹیوٹوریل میں ، ہم بورڈ کے ساتھ LCD انٹرفیس کرنے کا طریقہ سیکھیں گے تاکہ ہم مفید معلومات ظاہر کرسکیں۔
ہم اس پروجیکٹ میں جو LCD استعمال کررہے ہیں وہ عام طور پر استعمال شدہ 16 × 2 ڈاٹ میٹرکس LCD ڈسپلے ایکان الفانومریٹک ڈسپلےز ہے۔ ہم میں سے زیادہ تر عوامی پی سی او یا الیکٹرانکس کے دوسرے منصوبوں کے ذریعہ اس میں آچکے ہوں گے۔ اس طرح کا ایک ڈسپلے ہمارے مستقبل کے سبق کے لئے اعداد و شمار اور دیگر ڈیبگنگ معلومات کو ظاہر کرنے کے لئے بہت کارآمد ہوگا۔ دستیاب لائبریری کی بدولت اس LCD کو MSP430 کے ساتھ انٹرفیس کرنا بہت آسان ہے۔ تو میں ڈوبکی !!
مطلوبہ مواد:
- ٹیکساس آلات سے MSP430G2 لانچ پیڈ
- 16 × 2 ڈاٹ میٹرکس LCD ڈسپلے
- مربوط تاروں
- انرجیہ IDE
مختصر انٹرو 16 × 2 ڈاٹ میٹرکس LCD ڈسپلے:
جیسا کہ پہلے بتایا گیا ہے کہ اینرجیہ آئی ڈی ایک خوبصورت لائبریری فراہم کرتی ہے جو کیک کا ایک ٹکڑا بناتا ہے لہذا ڈسپلے کے ماڈیول کے بارے میں کچھ جاننا لازمی نہیں ہے۔ لیکن ، کیا یہ ظاہر کرنا دلچسپ نہیں ہوگا کہ ہم کیا استعمال کر رہے ہیں !!
نام 16 × 2 سے ظاہر ہوتا ہے کہ ڈسپلے میں 16 کالم اور 2 قطاریں ہیں ، جو مل کر (16 * 2) 32 خانوں کی تشکیل کرتی ہیں۔ نیچے دی گئی تصویر میں ایک سنگل خانہ کچھ ایسا ہی نظر آئے گا
ایک ہی باکس میں 40 قطاریں (ڈاٹ) ہوتی ہیں جس کے میٹرکس آرڈر ہوتے ہیں جس میں 5 قطار اور 8 کالم ہوتے ہیں ، یہ 40 پکسلز ایک ساتھ مل کر ایک کردار بناتے ہیں۔ اسی طرح ، تمام خانوں کا استعمال کرتے ہوئے 32 حروف کو ظاہر کیا جاسکتا ہے۔ اب پن آؤٹ پر ایک نظر ڈالتے ہیں۔
LCD میں کل 16 پن ہیں ، جیسا کہ اوپر دکھایا گیا ہے ، ان کو چار گروپوں میں درجہ بندی کیا جاسکتا ہے جیسا کہ مندرجہ ذیل ہیں
ماخذ پن (1 ، 2 اور 3): یہ پن ڈسپلے کے ل the طاقت اور اس کے برعکس کی سطح کا ذریعہ ہیں
کنٹرول پن (4 ، 5 اور 6): یہ پن LCD انٹرفیسنگ آایسی میں رجسٹرز کو سیٹ / کنٹرول کرتے ہیں (مزید یہ نیچے دیئے گئے لنک میں پایا جاسکتا ہے)
ڈیٹا / کمانڈ پن (7 سے 14): یہ پن ان معلومات فراہم کرتے ہیں کہ LCD پر کس معلومات کو ظاہر کرنا چاہئے۔
ایل ای ڈی پن (15 اور 16): ان پنوں کو ضرورت پڑنے پر ایل سی ڈی کے بیک لائٹ کو چمکانے کے لئے استعمال کیا جاتا ہے (اختیاری)۔
اگر آپ ان LCD ڈسپلے کو اس LCD آرٹیکل کے بارے میں مزید معلومات حاصل کرنا چاہتے ہیں تو ان 16 پنوں میں سے ، صرف 10 پنوں کو LCD کے مناسب کام کے ل used لازمی طور پر استعمال کرنا ہے۔
سرکٹ ڈایاگرام اور کنکشن:
MSP430G2 کے ساتھ 16 × 2 ڈاٹ میٹرکس LCD ڈسپلے کو انٹرفیس کرنے کے لئے مکمل سرکٹ ڈایاگرام ذیل میں دکھایا گیا ہے۔
ان دونوں میں مداخلت کرتے ہوئے ایک بڑی رکاوٹ ان کے آپریٹنگ وولٹیجز ہیں۔ LCD ڈسپلے میں آپریٹنگ وولٹیج + 5V ہے جبکہ MSP صرف 3.6V کے ساتھ چلتا ہے ۔ ہمارے لئے خوش قسمت LCD انٹرفیس IC (HD44780U) کا ڈیٹا پن 2.7V سے 5.5V کا وسیع آپریٹنگ وولٹیج ہے۔ لہذا ہمیں صرف LCD کے Vdd (پن 2) کے بارے میں فکر کرنے کی ضرورت ہے جبکہ ڈیٹا پن بھی 3.6V کے ساتھ کام کرسکتے ہیں۔
MSP430G2 بورڈ پہلے سے طے شدہ طور پر آپ کو + 5V پن نہیں دیتا ہے ، لیکن ہم USB پورٹ کا استعمال کرتے ہوئے MSP430 سے + 5V حاصل کرنے کے لئے ایک چھوٹا سا ہیک کرسکتے ہیں ۔ اگر آپ USB پورٹ کے قریب قریب سے جائزہ لیں گے تو آپ کو TP1 نامی ٹرمینل مل سکتا ہے ، یہ ٹرمینل ہمیں +5v دے گا۔ ہمیں صرف ایک چھوٹا مرد ہیڈر پن ڈالنا ہے جیسا کہ ذیل میں دکھایا گیا ہے تاکہ ہم اسے اپنے LCD ڈسپلے سے مربوط کرسکیں۔
نوٹ: اس 5V پن سے 50mA سے زیادہ استعمال کرنے والے بوجھ کو مت مربوط کریں یہ آپ کے USB پورٹ کو بھون سکتا ہے۔
اگر آپ سولڈرنگ میں دلچسپی نہیں رکھتے ہیں تو کوئی بھی 5V ریگولیٹڈ سپلائی استعمال کریں اور ایل سی ڈی کو طاقت دیں ، اس معاملے میں ، یقینی بنائیں کہ آپ اپنی بجلی کی فراہمی کی زمین کو ایم ایس پی بورڈ کی زمین سے جوڑ دیتے ہیں۔
ایک بار جب آپ دوسرے پنوں کو مربوط کرنے والے +5V پن سے کام کر لیتے ہیں تو یہ کافی سیدھے ہوتے ہیں۔ اب جب کہ ہمارا ہارڈ ویئر تیار ہے ، آئیے سافٹ ویئر کے حصے پر چلیں۔
پروگرامنگ MSP430 ینجیگیا کا استعمال کرتے ہوئے LCD کے لئے:
اس صفحے کے آخر میں LCD ڈسپلے کے ساتھ MSP430G2553 کو انٹرفیس کرنے کا مکمل پروگرام دیا گیا ہے۔ کوڈ مرتب ، اپ لوڈ اور اس طرح استعمال کیا جاسکتا ہے۔ مندرجہ ذیل پیراگراف میں ، میں یہ بتاؤں گا کہ پروگرام کس طرح کام کرتا ہے۔
وضاحت سے آگے بڑھنے سے پہلے ، ہمیں ان پنوں کا ایک نوٹ بنانا ہوگا جو ہم استعمال کررہے ہیں۔ اگر آپ اوپر سرکٹ ڈایاگرام دیکھیں اور نیچے MSP430 پن آؤٹ آریگرام دیکھیں
آپ یہ نتیجہ اخذ کرسکتے ہیں کہ ہم نے LCD کو مندرجہ ذیل جدول کے مطابق مربوط کیا ہے
LCD پن کا نام |
سے جڑا ہوا |
Vss |
زمین |
وی ڈی ڈی |
+ 5V USB پن |
روپے |
ایم ایس پی کا پن 2 |
آر / ڈبلیو |
زمین |
فعال |
ایم ایس پی کا پن 3 |
ڈی 4 |
ایم ایس پی کا پن 4 |
ڈی 5 |
ایم ایس پی کا پن 5 |
ڈی 6 |
ایم ایس پی کا پن 6 |
ڈی 7 |
ایم ایس پی کا پن 7 |
اس کو ذہن میں رکھتے ہوئے آئیے اپنے پروگرام میں استعمال ہونے والے LCD پنوں کی وضاحت شروع کریں ۔ ہم ہر پن کا نام زیادہ معنی خیز نام کے ساتھ دیں گے تاکہ ہم اسے بعد میں آسانی سے استعمال کرسکیں۔
# ڈیفائن آر ایس 2 # ڈیفائن این 3 # ڈیفائن ڈی 4 4 # ڈیفائن ڈی 5 5 # ڈیفائن ڈی 6 6 # ڈیفائن ڈی 7 7
اس کا سیدھا مطلب ہے کہ پن 2 پر کال کرنے کے بجائے میں اسے اس کے بعد آر ایس کے طور پر حوالہ دے سکتا ہوں ، اسی طرح تمام 6 پنوں کے ل.۔
اگلے مرحلے میں LCD لائبریری کو شامل کرنا ہوگا ۔ جب آپ نے انرجیہ IDE انسٹال کیا تھا تو یہ لائبریری خود بخود انسٹال ہوجاتی۔ تو صرف مندرجہ ذیل لائن کا استعمال کرکے اسے شامل کریں
# شامل کریں
اگلے مرحلے میں ان پنوں کا ذکر کرنا ہے جن سے LCD منسلک ہے ، کیوں کہ ہم نے پہلے ہی # تعریف کا استعمال کرتے ہوئے اس کا نام لیا ہے ، اب ہم صرف LCD پنوں کے ناموں کا ذکر کرسکتے ہیں۔ یقینی بنائیں کہ اسی حکم کی تعمیل کی گئی ہے۔
لیکویڈ کرسٹل ایل سی ڈی (آر ایس ، این ، ڈی 4 ، ڈی 5 ، ڈی 6 ، ڈی 7)؛
اب ہم باطل سیٹ اپ () فنکشن میں چلیں ۔ سائز اور نوعیت میں مختلف قسم کی LCD ڈسپلے ہوتی ہیں ، ایک جو ہم استعمال کررہے ہیں وہ 16 * 2 ہے لہذا اس کی وضاحت کریں کہ ہمارے پروگرام میں
lcd.begin (16 ، 2)؛
LCD پر کچھ پرنٹ کرنے کے لئے ہمیں پروگرام میں دو چیزوں کا ذکر کرنا ہوگا۔ ایک متن کا مقام ہے جس کا ذکر lcd.setCursor () لائن کا استعمال کرتے ہوئے کیا جاسکتا ہے اور دوسرا وہ مواد ہے جس کا ذکر lcd.print () کر سکتے ہیں ۔ اس لائن میں ہم کرسر کو 1 ریں صف اور 1 ST کالم پر سیٹ کررہے ہیں ۔
lcd.setCursor (0،0)؛
اسی طرح ، ہم بھی کر سکتے ہیں
lcd.setCursor (0 ، 1)؛ // کرسر کو پہلے کالم کو دوسری قطار میں سیٹ کریں
اس طرح لکھنے کے بعد وائٹ بورڈ کو مٹانے کی طرح ، ایل سی ڈی بھی ایک بار جب کچھ لکھا جاتا ہے تو اسے مٹا دینا چاہئے ۔ یہ نیچے کی لائن کا استعمال کرکے کیا جاسکتا ہے
lcd.clear ()؛
تو مکمل باطل سیٹ اپ () فنکشن کچھ اس طرح نظر آئے گا۔
باطل سیٹ اپ () c lcd.begin (16 ، 2)؛ // ہم 16 * 2 LCD ڈسپلے lcd.setCursor (0،0) استعمال کر رہے ہیں۔ // کرسر کو پہلی صف اول کالم lcd.print پر رکھیں ("MSP430G2553")؛ // ایک تعارف پیغام ڈسپلے کریں lcd.setCursor (0، 1)؛ // کرسر کو پہلی کالم دوسری قطار میں lcd.print ("- سرکیٹ ڈائیجسٹ") سیٹ کریں۔ // تعارف کے پیغام میں تاخیر ظاہر کریں (2000)؛ // معلومات ظاہر کرنے کے لئے ڈسپلے کا انتظار کریں lcd.clear ()؛ // پھر اسے صاف کریں}
اگلا ، ہمارے باطل لوپ () فنکشن کے اندر ، آئیے ہر 500ms کے لئے ایک نمبر بڑھاتے رہیں اور LCD میں نمبر ڈسپلے کریں۔ یہ نمبر ٹیسٹ کرتا ہے اور 1 کے تحت شروع کیا گیا ہے جیسا کہ نیچے دکھایا گیا ہے
انٹ ٹیسٹ = 1؛
تاخیر پیدا کرنے کے لئے ہم ان بلٹ فنکشن میں تاخیر () استعمال کرسکتے ہیں ۔ ہمیں ذکر کرنا ہوگا کہ ہمیں ہونے میں تاخیر کا کتنا وقت درکار ہے۔ ہمارے معاملے میں ، میں ذیل میں دکھایا گیا ہے کے طور پر 500ms استعمال کیا ہے
تاخیر (500)؛
متغیر میں اضافہ ٹیسٹ ++ کے ذریعہ کیا جاسکتا ہے ، باقی سب کی وضاحت پہلے ہی کردی گئی ہے۔ مکمل ضابطہ اندر باطل لوپ ذیل میں دکھایا جاتا ہے
باطل لوپ () c lcd.print ("MSP کے ساتھ LCD")؛ // ایک تعارف پیغام ڈسپلے کریں lcd.setCursor (0، 1)؛ // کرسر کو کالم 0 ، لائن 1 lcd.print (test) پر سیٹ کریں۔ // تعارف کے پیغام میں تاخیر ظاہر کریں (500)؛ lcd.clear ()؛ // پھر اس کی جانچ کو صاف کریں ++؛ }
MSP430G2 کے ساتھ 16x2 LCD:
ایک بار جب آپ کا ہارڈویئر اور کوڈ تیار ہوجائے تو ، بس اپنے بورڈ کو کمپیوٹر سے جوڑیں اور کوڈ اپلوڈ کریں جیسا کہ ہم نے سبق میں لکھا ہے۔ ایک بار کوڈ اپ لوڈ ہونے کے بعد آپ کو مندرجہ ذیل ڈسپلے دیکھنا چاہئے۔
دو سیکنڈ کے بعد ، ڈسپلے اسکرین سیٹ اپ سے لوپ میں تبدیل ہوجائے گی اور اسکرین پر متغیر اور ڈسپلے کو بڑھانا شروع کردے گی جیسا کہ ذیل کی تصویر دکھائی گئی ہے۔
مکمل کام ویڈیو میں دیکھا جا سکتا ہے ذیل میں. آگے بڑھیں اور LCD میں کیا ظاہر ہورہا ہے اسے تبدیل کرنے کی کوشش کریں اور اس کے ساتھ کھیلیں۔ امید ہے کہ آپ ٹیوٹوریل کو سمجھ گئے ہوں گے اور اس کے بارے میں کچھ مفید شکل سیکھیں گے اگر آپ کو کوئی شبہات ہیں تو انہیں نیچے تبصرہ سیکشن میں چھوڑ دیں یا فورمز کا استعمال کریں۔ آئیے ایک اور سبق میں ملیں۔