Arduino में Serial.print () बनाम Serial.println ()।

Arduino Mem Serial Print Banama Serial Println



Arduino एक लोकप्रिय माइक्रोकंट्रोलर बोर्ड है जो आमतौर पर DIY प्रोजेक्ट, रोबोटिक्स और IoT डिवाइस के लिए उपयोग किया जाता है। Arduino की आवश्यक विशेषताओं में से एक कंप्यूटर के साथ सीरियल संचार के माध्यम से डेटा का आदान-प्रदान करना है।

सीरियल.प्रिंट () और सीरियल.प्रिंटल () Arduino में सीरियल कम्युनिकेशन के लिए सबसे अधिक उपयोग किए जाने वाले दो कमांड हैं। यह लेख बीच के अंतर को कवर करेगा सीरियल.प्रिंट () और सीरियल.प्रिंटल () और वे आपके Arduino प्रोजेक्ट को कैसे प्रभावित करते हैं।

विषयसूची







सीरियल कम्युनिकेशन क्या है

इससे पहले कि हम बीच के अंतरों में गोता लगाएँ सीरियल.प्रिंट () और सीरियल.प्रिंटल () , पहले समझते हैं क्या धारावाहिक संचार है। धारावाहिक संचार डेटा भेजने और प्राप्त करने की प्रक्रिया है। इस Arduino का उपयोग सीरियल संचार प्रोटोकॉल के साथ एक समय में एक बिट डेटा स्थानांतरित कर सकता है। Arduino में, हम USB पोर्ट का उपयोग करके पीसी के साथ डेटा का आदान-प्रदान करने के लिए सीरियल ऑब्जेक्ट का उपयोग करते हैं।



धारावाहिक संचार एक Arduino प्रोजेक्ट के व्यवहार को डिबग करने और मॉनिटर करने के लिए आवश्यक है। आप इसका उपयोग सेंसर रीडिंग, डिबग कोड को प्रिंट करने या कंप्यूटर स्क्रीन पर संदेश प्रदर्शित करने के लिए कर सकते हैं।



सीरियल.प्रिंट ()

सीरियल.प्रिंट () एक ऐसा फ़ंक्शन है जो सीरियल पोर्ट को निरंतर स्ट्रीम में डेटा भेजता है। यह आपको डेटा को एक स्ट्रिंग, एक वर्ण या एक संख्यात्मक मान के रूप में भेजने की अनुमति देता है। उदाहरण के लिए, दिया गया कोड एक स्ट्रिंग भेजता है ' हैलो वर्ल्ड! 'Arduino सीरियल पोर्ट के लिए:





सीरियल.प्रिंट ( 'हैलो वर्ल्ड!' ) ;

सीरियल.प्रिंट () डेटा के अंत में कोई लाइन ब्रेक या कैरिज रिटर्न नहीं जोड़ता है, इसलिए डेटा एक ही लाइन पर लगातार प्रिंट होता है।

सीरियल.प्रिंटल ()

सीरियल.प्रिंटल () के समान है सीरियल.प्रिंट () , लेकिन यह डेटा के अंत में एक लाइन ब्रेक कैरेक्टर (\n) जोड़ता है। यह हमें हर बार दिखाता है सीरियल.प्रिंटल () फ़ंक्शन कहा जाता है, अगला प्रिंट स्टेटमेंट एक नई लाइन पर शुरू होगा। उदाहरण के लिए, दिया गया कोड स्ट्रिंग भेजता है ' हैलो वर्ल्ड! ” और एक पंक्ति विराम जोड़ता है:



सीरियल.प्रिंट ( 'हैलो वर्ल्ड!' ) ;

यह प्रिंट करेगा ' हैलो वर्ल्ड! ” Arduino के सीरियल टर्मिनल पर।

सीरियल.प्रिंट () और सीरियल.प्रिंटल () के बीच अंतर

के बीच प्राथमिक अंतर सीरियल.प्रिंट () और सीरियल.प्रिंटल () यह है कि सीरियल.प्रिंट () एक सतत प्रवाह में डेटा भेजता है, जबकि सीरियल.प्रिंटल () अंत में लाइन ब्रेक के साथ डेटा भेजता है।

अब हम उदाहरण कोड को कवर करेंगे जो इन दोनों कार्यों के कामकाज की व्याख्या करता है।

सीरियल.प्रिंट () उदाहरण

निम्नलिखित कोड है जो के उपयोग की व्याख्या करता है सीरियल.प्रिंट () :

व्यर्थ व्यवस्था ( ) {
सीरियल.शुरू ( 9600 ) ; // सीरियल कम्युनिकेशन को इनिशियलाइज़ करें 9600 बॉड दर
}

शून्य पाश ( ) {
int randomValue = random ( 0 , 1023 ) ; // के बीच एक यादृच्छिक मान उत्पन्न करें 0 और 1023

सीरियल.प्रिंट ( 'यादृच्छिक मान:' ) ; // लेबल प्रिंट करें
सीरियल.प्रिंट ( randomValue ) ; // एक नई लाइन पर यादृच्छिक मान प्रिंट करें

देरी ( 2000 ) ; // इंतज़ार के लिए 500 मिलीसेकंड फिर से प्रिंट करने से पहले
}

यह कोड सेटअप () फ़ंक्शन में 9600 की बॉड दर के साथ धारावाहिक संचार को आरंभ करता है। लूप () फ़ंक्शन तब यादृच्छिक () फ़ंक्शन का उपयोग करके 0 और 1023 के बीच एक यादृच्छिक पूर्णांक मान उत्पन्न करता है और इसे चर नाम में संग्रहीत करता है randomValue .

सीरियल.प्रिंट () फ़ंक्शन का उपयोग तब लेबल को प्रिंट करने के लिए किया जाता है ' यादृच्छिक मान: 'सीरियल मॉनिटर के लिए, वास्तविक यादृच्छिक मान के बाद, जो एक ही लाइन पर बिना किसी नए लाइन कैरेक्टर के प्रिंट किया जाता है सीरियल.प्रिंट () .

देरी() फ़ंक्शन का उपयोग 2000 मिलीसेकंड (2 सेकंड) के लिए लूप के निष्पादन को रोकने के लिए किया जाता है।

उत्पादन
आउटपुट में, हम देख सकते हैं कि सभी मान बिना किसी पंक्ति विराम के एक पंक्ति में मुद्रित होते हैं।

सीरियल.प्रिंटल () उदाहरण

दिया गया कोड के उपयोग को प्रदर्शित करता है सीरियल.प्रिंटल () Arduino में कार्य करें।

व्यर्थ व्यवस्था ( ) {
सीरियल.शुरू ( 9600 ) ; // सीरियल कम्युनिकेशन को इनिशियलाइज़ करें 9600 बॉड दर
}

शून्य पाश ( ) {
int randomValue = random ( 0 , 1023 ) ; // के बीच एक यादृच्छिक मान उत्पन्न करें 0 और 1023

सीरियल.प्रिंट ( 'यादृच्छिक मान:' ) ; // लेबल प्रिंट करें
सीरियल.प्रिंट ( randomValue ) ; // एक नई लाइन पर यादृच्छिक मान प्रिंट करें

देरी ( 2000 ) ; // इंतज़ार के लिए 500 मिलीसेकंड फिर से प्रिंट करने से पहले
}

के लिए कोड सीरियल.प्रिंटल () उपरोक्त के समान है सीरियल.प्रिंट () कोड। यहां एकमात्र अंतर रैंडम वैल्यू है जो एक लाइन ब्रेक के साथ उत्पन्न और मुद्रित होता है जो कि गायब है सीरियल.प्रिंट () कोड।

उत्पादन
जैसा कि हमने उपयोग किया है, सभी मान एक नई पंक्ति में मुद्रित होते हैं सीरियल.प्रिंट () के बजाय सीरियल.प्रिंटल () :

निष्कर्ष

धारावाहिक संचार Arduino प्रोग्रामिंग का एक अनिवार्य पहलू है। सीरियल.प्रिंट () और सीरियल.प्रिंटल () Arduino सीरियल टर्मिनल पर डेटा दिखाने के लिए फ़ंक्शन उपयोगी होते हैं। उनके बीच के अंतर को समझने और उनका उचित उपयोग करने से आपको अपने कोड को डीबग करने और बाहरी उपकरणों के साथ संवाद करने में मदद मिल सकती है।