CircuitLens आज़माएँ

संदर्भ शीट

UART baud और फ़्रेमिंग

UART baud रेट और फ़्रेमिंग चीट शीट

UART (Universal Asynchronous Receiver-Transmitter) में कोई साझा क्लॉक वायर नहीं होता, इसलिए दोनों सिरों को पहले से तय करना होता है कि बिट कितनी तेज़ी से आएँगे और हर बाइट कैसे पैक होगा। baud रेट उन कई सेटिंग्स में से सिर्फ़ एक है जो दोनों ओर मेल खानी चाहिए, पूरी बात नहीं। baud रेट सही पर फ़्रेमिंग ग़लत हो तो नतीजा आमतौर पर साफ़ विफलता नहीं होता — गड़बड़ अक्षरों की धारा आती है, क्योंकि रिसीवर लाइन को ग़लत समय पर सैंपल करता है।

UART फ़्रेम हाई रखी गई आइडल लाइन से शुरू होता है, फिर एक स्टार्ट बिट उसे एक बिट समय के लिए लो खींचता है ताकि बाइट की शुरुआत दिखे और रिसीवर उससे सिंक हो सके। इसके बाद डेटा बिट आते हैं — आमतौर पर 8, हालाँकि कुछ डिवाइस 5 से 9 इस्तेमाल करते हैं — सबसे कम महत्व वाला बिट पहले भेजा जाता है। बुनियादी त्रुटि जाँच के लिए एक वैकल्पिक पैरिटी बिट (none, even या odd) आ सकता है, और फिर एक या कभी-कभी दो स्टॉप बिट (कुछ पुराने हार्डवेयर पर 1.5 स्टॉप बिट भी) लाइन को वापस आइडल हाई पर लाकर फ़्रेम का अंत दिखाते हैं।

दोनों सिरों को चारों सेटिंग्स पर एक साथ सहमत होना होता है — baud रेट, डेटा बिट की संख्या, पैरिटी और स्टॉप बिट की संख्या — इसीलिए इन्हें आमतौर पर '8N1' (8 डेटा बिट, कोई पैरिटी नहीं, 1 स्टॉप बिट) जैसे छोटे रूप में लिखा जाता है, जो आज सबसे आम कॉन्फ़िगरेशन है। इनमें से कोई एक भी ग़लत हो, भले baud रेट मेल खाए, तो काम करने वाले लिंक के बजाय गड़बड़ बाइट या फ़्रेमिंग त्रुटियाँ दिखेंगी।

अनजान बोर्ड की जाँच करते समय 8N1 लगभग हमेशा सुरक्षित फ़्रेमिंग अनुमान है — असली अनजानी चीज़ आमतौर पर सिर्फ़ baud रेट होती है। पहले 115200 और 9600 आज़माएँ क्योंकि ये ज़्यादातर डिवाइस कवर करते हैं, और अगर ESP8266 बूट लॉग 115200 पर कचरा दिखे, तो पोर्ट को ख़राब मानने से पहले 74880 आज़माएँ। लॉजिक एनालाइज़र का auto-baud या प्रोटोकॉल डिकोडर (या स्कोप से डेटा स्ट्रीम की सबसे छोटी पल्स चौड़ाई मापना) अनजानी रेट जल्दी पकड़ लेगा। baud-रेट बेमेल के लिए अक्सर बताया जाने वाला "~2-3% के भीतर मेल खाना चाहिए" नियम एक मोटा दिशानिर्देश है, पक्का स्पेक नहीं — असली सहनीय त्रुटि उस UART के ओवरसैंपलिंग और हर फ़्रेम के बिट की संख्या पर निर्भर करती है, इसलिए इसे डिज़ाइन सीमा के बजाय अनुमान मानें।

और संदर्भ शीट