ایک سوئچ کی نگرانی کی حالت (ڈیجیٹل پڑھیں سیریل) - اردوینو مبادیات

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





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

ڈیجیٹل پڑھیں سیریل

یہاں ہم ایک مثال کے ذریعے سیکھتے ہیں کہ آپ USB کے ذریعہ آپ کے اردوینو اور اپنے پی سی میں سیریل مواصلات انجام دے کر سوئچ کی حالت کی نگرانی کس طرح کرسکتے ہیں۔



اپنے آرڈینو بورڈ سے زیادہ کے ل you ، آپ کو درج ذیل بنیادی اشیاء کی ضرورت ہوگی۔

ہارڈ ویئر

ایک لمحاتی سوئچ ، بٹن ، یا پش ٹو آن سوئچ



10 ک ، 1/4 واٹ اوہم مزاحم

بریڈ بورڈ
ہک اپ یا جمپر وائر لنکس۔

سرکٹ آپریشن

آپریشن درج ذیل اقدامات کے ساتھ کیا جاسکتا ہے۔

جمپر تاروں کے 3 ٹکڑے لیں اور اپنے اردوینو بورڈ کے ساتھ باندھ دیں۔ سرخ اور سیاہ دو تاریں بریڈ بورڈ کے کنارے پر دو لمبی عمودی قطار میں جاتی ہیں جو بورڈ کو لے جانے کے لئے سپلائی کی ہڈی بن جاتی ہیں۔ بورڈ میں 5V ڈی سی کی ضرورت ہے۔

تیسری تار ڈیجیٹل پن 2 کو پش ٹو آن سوئچ کی برتری میں سے ایک سے مربوط کرنے کے لئے استعمال ہوتی ہے۔

بٹن کی اس خاص برتری نے پل ک ڈاون 10 ک ریزٹر کے ساتھ منفی سپلائی ریل یا گراؤنڈ سے رابطہ قائم کیا ہے۔ سوئچ کی دوسری مفت لیڈ 5 وولٹ کی فراہمی کے مثبت سے منسلک ہے۔

مذکورہ بالا رابطوں کے ساتھ ، جب دباؤ دیا جاتا ہے تو سوئچ ٹوگل ہوجاتا ہے یا سرکٹ میں دوہری کارروائی کرتا ہے۔

عام طور پر جب سوئچ منقطع پوزیشن میں ہوتا ہے تو ، اس کی دو سائیڈ الگ تھلگ رہتی ہیں ، جیسے پل ڈاون ریزسٹر کے ذریعہ جو پن زمین سے منسلک ہوتا ہے وہ ایک LOW ، یا منطق 0 کی سطح دیتا ہے۔

دبائے ہوئے حالات میں سوئچ ایک لمحہ بہ لمحہ اس کے دونوں سیسوں کا ایک پُل باندھتا ہے ، جیسے اس کے لیڈز کو + 5 وولٹ کا نشانہ بنایا جاتا ہے ، جس میں ایک HIGH ، یا منطق 1 کی سطح پیش کی جاتی ہے۔

باقی چیزوں سے ڈیجیٹل آئی / او پن آؤٹ کو الگ تھلگ کرنے سے ، ایل ای ڈی کو گھاس پھوٹ پڑنے پر مجبور کیا جاسکتا ہے اور بے نقاب چمکنے کا سبب بن سکتا ہے۔ یہ اس حقیقت کی وجہ سے ہے کہ ان پٹ کو کسی چیز کی پیش کش نہیں کی جاتی ہے ، یا اسے 'پھانسی' میں رکھا جاتا ہے - اس کا مطلب یہ ہے کہ یہ کسی بھی مخصوص منطق کے لئے نامزد نہیں ہے ، نہ تو اونچ نیچ ہے اور نہ ہی (+ 5V یا 0V) ، یہی وجہ ہے کہ ہم ملازمت کرتے ہیں سوئچ کے ساتھ پل ڈاون ریزسٹر۔

اسکیمیٹک

ضابطہ کو سمجھنا

ذیل میں دیئے گئے پروگرام میں ، ہم سیٹ اپ فنکشن کے اندر سیریل مواصلات کا آغاز سیکنڈ 9600 بٹس ڈیٹا فی سیکنڈ کے حساب سے کرتے ہیں ، اس کا آغاز ارڈینو بورڈ اور منسلک کمپیوٹر کے درمیان کیا جاتا ہے: سیریل۔بجن (9600)

اگلے مرحلے میں ہم ڈیجیٹل پن 2 کو متحرک کرتے ہیں ، وہ پن جو ان پٹ کے طور پر پش سوئچ کے ساتھ آؤٹ پٹ کے لئے ذمہ دار ہوگا: پن موڈ (2 ، انپٹ) یہ ہمارے 'سیٹ اپ' کو مکمل کرتا ہے ، اب ہم اپنے کوڈ کے اہم حصے میں سفر کرتے ہیں .

یہاں پر پش بٹن دبانے پر ، ہمارے سرکٹ سے 5 وولٹ حاصل کرنے کی اجازت ہے ، جبکہ ان پٹ 10 کلو میٹر ریزٹر کے ذریعہ زمین کے ساتھ جڑ جاتا ہے جب وہ غیر دبیز حالت میں ہوتا ہے۔

مندرجہ بالا یہ ہے کہ ہم کسی ڈیجیٹل ان پٹ کو کہتے ہیں ، جس سے مراد ایسی حالت ہوتی ہے جہاں سوئچ صرف کسی خاص حالت میں ہوسکتی ہے یا تو ریاست (جس میں اردوینو کے ذریعہ '1' ، یا لاجک ہائی) قبول ہوتا ہے یا آف اسٹیٹ (تصور ہوتا ہے) ارڈینو کے ذریعہ بطور '0' ، یا لاجک کم) ، جس میں کسی بھی طرح کی کوئی اور وضاحتی نشست نہیں ہے۔

پروگرام کے مین لوپ میں ہمیں جس بنیادی عمل پر عملدرآمد کرنے کی ضرورت ہے وہ ہے معلومات کو جگہ میں رکھنے کے لئے متغیر کا اطلاق کرنا جو پش بٹن کے ذریعے بھیجا گیا ہے۔

جیسا کہ اوپر یا تو '1' یا '0' کی شکل میں موجود سگنلز کے ساتھ اوپر بحث کی گئی ہے ، ہم یہاں ایک انٹرا ڈیٹا ٹائپ لگاتے ہیں۔ ہم اس متغیر کو سینسر ویلیو کا نام دے سکتے ہیں ، اور ڈیجیٹل پن 2 پر پڑھنے والی ہر اس چیز کے مطابق کرنے کے ل fix اسے ٹھیک کرسکتے ہیں۔ یہ سب کوڈ کی ایک لائن کے ذریعہ قابل حصول ہوجاتے ہیں:

انٹ سینسر ویلیو = ڈیجیٹل ریڈ (2) ایک بار جب اردوینو ان پٹ پڑھ لے تو اسے اعشاریے کی قدر کی شکل میں کمپیوٹر پر دوبارہ پرنٹ کریں۔

اس کوڈ کی اختتامی لائن میں سیریل ڈاٹ پرنٹ () کمانڈ کی مدد سے نافذ کیا جاسکتا ہے: سیریل۔ پرنٹلن (سینسر ویلیو)

اس کے بعد ، جب بھی ارڈینو ڈومین میں سیریل مانیٹر شروع کیا جاتا ہے تو ، ہم پش بٹن کے دوران 0 کی ایک زنجیر کا مشاہدہ کرتے ہیں ، کھلی پوزیشن ہوتی ہے ، اور بٹن بند حالت میں ہونے کی صورت میں زنجیریں 1 کی ہوتی ہیں۔

/*
DigitalReadSerial
Reads a digital input on pin 2, prints the result to the serial monitor
This example code is in the public domain.
*/
// digital pin 2 has a pushbutton attached to it. Give it a name:
int pushButton = 2

// the setup routine runs once when you press reset:
void setup() {
// initialize serial communication at 9600 bits per second:
Serial.begin(9600)
// make the pushbutton's pin an input:
pinMode(pushButton, INPUT)
}
// the loop routine runs over and over again forever:
void loop() {
// read the input pin:
int buttonState = digitalRead(pushButton)
// print out the state of the button:
Serial.println(buttonState)
delay(1) // delay in between reads for stability
}




پچھلا: ٹائمر سرکٹ کے ساتھ اپنی مرضی کے مطابق پانی کے بہاؤ کنٹرولر اگلا: ینالاگ کو ڈیجیٹل میں تبدیل کرنا (ینالاگ پڑھیں سیریل) - اردوینو مبادیات