Arduino Control Structure
|इस आर्टिकल में हम Arduino के Control Structure के बारे में समझेंगे यदि हम इन्हे Devide करना चाहे तो 3 भागो में बाट सकते हैं
- Conditional Statement
- if
- else
- switch…case
- Loop Statement
- for
- while
- do…while
- Flow Transfer Statement
- break
- continue
- return
- goto
if
किसी भी प्रकार की Condition के लिए इस statement का उपयोग किया जाता हैं , यह एक conditional statement हैं ।
if (condition) {
//statements
}
else
जब भी हम IF condition का उपयोग करते हैं तब यदि If condition जब false होती हैं तब else condition में कर्सर जाता हैं else के साथ हम फिर से if condition लगा भी सकते हैं और without if के भी else condition लिख सकते हैं ।
if (condition1) {
// statements
}
else if (condition2) {
// statements
}
else {
// statements
}
switch…case
switch case स्टेटमेंट एक तरह से Conditional स्टेटमेंट ही हैं , हम कह सकते हैं की if का extended version हैं , इसमें हमें बार बार condition नहीं लिखना होती ।
इसमें int और char टाइप का ही उपयोग कर सकते हैं ।
switch (var) {
case label1:
// statements
break;
case label2:
// statements
break;
default:
// statements
break;
}
for
यह किसी भी block जो की Curley Brack में होते हैं उनको repeat करने के लिए उपयोग में आता हैं यह एक तरह से loop statement ही हैं ।
for (initialization; condition; increment) {
// statement(s);
}
// Dim an LED using a PWM pin
int PWMpin = 10; // LED in series with 470 ohm resistor on pin 10
void setup() {
// not required in this example
}
void loop() {
for (int i = 0; i <= 255; i++) {
analogWrite(PWMpin, i);
delay(10);
}
}
while
यह एक loop हैं , यदि हम इसे कण्ट्रोल नहीं करते हैं तो यह infinite execute होता हैं ,
while (condition) {
// statement(s)
}
i = 0;
while (i < 200) {
// do something in a loop
i++;
}
do…while
यह एक Exit Control loop स्टेटमेंट हैं यह कम से कम एक बार तो Execute होता ही हैं क्युकी हम loop का कण्ट्रोल loop की current cycle पूरी होने पर करते हैं
do {
// statement block
} while (condition);
int x = 0;
do {
delay(50);
x = readSensors();
} while (x < 100);
break
जब भी हमें for, while और Do….while में से Exit होना होता हैं तब हम break कमांड का उपयोग करते हैं switch case statement से भी बहार आने के लिए भी break का उपयोग किया जाता हैं ।
continue
किसी भी loop statement के current cycle को bypass करने के लिए continue statement का उपयोग किया जाता हैं ।
return
return statement को दो तरीके से उपयोग कर सकते हैं
- return : इसमें हम केवल statment लिखते हैं ऐसा करने से जो भी फंक्शन या स्टेटमेंट हैं वह वही पर क्लोज हो जाता हैं ।
- return value : इसमें हम return के साथ वैल्यू भी return कर सकते हैं
int checkValue() {
if (analogRead(0) > 400) {
return 1;
}
else {
return 0;
}
}
goto
यह statement program के flow को transfer करने के काम आता हैं , वैसे यदि आप एक best practice करना चाहते हैं तो इस Statement का उपयोग नहीं करना चाहिए हैं , यदि बहुत जरुरी हो तो ही इसका उपयोग करे ।
for (byte r = 0; r < 255; r++) {
for (byte g = 255; g > 0; g--) {
for (byte b = 0; b < 255; b++) {
if (analogRead(0) > 250) {
goto labelexit;
}
// statements
}
}
}
labelexit:
// statements