- مطلوبہ اجزاء:
- گرافیکل LCD:
- گرافیکل LCD پر 8051 کا استعمال کرتے ہوئے ایک تصویر دکھا رہا ہے:
- سرکٹ کی وضاحت:
- پروگرامنگ کی وضاحت:
ہماری روزمرہ کی زندگی میں ، ہم متن ، امیجز اور گرافکس کی نمائش کے لئے بہت ساری قسم کے آلات دیکھتے ہیں۔ ایل سی ڈی الیکٹرانکس میں سب سے مقبول ڈسپلے ڈیوائس میں سے ایک ہے اور زیادہ تر تمام منصوبوں میں استعمال ہوتا ہے جو کسی قسم کی معلومات ظاہر کرتے ہیں۔ الیکٹرانک پروجیکٹس میں بہت سی قسم کی ایل سی ڈی استعمال ہوتی ہیں۔ ہم نے پہلے ہی اپنے بہت سارے پروجیکٹس میں 16 ایکس 2 LCD استعمال کیا ہے اور ارڈینو کے ساتھ TFT LCD بھی استعمال کیا ہے۔ آپ ہمارا 16X2 LCD سے متعلق تمام پروجیکٹ کو اس لنک پر عمل کرکے ڈھونڈ سکتے ہیں ، جس میں 8051 ، اے وی آر ، اردوینو اور بہت کچھ کے ساتھ انٹرفیسنگ بھی شامل ہے ۔
اس ٹیوٹوریل میں ہم گرافک LCD انٹرفیسنگ 8051 مائکروکانٹرولر کے ساتھ کرنے جارہے ہیں ۔ اس پروجیکٹ میں ، ہم گرافیکل LCD (GLCD) پر شبیہہ ڈسپلے کرنے کا طریقہ دکھائیں گے۔
مطلوبہ اجزاء:
- گرافیکل LCD
- AT89c52 8051 مائکروکانٹرولر
- 7805 وولٹیج ریگولیٹر
- 1000 یوپی کاپاکیٹر
- 10 یو ایف کاپاکیٹر
- 10K ریزسٹر
- 10K POT
- کرسٹل آسیلیٹر 12 ایم ایچ
- مربوط تار
- روٹی بورڈ
- برگ سٹرپس لڑکا
- بجلی کی فراہمی
- ایل. ای. ڈی
- 220 اوہم مزاحم
- 1K ریسٹر
گرافیکل LCD:
ایک سادہ 16x2 LCD میں 16 پن ہیں لیکن گرافیکل LCD میں 20 پن ہے۔ پن کی تفصیل اس کے ڈیٹاشیٹ کے مطابق ذیل میں دی گئی ہے۔
پن نمبر | پن کا نام | تفصیل | فنکشن |
1 | وی ایس ایس | زمین | 0 وولٹ |
2 | وی ڈی ڈی | بجلی کی فراہمی | 5 وولٹ |
3 | V0 | LCD متضاد ایڈجسٹمنٹ | |
4 | RS | کمانڈ / ڈیٹا انتخاب رجسٹر | آر ایس = 0: کمانڈ سلیکشن اور آر ایس = 1: ڈیٹا سلیکشن |
5 | آر / ڈبلیو | پڑھیں / لکھیں | R / W = 0: سلیکشن لکھیں اور R / W = 1: سلیکشن پڑھیں |
6 | ای | سگنل کو فعال کریں | |
7 | ڈی بی 0 | ڈیٹا ان پٹ / آؤٹ پٹ پن (DB0-DB7) | 8 بٹ (DB0-DB7) |
8 | ڈی بی 1 | ||
9 | ڈی بی 2 | ||
10 | ڈی بی 3 | ||
11 | ڈی بی 4 | ||
12 | ڈی بی 5 | ||
13 | ڈی بی 6 | ||
14 | ڈی بی 7 | ||
15 | CS1 | چپ منتخب کریں | CS1 = 1 ، آئی سی 1 کے لئے چپ منتخب کریں |
16 | CS2 | چپ منتخب کریں | CS2 = 1 ، آئی سی 2 کیلئے چپ سگنل منتخب کریں |
17 | آر ایس ٹی | ری سیٹ کریں | GLCD کو دوبارہ ترتیب دیں |
18 | VEE | LCD ڈرائیور کیلئے منفی وولٹیج | |
19 | A | پیچھے کی روشنی ایل ای ڈی | 5 وولٹ |
20 | K | پیچھے کی روشنی ایل ای ڈی | زمین |
گرافیکل LCD پر 8051 کا استعمال کرتے ہوئے ایک تصویر دکھا رہا ہے:
گرافیکل LCD پر شبیہہ ظاہر کرنے کے لئے ، پہلے ہمیں اس شبیہہ کو اسمبلی کوڈ میں تبدیل کرنے کی ضرورت ہے ، تاکہ 8051 مائکروکنٹرولر اسے سمجھ سکے اور اسے پڑھ سکے۔ لہذا ہمیں تصویر کو HEX کوڈ میں تبدیل کرنے کے لئے درج ذیل اقدامات پر عمل کرنے کی ضرورت ہے۔
مرحلہ 1: پہلے ہمیں ایک ایسی ایپلی کیشن ڈاؤن لوڈ کرنے کی ضرورت ہے جو شبیہہ (BMP فارمیٹ) کو اسمبلی کوڈ میں تبدیل کرے۔ لہذا اس لنک سے BMP2ASM تصویری تبادلوں کی درخواست ڈاؤن لوڈ کریں ، لنک پر صرف دائیں کلک کریں اور پھر لنک کو محفوظ کریں پر کلک کریں…
مرحلہ 2: اس کے بعد ، وہ تصویر منتخب کریں جسے آپ گرافیکل LCD پر دکھانا چاہتے ہیں اور اسے بی ایم پی میں تبدیل کریں ، (اگر یہ پہلے سے ہی BMP فارمیٹ میں نہیں ہے) ایم ایس پینٹ ، فوٹوشاپ وغیرہ جیسے کسی بھی ایپلی کیشن کا استعمال کرکے یا آپ کو بہت سی آن لائن ویب سائٹ مل سکتی ہے۔ تصویری شکل میں تبدیلی کے ل.۔ ہمارے پاس BMP تصویر نیچے ہے ، جس کا سائز 128x64 ہے:
مرحلہ 3: اب BMP2ASM.zip فائل نکالیں ، جسے ہم نے مرحلہ 1 میں ڈاؤن لوڈ کیا ہے اور اس میں Bmp2asm.exe کھولیں ، اور BMP تصویر منتخب کریں ۔
مرحلہ 4: اب BMP2ASM ایپلی کیشن ونڈو میں "کنورٹ" دبائیں۔
مرحلہ 5: پھر پیدا شدہ کوڈ کو کاپی کریں اور کییل یوویژن میں 8051 کے پروگرام میں پیسٹ کریں۔ کچھ تبدیلیاں کریں اور کوڈ مرتب کریں۔
اب آپ کا کوڈ 8051 مائکروکانٹرولر میں اپ لوڈ کرنے کے لئے تیار ہے۔
سرکٹ کی وضاحت:
گرافیکل ایل سی ڈی سے انٹرفیسنگ 8051 مائکروکونٹرولر کے لئے سرکٹ کنکشن آسان اور قریب قریب 16x2 LCD کو 8051 سے منسلک کرنے کی طرح ہے۔ لیکن 16x2 LCD میں 16 پن ہیں اور GLCD میں 20 پن ہے۔
ایک 10K برتن GLCD میں سیٹ کے برعکس کے لئے استعمال کیا جاتا ہے۔ جی ایل سی ڈی آر ایس ، آر / ڈبلیو اور ای کے کنٹرول پنز 89C52 پن نمبر P1.0 ، P1.1 اور P1.2 سے براہ راست جڑے ہوئے ہیں ۔ چپ منتخب پنوں CS1 اور LCD کے CS2 بالترتیب پن P1.3 اور P1.4 سے جڑے ہوئے ہیں۔ ڈیٹا پنوں DB0-DB7 PORT P2 پر براہ راست جڑے ہوئے ہیں۔ ایک 7805 وولٹیج ریگولیٹر باقاعدگی سے 5 وولٹ کی فراہمی کے لئے استعمال کیا جاتا ہے۔ مظاہرے کی ویڈیو میں ، میں نے ارڈینو بجلی کی فراہمی کا استعمال کیا ہے۔
پروگرامنگ کی وضاحت:
سب سے پہلے ، ہم پروگرام میں مطلوبہ ہیڈر فائلیں شامل کرتے ہیں اور جی ایل سی ڈی کے کنٹرول اور ڈیٹا پن کے لئے بٹس کی وضاحت کرتے ہیں۔
# شامل کریں
اس کے بعد ، ہم نے ایک تاخیر کا فنکشن تشکیل دیا ہے۔
باطل تاخیر (int itime) i int i، j؛ (i = 0؛ i) کیلئے
فنکشن باطل lcd_disp_on () ڈسپلے کو آن کرنے کے لئے استعمال کیا جاتا ہے۔
فنکشن باطل سیٹکورسوری (انٹ یٹ) جی ایل سی ڈی میں کالم ترتیب دینے کے لئے تشکیل دیا گیا ہے اور جی ایل سی ڈی پر صفحہ ترتیب دینے کے لئے فنکشن باطل سیٹ کرسرس (انٹ ایکس) تشکیل دیا گیا ہے۔ کوڈ سیکشن کے نیچے مکمل کوڈ فائل دی گئی ہے۔
کالم اور پیج کو ترتیب دینے کے بعد ، ہم نے GLCD کو کمانڈ اور ڈیٹا بھیجنے کے لئے ایک فنکشن لکھا ہے۔
باطل ایل سی ڈی پرنٹ (چار ڈیٹ ، انٹ سائز) {دستخط شدہ انٹ (i = 0؛ i) کیلئے
میں باطل اہم () تقریب، ہم GLCD صاف کر دیا اور اس کے بعد مقرر کالم اور پیج ہے. اس کے بعد ، باطل ایل سی ڈی پرنٹ (چار ڈاٹ ، انٹ سائز) فنکشن استعمال کرکے ڈی سی ڈی کو ایل سی ڈی بھیجیں ۔
باطل اہم () x انٹ ایکس ، y؛ پی 3 = 0 ایکس ایف؛ جبکہ (1) c lcdclear ()؛ (y = 0؛ y <8؛ y ++) {کے لئے (x = 0؛ x <128؛ x ++) c lcd_disp_on ()؛ سیٹ کرسرس (y)؛ سیٹ کرسرے (x)؛ ایل سی ڈی پرنٹ (تصویری ، ایکس)؛ }}…………………..
کوڈ کا بہاؤ:
- پہلے جب ہم سسٹم کو طاقتور بناتے ہیں تو ، پروگرام GLCD کو صاف کرتا ہے اور ڈسپلے کو آن کر دیتا ہے۔
- پھر کالم پر کرسر مقرر کریں ، جہاں سے ہم ڈیٹا لکھنا چاہتے ہیں۔
- پھر صفحے پر کرسر سیٹ کریں ، جہاں سے ہم ڈیٹا لکھنا چاہتے ہیں۔
- اب پروگرام 128X8 ٹائم تک ایک ایک کرکے منتخب کردہ مقام پر ڈیٹا بھیجتا ہے۔ کیونکہ جی ایل سی ڈی کے 8 صفحات اور 128 کالم ہیں۔