راسبیری پائی ایک آر ایم آرکیٹیکچر پروسیسر پر مبنی بورڈ ہے جو الیکٹرانک انجینئرز اور شوق پرستوں کے لئے ڈیزائن کیا گیا ہے۔ PI ایک بہت قابل اعتماد پروجیکٹ ڈویلپمنٹ پلیٹ فارم ہے جو اب وہاں موجود ہے۔ پروسیسر کی تیز رفتار اور 1 جی بی ریم کے ساتھ ، پی آئی بہت سارے ہائی پروفائل منصوبوں جیسے امیج پروسیسنگ اور آئی او ٹی کے لئے استعمال کیا جاسکتا ہے۔
ہائی پروفائل منصوبوں میں سے کوئی بھی کام کرنے کے ل one ، PI کے بنیادی افعال کو سمجھنے کی ضرورت ہے۔ ہم ان سبق میں راسبیری پائی کی تمام بنیادی خصوصیات کا احاطہ کریں گے ۔ ہر سبق میں ہم PI کے افعال میں سے ایک پر تبادلہ خیال کریں گے۔ اس راسبیری پائ ٹیوٹوریل سیریز کے اختتام تک ، آپ خود ہی ہائی پروفائل پروجیکٹس انجام دے سکیں گے۔ ذیل میں سبق حاصل کریں:
- راسبیری پائ کے ساتھ آغاز کرنا
- راسبیری پائی کنفیگریشن
- ایل ای ڈی بلنکی
- بٹن انٹرفیسنگ
- PWM جنریشن
- ڈی سی موٹر کو کنٹرول کرنا
- اسٹیپر موٹر کنٹرول
- انٹرفیسنگ شفٹ رجسٹر
- راسبیری پائی اے ڈی سی ٹیوٹوریل
- امدادی موٹر کنٹرول
- کیپسیٹو ٹچ پیڈ
اس ٹیوٹوریل میں ، ہم راسبیری پائ کا استعمال کرتے ہوئے 16x2 LCD ڈسپلے کو کنٹرول کریں گے ۔ ہم ایل سی ڈی کو جی پی آئی او (جنرل مقصد ان پٹ آؤٹ پٹ) سے PI کے پنوں پر مربوط کریں گے تاکہ اس میں کردار دکھائے جاسکیں۔ ہم جی پی آئی او کے ذریعہ ایل سی ڈی کو مناسب احکامات بھیجنے اور اس کی سکرین پر مطلوبہ حروف کو ظاہر کرنے کے لئے ہم PYTHON میں ایک پروگرام لکھیں گے۔ یہ اسکرین سینسر اقدار ، مداخلت کی حیثیت اور وقت کی نمائش کے لئے بھی کام آئے گی۔
مارکیٹ میں طرح طرح کی LCD ہیں۔ گرافک LCD 16x2 LCD سے زیادہ پیچیدہ ہے۔ لہذا یہاں ہم 16x2 LCD ڈسپلے کے لئے جارہے ہیں ، اگر آپ چاہیں تو آپ 16x1 LCD بھی استعمال کرسکتے ہیں۔ 16x2 LCD کل میں 32 حروف، 1 میں 16 ہے سینٹ لائن اور 2 سے 16 ND لائن. JHD162 16x2 LCD ماڈیول کے حامل LCD ہے۔ ہم نے پہلے ہی 8051 ، اے وی آر ، اردوینو وغیرہ کے ساتھ 16x2 LCD انٹرفیس کیا ہے ۔ آپ اس لنک پر عمل کرکے ہمارے 16x2 LCD سے متعلق تمام پراجیکٹ تلاش کرسکتے ہیں۔
ہم آگے جانے سے پہلے PI GPIO کے بارے میں تھوڑی بات کریں گے۔
وہاں ہیں 40 رسبری PI 2 میں GPIO آؤٹ پٹ پنوں. لیکن 40 میں سے صرف 26 GPIO پن (GPIO2 سے GPIO27) پروگرام ہوسکتے ہیں۔ ان پنوں میں سے کچھ خاص کام انجام دیتے ہیں۔ خصوصی GPIO کے ساتھ ، ہمارے پاس 17 GPIO باقی ہیں۔
بورڈ پر + 5V (پن 2 یا 4) اور + 3.3V (پن 1 یا 17) پاور آؤٹ پٹ پن ہیں ، یہ دوسرے ماڈیولز اور سینسر کو مربوط کرنے کے لئے ہیں۔ ہم + 5V ریل کے ذریعے 16 * 2 LCD کو بجلی بنانے جا رہے ہیں ۔ ہم LCD کو + 3.3v کا کنٹرول سگنل بھیج سکتے ہیں لیکن LCD پر کام کرنے کے ل we ہمیں + 5V تک اس کی طاقت کی ضرورت ہے۔ LCD + 3.3V کے ساتھ کام نہیں کرے گا۔
GPIO پنوں اور ان کی موجودہ نتائج کے بارے میں مزید جاننے کے ل go دیکھیں: راسبیری پائ کے ساتھ ایل ای ڈی پلکیں جھپکنا
مطلوبہ اجزاء:
یہاں ہم راسبیری جیسی OS کے ساتھ راسبیری پائی 2 ماڈل بی استعمال کر رہے ہیں ۔ ہارڈویئر اور سافٹ ویئر کی تمام بنیادی ضروریات پر پہلے تبادلہ خیال کیا گیا ہے ، آپ اسے راسبیری پائی تعارف میں تلاش کرسکتے ہیں ، اس کے علاوہ بھی ہماری ضرورت ہے:
- منسلک پن
- 16 * 2 LCD ماڈیول
- 1 کریسٹر (2 ٹکڑے ٹکڑے)
- 10K برتن
- 1000µF کاپاکیٹر
- بریڈ بورڈ
سرکٹ اور ورکنگ وضاحت:
جیسا کہ سرکٹ ڈایاگرام میں دکھایا گیا ہے ، ہمارے پاس LCD ڈسپلے کے ساتھ انٹرفیسڈ راسبیری پائی ہے جس میں PI کے 10 GPIO پنوں کو 16 * 2 LCD کے کنٹرول اور ڈیٹا ٹرانسفر پنوں سے جوڑ کر ہے۔ ہم نے جی پی آئی او پن 21 ، 20 ، 16 ، 12 ، 25 ، 24 ، 23 ، اور 18 کو بائی وائی ٹی ای کے بطور استعمال کیا ہے اور ایل سی ڈی کو ڈیٹا بھیجنے کے لئے 'پورٹ' فنکشن بنایا ہے۔ یہاں جی پی آئی او 21 ایل ایس بی (کم سے کم اہم بٹ) ہے اور جی پی آئی او 18 ایم ایس بی (انتہائی اہم بٹ) ہے۔
16x2 LCD ماڈیول میں 16 پن ہیں ، جن کو پانچ قسموں ، پاور پن ، کنٹراسٹ پن ، کنٹرول پن ، ڈیٹا پن اور بیک لائٹ پنوں میں تقسیم کیا جاسکتا ہے۔ ان کے بارے میں مختصر تفصیل یہ ہے۔
قسم |
پن نہیں |
پن کا نام |
فنکشن |
پاور پن |
1 |
وی ایس ایس |
گراؤنڈ پن ، گراؤنڈ سے منسلک ہے |
2 |
وی ڈی ڈی یا وی سی سی |
وولٹیج پن + 5V |
|
کنٹراسٹ پن |
3 |
V0 یا VEE |
کنٹراسٹ سیٹنگ ، وی سی سی سے متصل متغیر رزسٹر کو پوری طرح سے۔ |
کنٹرول پن |
4 |
RS |
رجسٹر کریں منتخب کریں پن ، RS = 0 کمانڈ وضع ، RS = 1 ڈیٹا موڈ |
5 |
آر ڈبلیو |
پڑھیں / لکھیں پن ، RW = 0 لکھیں موڈ ، آر ڈبلیو = 1 ریڈ موڈ |
|
6 |
ای |
قابل بنائیں ، LCD کو قابل بنانے کیلئے اعلی سے کم نبض کی ضرورت ہے |
|
ڈیٹا پن |
7-14 |
D0-D7 |
LCD یا کمانڈ ہدایات پر ظاہر کرنے کے لئے ڈیٹا پن ، ڈیٹا کو اسٹور کرتا ہے |
بیک لائٹ پن |
15 |
ایل ای ڈی + یا A |
بیک لائٹ + 5V کو طاقت بخشنے کے لئے |
16 |
ایل ای ڈی- یا K |
بیک لائٹ گراؤنڈ |
ہم سختی سے سفارش کرتے ہیں کہ ایل سی ڈی کو اس کے پنوں اور ہیکس کمانڈز کے ساتھ کام کرنے کو سمجھنے کے لئے صرف اس مضمون کو دیکھیں۔
ہم LCD کو ڈیٹا بھیجنے کے عمل پر مختصرا discuss تبادلہ خیال کریں گے:
1. E اعلی ہے (ماڈیول کو چالو کرنا) اور RS کم مقرر ہے (LCD کو بتانا کہ ہم کمانڈ دے رہے ہیں)
2. سکرین کو صاف کرنے کے لئے کمانڈ کے بطور ڈیٹا پورٹ کو 0x01 ویلیو دینا۔
3. E اعلی ہے (ماڈیول کو قابل بنانا) اور RS اونچائی رکھی گئی ہے (LCD کو بتانا کہ ہم ڈیٹا دے رہے ہیں)
4. حروف کے لئے ASCII کوڈ ثابت کرنا ظاہر کرنے کی ضرورت ہے۔
5. ای کم ہے (LCD کو یہ بتانا کہ ہم ڈیٹا بھیجنے میں کام کر رہے ہیں)
6. ایک بار جب یہ ای پن کم ہوجاتا ہے تو ، LCD موصولہ اعداد و شمار پر کارروائی کرتا ہے اور اس کا نتیجہ ظاہر کرتا ہے۔ لہذا یہ پن اعداد و شمار بھیجنے سے پہلے اعلی پر رکھ دیا گیا ہے اور ڈیٹا بھیجنے کے بعد زمین پر نیچے کھینچ لیا جاتا ہے۔
جیسا کہ کہا گیا ہے کہ ہم ایک کے بعد ایک کردار بھیج رہے ہیں۔ حروف ASCII کوڈ طرف LCD کو دیا جاتا ہے (برائے تبادلہ معلومات امریکی معیاری کوڈ). ASCII کوڈوں کا جدول نیچے دکھایا گیا ہے۔ مثال کے طور پر ، ایک کردار "@" دکھانے کے ل we ، ہمیں ایک ہیکساڈیسمل کوڈ "40" بھیجنا ہوگا۔ اگر ہم LCD کو 0x73 ویلیو دیتے ہیں تو وہ "s" دکھائے گی۔ اس طرح ہم " CIRCUITDIGEST " ڈور ظاہر کرنے کے لئے LCD کو مناسب کوڈ بھیج رہے ہیں ۔
پروگرامنگ کی وضاحت:
ایک بار جب ہر چیز سرکٹ ڈایاگرام کے مطابق جڑ جاتی ہے ، ہم PYHTON میں پروگرام لکھنے کے لئے PI آن کر سکتے ہیں ۔
ہم کچھ کمانڈوں کے بارے میں بات کریں گے جو ہم پی ایچ ٹیون پروگرام میں استعمال کرنے جارہے ہیں ،
ہم لائبریری سے GPIO فائل درآمد کرنے جارہے ہیں ، ذیل میں فنکشن ہمیں PI کے GPIO پنوں کو پروگرام کرنے کے قابل بناتا ہے۔ ہم "جی پی آئی او" کا نام بھی "آئی او" رکھ رہے ہیں ، لہذا پروگرام میں جب بھی ہم جی پی آئی او پنوں کا حوالہ دینا چاہیں تو ہم 'IO' کا لفظ استعمال کریں گے۔
RPI.GPIO کو بطور IO درآمد کریں
کبھی کبھی ، جب GPIO پن ، جسے ہم استعمال کرنے کی کوشش کر رہے ہیں ، شاید کچھ دوسرے کام انجام دے رہے ہوں۔ اس صورت میں ، ہم پروگرام کو چلاتے وقت انتباہات وصول کریں گے۔ ذیل میں کمان PI کو انتباہات کو نظر انداز کرنے اور پروگرام کے ساتھ آگے بڑھنے کے لئے کہتی ہے۔
IO.setwarnings (غلط)
ہم PI کے GPIO پنوں کو بورڈ میں پن نمبر کے ذریعہ یا ان کے فنکشن نمبر کے ذریعہ حوالہ دے سکتے ہیں۔ جیسے بورڈ پر 'PIN 29' 'GPIO5' ہے۔ تو ہم یہاں بتاتے ہیں یا تو ہم یہاں '29' یا '5' کے ذریعہ پن کی نمائندگی کریں گے۔
IO.setmode (IO.BCM)
ہم LCD کے ڈیٹا اور کنٹرول پنوں کے ل 10 ، 10 GPIO پنوں کو آؤٹ پٹ پن کے طور پر ترتیب دے رہے ہیں۔
IO.setup (6 ، IO.OUT) IO.setup (22 ، IO.OUT) IO.setup (21 ، IO.OUT) IO.setup (20 ، IO.OUT) IO.setup (16 ، IO.OUT) IO.setup (12 ، IO.OUT) IO.setup (25 ، IO.OUT) IO.setup (24 ، IO.OUT) IO.setup (23 ، IO.OUT) IO.setup (18 ، IO.OUT)
جبکہ 1: کمانڈ کو ہمیشہ کے لئے لوپ کے طور پر استعمال کیا جاتا ہے ، اس کمانڈ کے ساتھ اس لوپ کے اندر موجود بیانات کو مسلسل عمل میں لایا جائے گا۔
دوسرے تمام افعال اور احکامات کو 'تبصرے' کی مدد سے نیچے 'کوڈ' سیکشن میں بیان کیا گیا ہے۔
پروگرام لکھنے اور اس پر عمل درآمد کے بعد ، راسبیری پائی LCD کو ایک ایک کر کے بھیجتا ہے اور LCD اسکرین پر کردار دکھاتا ہے۔