Arduino प्रोग्रामिंग उपयोग करता है नियंत्रण संरचना जैसे कि अगर, के लिए, जबकि, और स्विच केस एक स्केच में निर्णय लेने और लूप को नियंत्रित करने के लिए। ये संरचनाएं अनुमति देते हैं आर्ज़िनो शर्तों का जवाब देने के लिए, कार्यों को दोहराएं, और इनपुट के आधार पर कोड के विभिन्न ब्लॉकों को निष्पादित करें।
1। यदि कथन (सशर्त निष्पादन)
यदि कथन कोड के एक ब्लॉक को निष्पादित करने के लिए उपयोग किया जाता है केवल अगर एक निर्दिष्ट स्थिति को पूरा किया जाता है.
वाक्यविन्यास
if (condition) {
// Code to execute if condition is true
}
उदाहरण: एक बटन प्रेस के आधार पर एक एलईडी को चालू करना
const int buttonPin = 2; // Button connected to pin 2
const int ledPin = 13; // LED connected to pin 13
void setup() {
pinMode(buttonPin, INPUT);
pinMode(ledPin, OUTPUT);
}
void loop() {
int buttonState = digitalRead(buttonPin); // Read button state
if (buttonState == HIGH) {
digitalWrite(ledPin, HIGH); // Turn LED on if button is pressed
} else {
digitalWrite(ledPin, LOW); // Turn LED off otherwise
}
}
If-else बयान
if (temperature > 30) {
Serial.println("It's too hot!");
} else {
Serial.println("Temperature is normal.");
}
अगर-यदि कथन
if (temperature > 30) {
Serial.println("It's too hot!");
} else if (temperature < 10) {
Serial.println("It's too cold!");
} else {
Serial.println("Temperature is comfortable.");
}
2। लूप के लिए (कार्यों को दोहराना एक निश्चित संख्या में)
ए पाश के लिए कोड का एक ब्लॉक चलाता है कई बार एक निश्चित संख्या। इसका उपयोग आमतौर पर किया जाता है सरणियों पर पुनरावृत्ति या दोहरावदार कार्यों को नियंत्रित करना.
वाक्यविन्यास
for (initialization; condition; increment) {
// Code to execute in each iteration
}
उदाहरण: एक एलईडी 5 बार ब्लिंकिंग
const int ledPin = 13;
void setup() {
pinMode(ledPin, OUTPUT);
}
void loop() {
for (int i = 0; i < 5; i++) { // Loop runs 5 times
digitalWrite(ledPin, HIGH); // Turn LED on
delay(500); // Wait 500 ms
digitalWrite(ledPin, LOW); // Turn LED off
delay(500);
}
delay(2000); // Pause before repeating
}
उदाहरण: एक सरणी के माध्यम से चल रहा है
int numbers[] = {1, 2, 3, 4, 5};
void setup() {
Serial.begin(9600);
}
void loop() {
for (int i = 0; i < 5; i++) {
Serial.println(numbers[i]); // Print each number in the array
}
delay(2000);
}
3। जबकि लूप (एक स्थिति को पूरा होने तक दोहराना)
ए जबकि पाश कोड का एक ब्लॉक चलाता है जब तक एक निर्दिष्ट स्थिति सही रहती है.
वाक्यविन्यास
while (condition) {
// Code to execute while the condition is true
}
उदाहरण: एक बटन प्रेस की प्रतीक्षा कर रहा है
const int buttonPin = 2;
void setup() {
pinMode(buttonPin, INPUT);
Serial.begin(9600);
}
void loop() {
Serial.println("Waiting for button press...");
while (digitalRead(buttonPin) == LOW) {
// Stay in loop until button is pressed
}
Serial.println("Button pressed!");
}
उदाहरण: उलटी गिनती टाइमर
int count = 10;
void setup() {
Serial.begin(9600);
}
void loop() {
while (count > 0) {
Serial.print("Countdown: ");
Serial.println(count);
count--;
delay(1000);
}
Serial.println("Liftoff!");
delay(5000); // Restart countdown after delay
count = 10; // Reset count
}
4। स्विच केस (कई शर्तों को कुशलता से संभालना)
ए स्विच केस स्टेटमेंट जब उपयोग किया जाता है कई शर्तों की जाँच करने की आवश्यकता है, यह एक विकल्प है if-else if-else चेन।
वाक्यविन्यास
switch (variable) {
case value1:
// Code to execute if variable == value1
break;
case value2:
// Code to execute if variable == value2
break;
default:
// Code to execute if none of the cases match
}
उदाहरण: एक रोटरी स्विच के साथ एक एलईडी को नियंत्रित करना
const int ledPin = 13;
int mode = 1; // Example mode variable
void setup() {
pinMode(ledPin, OUTPUT);
Serial.begin(9600);
}
void loop() {
switch (mode) {
case 1:
Serial.println("Mode 1: LED ON");
digitalWrite(ledPin, HIGH);
break;
case 2:
Serial.println("Mode 2: LED BLINKING");
digitalWrite(ledPin, HIGH);
delay(500);
digitalWrite(ledPin, LOW);
delay(500);
break;
case 3:
Serial.println("Mode 3: LED OFF");
digitalWrite(ledPin, LOW);
break;
default:
Serial.println("Invalid Mode");
break;
}
}
उदाहरण: मोड के माध्यम से चक्र करने के लिए एक बटन का उपयोग करना
const int buttonPin = 2;
int mode = 1;
void setup() {
pinMode(buttonPin, INPUT);
Serial.begin(9600);
}
void loop() {
if (digitalRead(buttonPin) == HIGH) {
mode++;
if (mode > 3) mode = 1; // Reset mode to 1 if it exceeds 3
delay(500); // Debounce delay
}
switch (mode) {
case 1:
Serial.println("Mode 1: Low Power Mode");
break;
case 2:
Serial.println("Mode 2: Normal Mode");
break;
case 3:
Serial.println("Mode 3: High Performance Mode");
break;
default:
Serial.println("Invalid Mode");
break;
}
}
निष्कर्ष
- यदि कथन सेंसर रीडिंग या बटन प्रेस के आधार पर सशर्त निष्पादन की अनुमति दें।
- छोरों के लिए एक ज्ञात गिनती के साथ दोहराए जाने वाले कार्यों के लिए उपयोगी हैं, जैसे कि एक एलईडी को ब्लिंक करना।
- जबकि लूप एक विशिष्ट स्थिति के पूरा होने तक लगातार कोड निष्पादित करें।
- केस स्टेटमेंट स्विच करें कुशलता से कई स्थितियों को संभालते समय निर्णय लेने को सरल बनाएं।
ये संरचनाएं Arduino प्रोग्रामिंग बढ़ाएँ छोरों, स्थितियों और डिवाइस नियंत्रण का प्रबंधन करना आसान बनाकर। 🚀