Arduino UNO अपने डिजिटल पिन का उपयोग करके वास्तविक दुनिया के साथ बातचीत करने की क्षमता प्रदान करता है। आप इन पिनों का उपयोग एलईडी, मोटर्स, और रिले जैसे उपकरणों को नियंत्रित करने के लिए कर सकते हैं, या सेंसर, बटन और स्विच से इनपुट पढ़ सकते हैं। यह ट्यूटोरियल बताएगा कि डिजिटल पिन कैसे सेट करें, पढ़ें और लिखें संचालन करें, और उपयोग करें if
आपकी परियोजनाओं में तर्क-आधारित निर्णयों के लिए कथन।
आपको क्या चाहिए
- USB केबल के साथ Arduino Uno
- एलईडी और एक 220-ओम रोकनेवाला (आउटपुट उदाहरण के लिए)
- पुश बटन और एक 10k-ohm रोकनेवाला (इनपुट उदाहरणों के लिए)
- ब्रेडबोर्ड और जम्पर तार
- Arduino IDE के साथ एक कंप्यूटर स्थापित
चरण 1: डिजिटल पिन स्थापित करना
अंकीय पिन मोड
Arduino Uno में 14 डिजिटल पिन (D0-D13) हैं। इन पिनों को कॉन्फ़िगर किया जा सकता है:
- इनपुट: सेंसर या स्विच से सिग्नल पढ़ने के लिए।
- आउटपुट: एलईडी, मोटर्स, या अन्य एक्ट्यूएटर्स को नियंत्रित करने के लिए।
उपयोग pinMode()
में एक पिन के मोड को सेट करने के लिए कार्य करें setup()
समारोह:
pinMode(pinNumber, mode);
-
pinNumber
: वह पिन जिसे आप कॉन्फ़िगर करना चाहते हैं (जैसे, 2, 3, आदि)। -
mode
: दोनों में से एकINPUT
,INPUT_PULLUP
, याOUTPUT
.
चरण 2: एक डिजिटल पिन पर लिखना
आप लिखकर उपकरणों को नियंत्रित कर सकते हैं HIGH
या LOW
एक आउटपुट पिन का उपयोग करके digitalWrite()
समारोह:
digitalWrite(pinNumber, value);
-
value
: दोनों में से एकHIGH
(5V) याLOW
(0V)।
उदाहरण: एक एलईडी ब्लिंकिंग
यहां बताया गया है कि पिन 13 से जुड़े एलईडी को कैसे ब्लिंक करें:
#define ledPin 13 // LED connected to pin 13
void setup() {
pinMode(ledPin, OUTPUT); // Set pin 13 as an output
}
void loop() {
digitalWrite(ledPin, HIGH); // Turn the LED on
delay(1000); // Wait for 1 second
digitalWrite(ledPin, LOW); // Turn the LED off
delay(1000); // Wait for 1 second
}
चरण 3: एक डिजिटल पिन से पढ़ना
एक पिन की स्थिति पढ़ने के लिए, का उपयोग करें digitalRead()
समारोह:
int state = digitalRead(pinNumber);
-
state
: या तो होगाHIGH
याLOW
इनपुट सिग्नल के आधार पर।
उदाहरण: एक बटन प्रेस पढ़ना
एक पुश बटन को एक पुल-डाउन रोकनेवाला (10k-ohm) के साथ पिन करने के लिए कनेक्ट करें। जब दबाया जाता है, तो बटन भेज देगा HIGH
संकेत।
#define buttonPin 2 // Button connected to pin 2
#define ledPin 13 // LED connected to pin 13
void setup() {
pinMode(buttonPin, INPUT); // Set pin 2 as an input
pinMode(ledPin, OUTPUT); // Set pin 13 as an output
}
void loop() {
int buttonState = digitalRead(buttonPin); // Read the button state
if (buttonState == HIGH) {
digitalWrite(ledPin, HIGH); // Turn on the LED if the button is pressed
} else {
digitalWrite(ledPin, LOW); // Turn off the LED otherwise
}
}
चरण 4: उपयोग करना if
डिजिटल पिन के साथ बयान
if
कथन आपको अपने कार्यक्रम में सशर्त तर्क बनाने की अनुमति देते हैं। डिजिटल रीड्स को मिलाएं और इनपुट के आधार पर क्रियाएं करने के लिए लिखते हैं।
उदाहरण: बटन प्रेस पर एक एलईडी टॉगल करें
यह स्केच हर बार बटन दबाने पर एलईडी स्थिति को टॉगल करता है:
#define buttonPin 2 // Button connected to pin 2
#define ledPin 13 // LED connected to pin 13
bool ledState = false; // Current state of the LED
bool lastButtonState = LOW; // Previous state of the button
void setup() {
pinMode(buttonPin, INPUT);
pinMode(ledPin, OUTPUT);
}
void loop() {
bool currentButtonState = digitalRead(buttonPin);
if (currentButtonState == HIGH && lastButtonState == LOW) {
ledState = !ledState; // Toggle the LED state
digitalWrite(ledPin, ledState ? HIGH : LOW);
}
lastButtonState = currentButtonState; // Update the button state
delay(50); // Debounce delay
}
चरण 5: तर्क संचालन के साथ उन्नत उपयोग
आप कई का उपयोग कर सकते हैं if
कथन, else if
, और तार्किक ऑपरेटर (&&
, ||
, आदि) अधिक जटिल व्यवहार बनाने के लिए।
उदाहरण: बहु-इनपुट नियंत्रण
दो बटन के राज्यों के आधार पर एक एलईडी को नियंत्रित करें:
#define button1 2 // Button 1 connected to pin 2
#define button2 3 // Button 2 connected to pin 3
#define ledPin 13 // LED connected to pin 13
void setup() {
pinMode(button1, INPUT);
pinMode(button2, INPUT);
pinMode(ledPin, OUTPUT);
}
void loop() {
bool button1State = digitalRead(button1);
bool button2State = digitalRead(button2);
if (button1State == HIGH && button2State == HIGH) {
digitalWrite(ledPin, HIGH); // Turn on LED if both buttons are pressed
} else {
digitalWrite(ledPin, LOW); // Turn off LED otherwise
}
}
समस्या निवारण
-
एलईडी लाइट अप:
- सुनिश्चित करें कि एलईडी सही ढंग से जुड़ा हुआ है (सकारात्मक पिन के लिए लंबा पैर)।
- क्षति से बचने के लिए 220-ओम रोकनेवाला का उपयोग करें।
-
बटन जवाब नहीं देता है:
- एक पुल-डाउन या पुल-अप रोकनेवाला के साथ उचित वायरिंग के लिए जाँच करें।
- सत्यापित करें कि पिनमोड सेट है
INPUT
याINPUT_PULLUP
.
-
मुद्दों पर बहस करें:
- यांत्रिक बटन से सिग्नल शोर को संभालने के लिए एक छोटे से देरी का उपयोग करें या सॉफ्टवेयर डिबंस तंत्र को लागू करें।
निष्कर्ष
आपने सीखा है कि Arduino UNO के साथ डिजिटल रीड और राइट ऑपरेशन कैसे करें, पिन मोड को कॉन्फ़िगर करें, और उपयोग करें if
सशर्त तर्क के लिए कथन। ये मौलिक कौशल आपको विभिन्न प्रकार के हार्डवेयर घटकों को नियंत्रित करने और इंटरैक्टिव, उत्तरदायी परियोजनाएं बनाने में सक्षम बनाते हैं। अधिक जटिल व्यवहार के लिए कई इनपुट और आउटपुट को मिलाकर आगे प्रयोग करें!