UART की मानक दरें क्या हैं?


33

मैं 9600, 19200, 38400, 57600, 115200 और 1.8432 Mbaud जानता हूं, लेकिन कोई अन्य नहीं। इन मूल्यों का उपयोग क्यों किया जाता है, और क्या यह बस हर बार दोगुना हो रहा है या कुछ और जटिल चल रहा है (उदाहरण के लिए, 38400 चौगुनी 115200 बॉड नहीं है?)

यह प्रश्न पूछने का कारण यह है कि मैं कुछ ऐसा डिजाइन कर रहा हूं जिसमें विभिन्न बॉड दरों के साथ बातचीत करनी पड़ सकती है। यह 9600 में शुरू होगा, और फिर एक विशिष्ट बॉड दर पर स्विच होगा। लेकिन मैं मनमानी दरों का समर्थन नहीं कर सकता क्योंकि dsPIC33F मैं उपयोग कर रहा हूँ मनमानी दरों का समर्थन नहीं करता क्योंकि यह 16-बिट बीआरजी डाउन काउंटर तक सीमित है। यह कई अन्य प्रोसेसर के संबंध में समान है।


व्यवहार में एक 16 बिट काउंटर प्लस / पोस्ट स्केलर्स मनमानी बॉड दरों के लिए "करीब पर्याप्त" प्राप्त करने के लिए पर्याप्त से अधिक है। UART सीरियल मामूली बॉड दर बेमेल को सहन कर सकता है।
पीटर ग्रीन

Uart START बिट के बीच में शुरू होता है और 7-10 बिट्स को क्रमबद्ध करने के बाद STOP बिट के बीच में रहना चाहिए। जो लगभग 2-3% की न्यूनतम घड़ी की सटीकता बनाता है, स्रोत आवृत्ति में शोर,
घबराहट

जवाबों:


36

यह बहुत पहले शुरू हुआ था जब टेलेटाइप्स के साथ - मुझे लगता है कि 75 बॉड हैं। तब से यह ज्यादातर दोगुना हो गया है, कुछ आंशिक (X1.5) गुणकों के साथ, उदाहरण के लिए 28,800, जहां फोन-लाइन मॉडेम तकनीक पर अड़चनें थीं जो इसे दोगुना करने की अनुमति नहीं देती थीं।

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

7.3728MHz16=460,800baud7.3728MHz64=115,200baud.

अधिकांश UARTS बॉड्रेट के की घड़ी का उपयोग करते हैं , अधिक आधुनिक भागों (जैसे NXP LPC) में गैर-बाइनरी गुणकों का उपयोग करके एक व्यापक श्रेणी प्राप्त करने के लिए आंशिक विभाजन होते हैं।2n×16

अन्य सामान्य मानक 31,250 (MIDI) और 250K (DMX) हैं, दोनों की संभावना 1MHz आदि जैसे 'गोल' घड़ियों के अच्छे गुणकों के रूप में है।


4
मुझे नहीं लगता कि भिन्नात्मक विभक्तियां गैर-मानक बिटरेट प्राप्त करने के लिए हैं, बल्कि गैर-मानक MCU घड़ी आवृत्तियों से मानक बिटरेट हैं।
जोहान।

3
मैंने दो साल 1926 के टेलेटाइप्स को वापस कर दिया, कॉलेज (1976) में वापस आ गया और हाँ उन्होंने लगभग 75 बॉड में दौड़ लगाई। उन्हें बॉडोट टेलेटाइप्स लेबल किया गया था। 110vac में प्लग किया गया और एक मोटर ने उनके बीच विद्युत कनेक्शन के साथ समय प्रदान किया। मैंने उन्हें साफ करने के लिए गैसोलीन में डुबोया। (मुझे एक विराम दें - मैं 18 साल का था। लेकिन इसने काम किया!) Ctrl-G ने एक अच्छाई की घंटी बजा दी। काश, मुझे भी याद नहीं है कि मैंने उन्हें किसको दिया था। :-( तो, हाँ, आप यांत्रिक कीबोर्ड पर टाइप करेंगे, यह यंत्रवत् आपके कीस्ट्रोक्स को क्रमबद्ध करेगा, और एक संपर्क को बनाएगा जिसे दूसरे पक्ष ने पढ़ा।
डग नल

याय, द रोरिंग '20 की! क्या गुणवत्ता प्रौद्योगिकी पिछले 50 वर्षों के लिए, और जॉन सिल्वा के हेयवर्ड, कैलिफोर्निया में हवा।
डग नल

32

RealTerm, एक फ्रीवेयर विंडोज टर्मिनल प्रोग्राम, अपने बॉड मेनू में इन UART दरों को सूचीबद्ध करता है:

110, 150, 300, 1200, 2400, 4800, 9600, 19200, 38400, 57600, 115200, 230400, 460800, 921600

हालांकि ये वास्तव में प्रति सेकंड बिट्स (बीपीएस) हैं, बॉड नहीं - नीचे देखें।

110 बॉड का उपयोग ASR-33 जैसे 8-स्तरीय टेलेटिप द्वारा किया गया था। मुझे नहीं पता कि 150 बॉड का उपयोग कहां किया गया था, लेकिन यह 5-स्तरीय TTYs के लिए आमतौर पर उपयोग किए जाने वाले (60 बॉड के साथ) 75 बॉड का दोहरीकरण है।

1960 के दशक में पहली बार व्यापक रूप से उपयोग किए गए टेलीफोन मॉडेम के लिए 300 बीपीएस मानक था। एक ही समय में प्रति सेकंड 30 वर्णों की संख्या प्रकट हुई।

300 बीपीएस / 300 बॉड से ऊपर, जिसने सरल आवृत्ति शिफ्ट कीइंग (एफएसके) का उपयोग किया, बीपीएस और बॉड (प्रति सेकंड प्रतीक या टन) के आंकड़े समान नहीं हैं। उदाहरण के लिए, एक 1200 बीपीएस मॉडेम वास्तव में 600 बॉड पर चलता है, और एक 4800 बीपीएस मॉडेम 1600 बॉड पर चलता है। इस लेख में Bandwidths के तहत तालिका देखें । अंतर इसलिए है क्योंकि प्रति सेकंड एक निश्चित संख्या में टोन दालों का उपयोग करने के अलावा, चरण-शिफ्ट कुंजीयन और अन्य तरीकों का उपयोग उच्च और उच्च बीपीएस प्राप्त करने के लिए एक ही बॉड दर से अतिरिक्त बैंडविड्थ निकालने के लिए किया जाता है। (तो एक 56K मॉडेम वास्तव में केवल 8000 बॉड पर चल रहा है।)

जैसा कि आप देख सकते हैं, यूएआरटी दरों की सूची अनिवार्य रूप से 75 पर शुरू हुई और लगातार दोगुनी (600 लंघन), 38400 तक हो रही है, जहां इसे 1.5 से गुणा करके 57600 किया गया। 56K बीपीएस एक एनालॉग लाइन लाइन के लिए सीमा है। हार्ड-वायर्ड कनेक्शन के लिए उच्च दरें 115200 ऊपर की ओर (एक बार फिर 57600 से दोगुनी शुरू) का उपयोग किया जाता है।

जैसा कि मिसेइलेक्ट्रिकस्टफ का उल्लेख किया गया है, 14400 और 28800 बीपीएस को 1.5 x 9600 और 1.5 x 19200 के रूप में पेश किया गया था जब मॉडेम की गति उस समय दोगुनी नहीं हो सकती थी, लेकिन अब शायद ही कभी उपयोग किया जाता है।


7
पांडित्य नहीं है, लेकिन कार्यक्रम केवल उसी गति का समर्थन कर सकता है जो हार्डवेयर की अनुमति देता है। यह पूछने में भी परेशान नहीं हो सकता है और बस मानक गति को सूचीबद्ध कर सकता है। मेरे हार्डवेयर को पूछने पर zip(*serial.Serial('COM10').getSupportedBaudrates()), यह उत्तर देता है:(50, 75, 110, 134, 150, 200, 300, 600, 1200, 1800, 2400, 4800, 9600, 19200, 38400, 57600, 115200)
निक टी

2
मैंने अस्सी के दशक में 600 बिट / एस के आधे डुप्लेक्स ध्वनिक कपलर का इस्तेमाल किया। लंबे समय से अपलोड दिशा में जर्मन बीटीएक्स सिस्टम में 75 बिट / एस का उपयोग किया गया था, डाउनलोड 1200 बिट / एस पर था।
Starblue

2
मैंने 62.5 kbaud भी देखा है। दरअसल, यह आपकी मुख्य घड़ी पर भी निर्भर करता है, आप गणना कर सकते हैं कि बॉड्रेट क्या पर्याप्त रूप से कम त्रुटि का कारण होगा।
vsz

5

एक लंबे समय के लिए, संचार के लिए 115,200 के सबमूलिपल्स का उपयोग करना आम है - या तो 38,400 के दो-दो सबमूलिपल्स या फिर 57,600 या 115,200 के पावर सबम्यूटिपल्स। अधिकांश पीसी हार्डवेयर उन दरों का समर्थन करते हैं। कुछ पीसी हार्डवेयर 230,400 या 460,800 का समर्थन कर सकते हैं। ध्यान दें कि कई एम्बेडेड नियंत्रक डेटा दरों की तरह हैं जो अपनी स्वयं की घड़ी की गति के उप-गुणज हैं, और कुछ यूएसबी-टू-सीरियल चिप्स 3,000,000bps के किसी भी पूर्णांक सबमूलेटर्स का समर्थन कर सकते हैं, इसलिए 1,000,000 जीबी या 1,500,000 जीबी जैसी गति संभवतः के लिए अधिक सामान्य होगी USB चिप्स के माध्यम से पीसी से कनेक्ट करने के लिए डिवाइस।

BTW, उल्लेख के लायक एक अन्य दर: 31,250bps मानक मिडी के लिए उपयोग की जाने वाली दर है।


4

मूल IBM PC में 8250 UART था। इसने 1.8432 एमएचजेड घड़ी ली और कुछ पूर्णांक द्वारा इसकी आंतरिक घड़ी उत्पन्न करने के लिए विभाजित किया, और यह घड़ी 16 चक्रों से बिट तक चलती है।

विभाजक रजिस्टर में 1 सेट करने पर आपको 115,200, 2 को 57,600, 3 को 38,400, 6 को 19,200 अंक मिलते हैं।

आपकी सबसे अच्छी शर्त एक घड़ी का उपयोग करना है जो DSPIC के साथ 1.8432 मेगाहर्ट्ज के कुछ पर चलती है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.