
گیرنده/فرستنده ناهمزمان جهانی (که معمولاً به عنوان UART شناخته می شود) انتقال داده بین سیستم های ارتباطی سریال و موازی را ساده می کند.این به عنوان یک پل عمل می کند و سیگنال های ورودی موازی را به سیگنال های خروجی سریال تبدیل می کند و برعکس.این امر باعث می شود UART به بخش اساسی بسیاری از رابط های ارتباطی تبدیل شود.
از نظر عملی ، UART می تواند به عنوان یک تراشه مستقل یا به عنوان یک محیطی یکپارچه در یک ریزپردازنده وجود داشته باشد.این غالباً به مشخصات RS-232C پایبند است و برای اطمینان از سازگاری با دستگاه های خارجی با تراشه های تبدیل دامنه سیگنال مانند MAX232 جفت می شود.هنگامی که تبدیل سیگنال سریال همزمان به UART اضافه می شود ، تبدیل به یک USART (فرستنده گیرنده ناهمزمان جهانی) می شود و قابلیت های آن را بیشتر می کند.
UART با استفاده از یک پروتکل ارتباطی سریال ناهمزمان عمل می کند ، به این معنی که داده ها به طور همزمان یک بیت منتقل می شوند.هر کاراکتر در جریان داده برای حفظ ارتباط قابل اعتماد بین دستگاه ها به بخش های مجزا تقسیم می شود.
انتقال با یک بیت شروع شروع می شود ، که به عنوان "0." منطقی نشان داده می شوداین بیت شروع یک قاب داده را نشان می دهد و به گیرنده اطلاع می دهد که داده ها در حال ورود هستند.پس از بیت شروع ، بیت های داده وجود دارد که حاوی اطلاعات واقعی ارسال شده است.این بیت ها می توانند از تعداد 4 تا 8 متغیر باشند و اغلب با استفاده از ASCII رمزگذاری می شوند.فرآیند انتقال با کمترین میزان قابل توجه (LSB) آغاز می شود و با ساعت سیستم هماهنگ می شود.
یک بیت برابری اختیاری ممکن است برای کمک به تشخیص خطاها در انتقال باشد.این بیت تضمین می کند که بسته به پیکربندی انتخاب شده ، تعداد کل بیت های "1" در داده ها یکنواخت یا عجیب است.در پایان قاب داده بیت توقف است که نشان دهنده نتیجه گیری انتقال است.بیت های توقف می توانند 1 ، 1.5 یا 2 بیت طول داشته باشند.استفاده از بیت های توقف طولانی تر باعث تحمل زمان بیشتر بین دستگاه ها می شود اما می تواند سرعت کلی داده ها را کند کند.
هنگامی که خط داده را انتقال نمی دهد ، در حالت بیکار باقی می ماند ، که توسط یک "1" منطقی نشان داده شده است.سرعت انتقال داده با نرخ BAUD تعیین می شود ، که تعداد نمادهای منتقل شده در ثانیه را اندازه گیری می کند.به عنوان مثال ، با نرخ BAUD 120 ، با هر نماد 8 بیت ، نرخ داده مؤثر 960 بیت در ثانیه خواهد بود.درک این عناصر تضمین می کند که ارتباطات UART حتی بدون یک ساعت مشترک بین دستگاه ها ، هماهنگ و قابل اعتماد باقی می ماند.
رجیستری بافر خروجی جایی است که داده های موازی ارسال شده توسط CPU به طور موقت ذخیره می شود.قبل از پردازش بیشتر داده ها به عنوان یک منطقه نگهدارنده عمل می کند.این تضمین می کند که داده ها در هنگام آماده شدن سیستم برای ارسال آن ، سازماندهی شده و آماده تبدیل به قالب سریال هستند.
هنگامی که داده ها در بافر خروجی ذخیره می شوند ، به رجیستری Output Shift منتقل می شود.این مؤلفه نقش مهمی در تبدیل داده های موازی به یک جریان سریال دارد.این داده بیت را به صورت بیت با نرخ تعیین شده توسط ساعت ارسال تغییر می دهد و از انتقال صاف داده ها از طریق خط ارتباطی اطمینان می دهد.
از طرف دریافت ، رجیستری شیفت ورودی از داده های سریال دریافتی مراقبت می کند.این هر بخش از داده ها را هنگام رسیدن به دست می آورد و مطابق ساعت آن را تراز می کند.پس از جمع آوری کل قاب داده ، دوباره به قالب موازی تبدیل می شود و برای استفاده بیشتر به بافر ورودی ارسال می شود.
رجیستری بافر ورودی داده های موازی دریافت شده از ثبت ورود به سیستم را در خود جای داده است.این مرحله است که CPU می تواند به داده های پردازش یا ذخیره سازی دسترسی پیدا کند.بافر ورودی تضمین می کند که داده ها به طور مؤثر و بدون هیچ گونه ضرر یا تأخیر در فرآیند ارتباطات مدیریت می شوند.
ثبت کنترل نحوه عملکرد UART در طول ارتباط را تعیین می کند.این دستورات را از CPU دریافت می کند که پارامترهایی مانند حالت انتقال (ناهمزمان یا همزمان) ، تعداد بیت های داده در یک قاب ، گزینه های برابری (عجیب یا یکنواخت) و تعداد بیت های توقف را تعریف می کند.این رجیستر به شما امکان می دهد قالب داده را سفارشی کنید و سازگاری با دستگاه متصل را تضمین می کند.
ثبت وضعیت وضعیت UART را در هنگام برقراری ارتباط نظارت می کند.این به روزرسانی هایی را در مورد شرایط مختلف ارائه می دهد ، از جمله اینکه آیا بافر خروجی خالی است یا اینکه داده های ورودی جدید آماده خواندن هستند.هنگامی که وقایع خاص اتفاق می افتد ، مانند یک بافر کامل یا خالی است ، ثبت وضعیت پرچم های مربوطه را تعیین می کند.این به CPU اجازه می دهد تا سریع پاسخ دهد و روند ارتباط را به طور کارآمد ادامه دهد.
منطق انتقال UART با تبدیل داده ها از قالب موازی به سریال آغاز می شود.این اتفاق می افتد هنگامی که داده های Transmit FIFO خوانده می شود ، و منطق کنترل ابتدا یک بیت شروع را اضافه می کند ، و به دنبال آن بیت های داده ، یک بیت برابری در صورت پیکربندی و در نهایت یک بیت توقف.داده ها یک بیت در یک زمان ارسال می شوند ، با کمترین بیت قابل توجه (LSB) ابتدا منتقل می شوند.
در پایان دریافت ، روند معکوس می شود.UART یک پالس شروع معتبر را تشخیص می دهد و شروع به تبدیل جریان بیت سریال ورودی به قالب موازی می کند.در طول راه ، خطاهایی مانند سرریز ، برابری و خطاهای قاب بندی را بررسی می کند.هرگونه خطای شناسایی شده در دریافت FIFO به همراه داده ها برای شناسایی آسان توسط سیستم پرچم گذاری می شود.
UART از یک تقسیم کننده نرخ Baud برای تعریف دوره بیت استفاده می کند و به آن اجازه می دهد تا با سرعت انتقال مورد نیاز مطابقت داشته باشد.این تقسیم کننده شامل یک عدد صحیح 16 بیتی و شش مکان اعشاری است که کنترل دقیق را فراهم می کند.با نرخ ساعت بالای سیستم ، UART می تواند نرخ استاندارد BAUD را با حداقل خطای ایجاد کند و از برقراری ارتباط صاف بین دستگاه ها اطمینان حاصل کند.
هنگامی که داده ها ارسال می شود ، آن را به انتقال FIFO نوشته می شود.اگر UART فعال باشد ، بلافاصله شروع به انتقال بر اساس پارامترهای پیکربندی شده مانند نرخ Baud و قالب داده می شود.پرچم شلوغ در طی این فرآیند فعال است و فقط پس از ارسال تمام داده ها ، از جمله بیت توقف ، ارسال شده و FIFO خالی است.
برای دریافت ، UART نظارت بر خط داده را هنگام بیکار شروع می کند.پس از تشخیص بیت شروع (سیگنال کم) ، پیشخوان پذیرش شروع می شود.بیت های داده در فواصل تعریف شده توسط Baud16 نمونه برداری می شوند و از دقت اطمینان می دهند.اگر بیت شروع معتبر باشد ، UART نمونه برداری را ادامه می دهد و هر بیت قاب ، از جمله بیت های توقف و برابری را تشخیص می دهد و داده ها را در دریافت FIFO یک بار کامل می کند.
وقفه ها توسط UART در شرایط خاص مانند سرریز FIFO ، خطای خط خط ، خطای برابری ، خطای قاب بندی یا دریافت زمان انجام می شود.این رویدادها یک سیگنال قطع واحد را ایجاد می کنند و نرم افزار می تواند با پرس و جو از وضعیت قطع UART علت خاص را مشخص کند.این اجازه می دهد تا چندین رویداد وقفه در یک روال سرویس واحد به طور مؤثر اداره شود.
مکانیسم FIFO با کاهش فرکانس وقفه ها و بهبود عملکرد CPU به مدیریت کارآمد داده ها کمک می کند.دو FIFO جداگانه انتقال و دریافت ، هر کدام قادر به ذخیره حداکثر 16 بایت داده هستند.FIFO باعث وقفه بر اساس عمق قابل تنظیم مانند 1/4 یا 1/2 کامل می شود.این تضمین می کند که داده ها در تکه های قابل کنترل ، جلوگیری از از دست دادن یا تأخیر پردازش می شوند.
برای انتقال ، FIFO به محض پر شدن شروع به ارسال داده ها می کند.در حین ارسال ، داده های اضافی تا زمانی که FIFO به ظرفیت نرسد می توان اضافه کرد.در پایان دریافت ، FIFO داده های دریافتی را تا زمان خواندن ذخیره می کند.اگر FIFO کامل باشد و داده های جدید وارد شود ، قدیمی ترین داده ها رونویسی می شوند ، بنابراین پردازش به موقع ضروری است.
حالت Loopback UART به شما امکان می دهد با اتصال انتقال و دریافت خطوط داخلی ، آزمایش و اشکال زدایی کنید.این امر به ویژه برای تأیید تنظیمات ارتباطی بدون نیاز به اتصال خارجی مفید است.
برخی از UART ها ، مانند موارد موجود در تراشه های ARM SERIES SERIARIS ، از پروتکل مادون قرمز (SIR) سریال IRDA پشتیبانی می کنند.این ویژگی UART را قادر می سازد با رمزگذاری و رمزگشایی جریان داده های UART برای انتقال از طریق یک فرستنده مادون قرمز ، ارتباطات مادون قرمز نیمه دوپلکس را انجام دهد.این قابلیت استفاده UART را در تنظیمات ارتباطی بی سیم گسترش می دهد.
UART به طور گسترده ای در کنترل انتقال پیام بین CPU و سایر مؤلفه ها ، به ویژه در هنگام کارهایی مانند طراحی تلفن همراه و آزمایش استفاده می شود.انعطاف پذیری و سازگاری آن با استانداردهای مختلف رابط ، آن را به یک انتخاب جهانی برای ارتباطات ناهمزمان تبدیل می کند.
اصطلاح UART مخفف "فرستنده ناهمزمان جهانی" است که شامل انواع استانداردهای رابط مانند RS232 ، RS449 ، RS423 ، RS422 و RS485 است.این استانداردها ویژگی های الکتریکی ، نرخ انتقال ، انواع اتصال و جزئیات مکانیکی برای درگاه های ارتباطی را تعریف می کنند.UART به عنوان پلی بین لایه فیزیکی و شبکه ارتباطی خدمت می کند و به طور مستقل از پروتکل هایی که عملیات پیوند داده را اداره می کنند ، کار می کند.
در رایانه های شخصی ، اصطلاح COM به درگاه های ارتباطی سریال ناهمزمان اشاره دارد که Rs232 رابط استاندارد است.این انتخاب به طرح های اولیه رایانه های شخصی IBM باز می گردد ، که Rs232 را به عنوان پیش فرض تأسیس می کند.رایانه های شخصی مدرن به طور معمول از درگاه های COM با عنوان COM1 ، COM2 و غیره پشتیبانی می کنند.این سازگاری به عقب تضمین می کند که UART امروزه در بسیاری از برنامه ها مرتبط است.
UART اجازه می دهد تا انتقال داده ها با کمترین میزان قابل توجه (LSB) یا در برخی از تنظیمات مهمترین بیت (MSB) شروع شود.این انعطاف پذیری باعث می شود آن را برای طیف وسیعی از دستگاه ها و موارد استفاده سازگار کند.
در میکروکنترلرها ، UART بسته به سخت افزار و پیکربندی می تواند به سرعت انتقال داده ها از چند صد بیت در ثانیه تا 1.5 مگابیت بر ثانیه برسد.به عنوان مثال ، ارتباطات UART با سرعت بالا در میکروکنترلر ELANSC520 می تواند تا 1.152 مگابیت در ثانیه برسد.با این حال ، نرخ واقعی Baud می تواند تحت تأثیر عواملی مانند طول خط انتقال و کیفیت اتصال باشد.
دو نوع سخت افزار UART در دسترس است.برخی از آنها فقط از ارتباطات ناهمزمان پشتیبانی می کنند ، در حالی که برخی دیگر مانند فرستنده ناهمزمان همزمان جهانی (USART) ، هر دو حالت ناهمزمان و همزمان را ارائه می دهند.به عنوان مثال ، میکروکنترلرهای موتورولا از یک رابط ارتباطی سریال (SCI) برای ارتباطات ناهمزمان استفاده می کنند ، در حالی که میکروکنترلرهای میکروچیپ و فوجیتسو از USARTS برای ارائه انعطاف پذیری اضافی برای نیازهای ارتباطی همزمان استفاده می کنند.این تمایز به شما امکان می دهد سخت افزار مناسب را برای برنامه خاص خود انتخاب کنید.
در زمینه ارتباطات ، UART به عنوان پلی برای تبدیل داده های موازی به داده های سریال برای انتقال فعالیت می کند.این روند با تشکیل UART یک قاب پیام آغاز می شود.این قاب با یک بیت شروع سفارش کم شروع می شود و به دنبال آن 5 تا 8 بیت داده ، یک بیت برابری اختیاری برای بررسی خطا و یک یا چند بیت توقف مرتبه بالا.هنگامی که گیرنده بیت شروع را مشخص می کند ، همگام سازی با فرکانس ساعت فرستنده شروع می شود و از انتقال داده صاف اطمینان می دهد.در صورت فعال بودن برابری ، UART پس از بیت داده ها ، بیت برابری را اضافه می کند ، که به شناسایی خطاهای انتقال کمک می کند.
در حین دریافت داده ، UART روند را معکوس می کند.این بیت های شروع و توقف را از قاب پیام حذف می کند ، یک بررسی برابری را روی داده های دریافت شده انجام می دهد و داده های سریال را به شکل موازی تبدیل می کند.علاوه بر این ، سیگنالهایی ایجاد می کند تا وضعیت انتقال یا پذیرش را نشان دهد.به عنوان مثال ، اگر خطای برابری تشخیص داده شود ، پرچم برابری برای اطلاع رسانی به سیستم تنظیم شده است.این تضمین می کند که داده های منتقل شده هم به طور دقیق دریافت و تأیید می شوند.
در رایانه ها ، UART بخش مهمی از درگاه ارتباطات سریال است.این دستگاه با مدارهایی که سیگنال های سازگار با Rs232 تولید می کنند ، رابط می کند.استاندارد RS232 یک سیگنال منطق "1" را به عنوان ولتاژ بین -3 و -15 ولت و یک سیگنال منطق "0" به عنوان ولتاژ بین +3 و 15 ولت مشخص می کند.هنگام اتصال UART از میکروکنترلر به درگاه RS232 رایانه ، درایور RS232 برای مدیریت سطح ولتاژ لازم است.
UART در میکروکنترلرها به طور معمول در سطح TTL (0 تا 5 ولت) کار می کنند.در مقابل ، RS232 از سطح ولتاژ بالاتر و معکوس استفاده می کند.به عنوان مثال ، در TTL ، یک منطق "0" به عنوان 0 ولت نشان داده شده است ، و یک منطق "1" 5 ولت است.در Rs232 ، این سطح معکوس و تقویت می شود.برای اتصال ایمن این دو سیستم ، از یک تراشه تبدیل سطح مانند Max232 استفاده می شود.این امر به دلیل ولتاژ بالاتر RS232 از آسیب احتمالی میکروکنترلر جلوگیری می کند.
هنگام کار با درگاه سریال رایانه ، که اغلب به عنوان درگاه های COM (به عنوان مثال ، COM1 ، COM2) شناخته می شود ، مهم است که تعیین کنید که آیا این لوازم جانبی از سطح UART یا RS232 استفاده می کند.اگر سطح مطابقت نداشته باشد ، یک کابل تبدیل با یک تراشه تغییر سطح یکپارچه برای برقراری ارتباط ضروری است.اتصال کورکورانه پورت های ناسازگار می تواند منجر به خرابی سخت افزار شود ، بنابراین همیشه از سازگاری اطمینان حاصل کنید یا از ابزارهای تبدیل مناسب استفاده کنید.این رویکرد روند ارتباط را ایمن و کارآمد نگه می دارد.
لطفاً یک سؤال ارسال کنید ، ما بلافاصله پاسخ خواهیم داد.
در 2025/01/5
در 2025/01/5
در 8000/04/18 147749
در 2000/04/18 111914
در 1600/04/18 111349
در 0400/04/18 83714
در 1970/01/1 79502
در 1970/01/1 66871
در 1970/01/1 63005
در 1970/01/1 62948
در 1970/01/1 54077
در 1970/01/1 52091