UART और RS-232 के बीच अंतर?


80

ज्यादातर समय RS-232 और UART धारावाहिक संचार सिद्धांतों में एक साथ आते हैं। क्या वे दोनों एक ही हैं? अपने रीडिंग से मैंने निष्कर्ष निकाला कि UART RS-232 प्रोटोकॉल का एक हार्डवेयर रूप है। क्या मैं सही हूँ?


1
उपरोक्त उत्तरों ने मतभेदों के बारे में जानकारी दी है। लेकिन मैं नेशनल इंस्ट्रूमेंट्स से एक लिंक जोड़कर उन उत्तरों को जोड़ना चाहूंगा जो इस विषय पर अच्छी चर्चा करते हैं। निम्नलिखित लिंक है: RS-232, RS-422, RS-485 सीरियल कम्युनिकेशन जनरल कॉन्सेप्ट
devangmotwani

जवाबों:


80

नहीं, UART और RS-232 समान नहीं हैं।

बिट्स का क्रम भेजने और प्राप्त करने के लिए UART जिम्मेदार है। UART के आउटपुट में इन बिट्स को आमतौर पर लॉजिक स्तर के वोल्टेज द्वारा दर्शाया जाता है। ये बिट्स RS-232, RS-422, RS-485, या शायद कुछ मालिकाना कल्पना बन सकते हैं।

RS-232 वोल्टेज स्तर निर्दिष्ट करता है । ध्यान दें कि इनमें से कुछ वोल्टेज स्तर नकारात्मक हैं, और वे। 15 वी तक भी पहुंच सकते हैं। बड़ा वोल्टेज स्विंग RS-232 को हस्तक्षेप के लिए अधिक प्रतिरोधी बनाता है (केवल कुछ हद तक)।

एक माइक्रोकंट्रोलर UART स्वयं इस तरह के वोल्टेज स्तर उत्पन्न नहीं कर सकता है। यह एक अतिरिक्त घटक की मदद से किया जाता है: RS-232 लाइन ड्राइवर। RS-232 लाइन ड्राइवर का एक उत्कृष्ट उदाहरण MAX232 है । यदि आप डेटाशीट से गुजरते हैं, तो आप देखेंगे कि इस IC में एक चार्ज पंप है, जो + 5V से from 10V उत्पन्न करता है।

यहाँ छवि विवरण दर्ज करें ( स्रोत )


4
RS-232 परिभाषा जो मैंने पढ़ी है वह बिट्स के अनुक्रम या समय के बारे में बिल्कुल भी बात नहीं करती है। मुझे लगता है कि मुझे कभी भी एक आधिकारिक मानक नहीं मिला है जो अतुल्यकालिक NRZ स्टार्ट-स्टॉप प्रोटोकॉल का वर्णन करता है।
राउटर वैन ओइजेन

1
RS-232 बिट्स के अनुक्रम को निर्दिष्ट नहीं करता है।
स्लीबेटमैन

जाहिर है, UART के चरित्र प्रारूप का विकास बेल टेलीफोन कंपनी पर इस कदर हावी हो गया कि कोई भी संस्करण नहीं उछला। नतीजतन, प्रारंभ / डेटा / समता / स्टॉप बिट प्रारूप कभी भी एक स्वतंत्र मानक का विषय नहीं था। उद्योग-व्यापी उपयोग इतना समान था कि कोई "आधिकारिक" परिभाषा की आवश्यकता नहीं थी। यह शारीरिक संबंधों का सच नहीं था, और इसलिए RS-232 विकसित किया गया था।
व्हाट्सएप

3
UART के चरित्र प्रारूप में बेल के मोडेम की भविष्यवाणी की गई है, यह ASCII में टेलेटाइप हार्डवेयर (समानता के साथ आठ बिट) और उससे पहले बाउडॉट में था।
व्हाइट 3

33

UART (या USART) - यूनिवर्सल (सिंक्रोनस) अतुल्यकालिक रिसीवर / ट्रांसमीटर

यह अनिवार्य रूप से, एक धारावाहिक संचार इंटरफेस है। "सार्वभौमिक" भाग का मतलब है कि इसे कई अलग-अलग विशिष्ट सीरियल प्रोटोकॉल का समर्थन करने के लिए कॉन्फ़िगर किया जा सकता है। यह शब्द सामान्य है, और एक विशिष्ट मानक का प्रतिनिधित्व नहीं करता है। कम से कम इसका मतलब है कि इसकी एक TXऔर एक RXलाइन है, जो एक सीरियल डेटा स्ट्रीम भेजता है और एक सीरियल डेटा स्ट्रीम प्राप्त करता है।

RS-232 - दो उपकरणों के बीच संकेतों को परिभाषित करने वाला एक मानक, सिग्नल के नाम, उनके उद्देश्य, वोल्टेज स्तर, कनेक्टर और पिनआउट को परिभाषित करता है।

यह एक विशिष्ट इंटरफ़ेस मानक है जो उपकरण इंटरऑपरेबिलिटी के लिए अनुमति देता है। हालांकि हार्डवेयर के दो टुकड़ों में UART हो सकते हैं, आप नहीं जानते कि वे बिना किसी क्षति के जुड़ेंगे, या ठीक से संचार नहीं करेंगे जब तक कि आपको पता न हो कि उनके पास समान पिनआउट और वोल्टेज मानक हैं, या इसमें एक कनवर्टर या विशेष रूप से वायर्ड केबल शामिल है जो आपस में जुड़े हुए हैं इन दो विशिष्ट उपकरणों। विशेष कन्वर्टर्स या केबल की आवश्यकता से बचने के लिए, निर्माता RS-232 मानक का पालन करना चुन सकते हैं। आप जानते हैं कि तब, एक मानक RS-232 केबल दोनों को जोड़ेगा।

हालाँकि, न तो UART और न ही RS-232 मानक परिभाषित करता है कि क्या TXऔर RXलाइनों पर भेजा गया है । आमतौर पर, जब लोग RS-232 का उपयोग करते हैं, तो वे एक शुरुआत बिट के साथ एक सरल 8 बिट एनआरजेड एन्कोडिंग का उपयोग करते हैं और एक स्टॉप बिट। आज निर्मित अधिकांश उपकरण इस एन्कोडिंग का उपयोग करते हैं, लेकिन ऐसा करने की कोई आवश्यकता नहीं है। आप पुराने उपकरणों को पा सकते हैं जिनमें समता बिट्स शामिल हैं, या 7 या 9 बिट्स का उपयोग करता है। UART को इसके TXऔर RXतर्ज पर इन विभिन्न प्रोटोकॉल का समर्थन करने के लिए कॉन्फ़िगर किया जा सकता है ।

UARTs आमतौर पर RS-232 के साथ सीधे इंटरफ़ेस नहीं करते हैं। आपको UART के आउटपुट को +/- 12V मानक में बदलना होगा जो RS-232 की आवश्यकता है। एक पूर्ण RS-232 इंटरफ़ेस में आमतौर पर UART और RS-232 दोनों स्तर कनवर्टर शामिल होंगे। इसके अलावा, RS-232 मानक में इसके अलावा कई अन्य सिग्नलिंग पिन की परिभाषा भी शामिल है , TXऔर RXआपको उन उपकरणों के आधार पर उपयोग करने की आवश्यकता हो सकती है जिनसे आपको कनेक्ट करने की आवश्यकता है। इन स्तरों को परिवर्तित करने की भी आवश्यकता होगी, और आपका UART इन संकेतों का समर्थन कर सकता है या नहीं भी कर सकता है। यदि ऐसा नहीं होता है तो आपको सीधे अपने सॉफ़्टवेयर / फ़र्मवेयर से उन्हें नियंत्रित करना होगा।

इसलिए जब एक UART आपको RS-232 इंटरफ़ेस लागू करने में मदद कर सकता है, तो यह स्वयं RS-232 इंटरफ़ेस नहीं है।


मानक RS-232 केबल? ऐसी कोई बात नहीं है। अपने उपकरण बैग में मैं RS-232 के लिए लगभग एक दर्जन एडेप्टर ले जाता हूं। RS-232 एक DB-25 कनेक्टर को निर्दिष्ट करता है, लेकिन मैंने डीडी -9, आरजे 45, डाइन 8 और अन्य कनेक्टरों को देखा है, और एक पीसी को मॉडेम को हुक करने के अलावा मैं किसी भी rs232 प्रोजेक्ट के लिए COTS केबल का उपयोग करने में सक्षम नहीं हूं। सौभाग्य से 90% उस समय में जब एक जोड़ी एडाप्टर्स करेंगे या एक कस्टम केबल, वे बनाना आसान है।
१४:४०

सिर्फ रिकॉर्ड के लिए: मुझे लगता है कि USART में 'S' का मतलब "सिंक्रोनस" है, न कि "सीरियल"। देखें यहाँ । USARTs पुराने UARTs चिप्स पर "एस्ट्रेशन" हैं जो कि सिंक्रोनस संचार मोड को भी अनुमति देते हैं।
लोरेंजो दोनाती जूल

14

UART का कार्य है कि पीसी ड्राइवरों के लिए समानांतर डेटा को RS-232, RS-422 और RS-485 उपकरणों के माध्यम से ट्रांसमिशन के लिए सीरियल डेटा में परिवर्तित किया जाए । UART चिप का क्लॉक पिन एक प्रोग्राम योग्य घड़ी स्रोत द्वारा फीड किया जाता है। घड़ी की गति बॉड दर कॉन्फ़िगरेशन द्वारा निर्धारित की जाती है जो डिवाइस का उपयोग कर रही होगी। घड़ी की गति 16 X बॉड दर है। एक UART चिप की घड़ी पिन पर एक आस्टसीलस्कप जांच रखने और आवृत्ति का निर्धारण, तो एक अज्ञात बॉड दर निर्धारित करने के लिए 16 से विभाजित करने का एक तरीका है।


5
+1 "समानांतर डेटा को सीरियल डेटा में कनवर्ट करने के लिए", यहां कोई अन्य उत्तर इसका उल्लेख नहीं करता है।
TisteAndii
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.