प्रश्न: अगर मैं चाहता हूं कि यह केवल एक बार Arduino स्टार्टअप के अनुसार निष्पादित हो तो मैं कोड कहां रखूं?
पृष्ठभूमि: मैं अपने Arduino का उपयोग उन कार्यों को करने के लिए करता हूं, जिन्हें शक्ति चक्र के अनुसार एक बार निष्पादित किया जाना चाहिए। (उदाहरण के लिए, मेरे रोबोट को केवल हर बार एक बार ड्राइव करना चाहिए जब मैं इसे चालू करता हूं - इससे अधिक, और यह तालिका से गिर सकता है।)
मानक Arduino IDE "टेम्पलेट" में एक loop()
और एक setup()
फ़ंक्शन होता है। setup
कोड शक्ति चक्र के अनुसार एक बार चलाया जाता है, और loop
हर बार इसके समाप्त होने को फिर से शुरू कर दिया है।
मुझे "1 समय कार्यों" कोड के लिए दो दृष्टिकोण दिखाई देते हैं:
विधि 1: "एक बार लूप"
void setup() {
//do setup stuff
}
void loop() {
//do task
while(1) ; //Repeat forever, preventing function from re-starting
}
विधि 2: "केवल सेटअप"
void setup() {
//do setup stuff
//do task
}
void loop() {
//do nothing
}
प्रश्न का अधिक विस्तृत रूप: क्या इन विधियों में से एक हार्डवेयर / सॉफ्टवेयर अर्थों से "बेहतर" है? (जैसे कि setup
फ़ंक्शन के बारे में कुछ भी "विशेष" है , जैसे कि यह केवल इतने समय तक चल सकता है?)
और, यदि वे हार्डवेयर / सॉफ्टवेयर के नजरिए से समान हैं, तो क्या "सर्वोत्तम अभ्यास" या कोड लिखने का मानक तरीका है Arduino समुदाय में इन स्थितियों के लिए?
exit
आदेश में चर्चा की है arduino.stackexchange.com/questions/188/...