متحكم AVR (اتميل 8) تكوين USART للاتصالات التسلسلية

جرب أداة القضاء على المشاكل





Microcontroller هو جهاز تحكم يحتوي على عدد من الأجهزة الطرفية مثل RAM و ROM TIMERS و اتصالات البيانات التسلسلية ، وما إلى ذلك ، المطلوبة لأداء بعض المهام المحددة مسبقًا. الوقت الحاضر، نوع متقدم من ميكروكنترولر تُستخدم في مجموعة متنوعة من التطبيقات حسب قدرتها وجدوى أداء بعض المهام المطلوبة وتشمل وحدات التحكم هذه 8051 ، متحكم AVR و PIC . في هذه المقالة ، سوف نتعرف على متحكم عائلة AVR المتقدم وبرمجته .

متحكم AVR

إن AVR هو نوع من أجهزة التحكم التي صنعتها شركة Atmel Corporation في عام 1996. لا يمثل AVR أي شيء ، إنه مجرد اسم. AVR تتكون الميكروكونترولر من هندسة هارفارد ، وبالتالي ، يعمل الجهاز بسرعة كبيرة مع عدد أقل من تعليمات مستوى الماكينة (RISC). تتكون وحدات التحكم الدقيقة AVR من ميزات خاصة مقارنة بوحدات التحكم الدقيقة الأخرى مثل أوضاع السكون الستة و ADC المدمج والمذبذب الداخلي واتصال البيانات التسلسلي وما إلى ذلك. ميكروكنترولر AVR متوفرة في تكوينات مختلفة من 8 بت و 16 بت و 32 بت لأداء عمليات مختلفة.




متحكم AVR

متحكم AVR

USART اتصالات البيانات التسلسلية في متحكم AVR

يرمز USART إلى جهاز الاستقبال والإرسال العالمي المتزامن وغير المتزامن. إنه اتصال تسلسلي لبروتوكولين. يستخدم هذا البروتوكول لإرسال واستقبال البيانات شيئًا فشيئًا فيما يتعلق بنبضات الساعة على سلك واحد. ال متحكم AVR يحتوي على دبابيس: TXD و RXD ، والتي تستخدم خصيصًا لنقل واستقبال البيانات بشكل تسلسلي. يتكون أي متحكم AVR من بروتوكول USART مع ميزاته الخاصة.



اتصالات USART في متحكم AVR

اتصالات USART في متحكم AVR

الميزات الرئيسية لبرنامج AVR USART

  • يدعم بروتوكول USART بروتوكول الازدواج الكامل.
  • يولد معدل باود عالي الدقة.
  • وهو يدعم نقل البيانات التسلسلية من 5 إلى 9 ويتكون من بتات توقف.

تكوين USART Pin

يتكون USART الخاص بـ AVR من ثلاثة دبابيس:


  • RXD: منفذ استقبال USART (ATMega8 PIN 2 ATMega16 / 32 Pin 14)
  • TXD: دبوس جهاز الإرسال USART (ATMega8 PIN 3 ATMega16 / 32 Pin 15)
  • XCK: دبوس ساعة USART (ATMega8 PIN 6 ATMega16 / 32 Pin 1)

أساليب عملها

يعمل متحكم AVR لبروتوكول USART في ثلاثة أوضاع هي:

  • الوضع العادي غير المتزامن
  • وضع السرعة المزدوجة غير المتزامن
  • الوضع المتزامن
أساليب عملها

أساليب عملها

الوضع العادي غير المتزامن

في هذا النمط من الاتصال ، يتم إرسال البيانات واستقبالها شيئًا فشيئًا بدون نبضات ساعة بواسطة معدل البث بالباود المحدد مسبقًا الذي يحدده سجل UBBR.

وضع السرعة المزدوجة غير المتزامن

في وضع الاتصال هذا ، يتم تعيين البيانات المنقولة بمعدل ضعف معدل البث بالباود بواسطة سجل UBBR وتعيين بتات U2X في سجل UCSRA. هذا هو الوضع عالي السرعة للاتصال المتزامن لنقل البيانات واستقبالها بسرعة. يستخدم هذا النظام حيث يلزم وجود إعدادات دقيقة لمعدل البث بالباود وساعة النظام.

الوضع المتزامن

في هذا النظام ، يتم تعيين إرسال واستقبال البيانات فيما يتعلق بنبض الساعة UMSEL = 1 في سجل UCSRC.

تكوين USART في متحكم AVR

يمكن تكوين USART باستخدام خمسة سجلات مثل ثلاثة سجلات تحكم ، سجل بيانات واحد وسجل اختيار معدل الباود ، مثل UDR و UCSRA و UCSRB و UCSRC و UBRR.

7 خطوات لتأليف البرنامج

الخطوة 1: حساب وضبط معدل الباود

يتم تعيين معدل البث بالباود لـ USART / UART بواسطة مسجل UBRR. يستخدم هذا السجل لتوليد نقل البيانات بسرعة محددة. UBRR هو سجل 16 بت. نظرًا لأن AVR عبارة عن متحكم دقيق 8 بت وأي حجم مسجل به هو 8 بت. ومن ثم ، هنا يتكون سجل UBRR 16 بت من سجلين 8 بت مثل UBRR (H) ، UBRR (L).

صيغة معدل الباود هي

BAUD = Dark / (16 * (UBBR + 1))

صيغة سجل UBRR هي

UBRR = مظلم / (16 * (BAUD-1))

تردد الميكروكونترولر AVR هو 16 ميجا هرتز = 16000000 فلنفترض أن معدل البث بالباود هو 19200 بت في الثانية ، ثم

UBRR = 16000000 / (16 * (19200-1))

UBRR = 16000000 / (16 * (19200-1))

UBRR = 51.099

ابحث في النهاية عن معدل الباود

الباود = 16000000 / (16 * (51 + 1))
UBRR = 19230 بت في الثانية

الخطوة 2: تحديد وضع البيانات

يتم تعيين وضع نقل البيانات وبت البداية وبت التوقف وحجم الحرف عن طريق التحكم وسجل الحالة UCSRC.

تحديد وضع البيانات

تحديد وضع البيانات

الخطوه 3: تحديد وضع نقل البيانات

يتم تحديد الوضع المتزامن وغير المتزامن بواسطة بت UMSEL من سجل حالة التحكم. إذا أعطينا UMSEL = 0 ، فإن USART يعمل في الوضع غير المتزامن ، وإلا يعمل في الوضع المتزامن.

تحديد وضع نقل البيانات

تحديد وضع نقل البيانات

الخطوة 4: بدء بت وتوقف بت

بت البداية وبت التوقف هي طريقة لإرسال واستقبال البيانات بشكل متسلسل. بشكل عام ، تتكون أي شهرة للبيانات من بت واحد ثابت وبت توقف واحد ، لكن المتحكم الدقيق AVR لديه بت بدء واحد وبتت توقف لمعالجة البيانات. يمكن أن يكون بت التوقف الإضافي مفيدًا لإضافة القليل من وقت معالجة الاستلام الإضافي. إنه مفيد بشكل خاص لمعدلات نقل البيانات العالية ، في حين أن سرعة نقل البيانات عالية جدًا ، لذلك لا نحصل على البيانات المناسبة. وبالتالي ، يمكننا زيادة وقت المعالجة باستخدام بت توقف للحصول على البيانات المناسبة.

بدء بت وتوقف بت

بدء بت وتوقف بت

يتم تحديد عدد بتات التوقف بواسطة بت USBS الخاص بـ UCSRC - سجل حالة التحكم. USBS = 0 ، بت توقف واحد ، و USBS = 1 ، لوحدات بت توقف.

الخطوة 5: اضبط حجم الحرف

كما هو الحال مع ميكروكنترولر الأساسية إرسال واستقبال بايت البيانات (8 بت) في وقت واحد ، سواء في متحكم AVR ، يمكننا اختيار تنسيق إطار البيانات في كل إطار بواسطة بت UCSZ من سجل UCSRC.

تنسيق إطار البيانات

تنسيق إطار البيانات

الخطوة 6: تخزين البيانات المستلمة

يتكون متحكم AVR من سجل UDR المؤقت لإرسال واستقبال البيانات. UDR عبارة عن سجل مخزن مؤقت 16 بت حيث يتم استخدام 8 بت لتلقي (RXB) يتم استخدام البيانات والبتات الأخرى لإرسال البيانات (TXB). سيكون إرسال سجل البيانات العازلة هو الوجهة إلى سجل UDR للبيانات المكتوبة على موقعه. سيؤدي استلام سجل بيانات المخزن المؤقت إلى إرجاع محتوى سجل UDR.

الخطوة 7: تمكين المرسل والاستقبال

سيتم السماح بالبيانات المرسلة والمستلمة بواسطة دبابيس RXC و TXC للميكروكونترولر والتي يتم تعيينها بواسطة سجل UCSRA الخاص بالمتحكم الدقيق. يتم إكمال بت العلم الذي تم تعيينه بواسطة متحكم البيانات عن طريق الاستقبال والإرسال (TXC = RXC = 1).

ضاعف معدل الباود

يمكننا مضاعفة معدل نقل اتصال USART الخاص بـ AVR متحكم دقيق من 16 بت إلى 8 بت بشكل فعال عن طريق U2X –bit في سجل UCSRA. يؤثر هذا البت فقط على العملية غير المتزامنة. إذا تمكنا من ضبط هذا البت (U2X = 1) ، فسيقلل معدل البث بالباود من 16 بت إلى 8 بت ، مما يضاعف بشكل فعال معدل النقل للاتصال المتزامن.

هذه ميزة متقدمة من متحكم AVR للمعالجة السريعة للبيانات.

برنامج USART

كل متحكم محدد مسبقًا باستخدام IDE محدد ، وبناءً على IDE هذا ، ميكروكنترولر مبرمجة بـ C مدمج أو لغة التجميع. تم تطوير برمجة متحكم AVR بواسطة استوديو AVR. علاوة على ذلك ، إذا كنت تريد معلومات إضافية حول خطوات لبناء المشاريع القائمة على متحكم ، أو معلومات مفصلة حول هذا الموضوع ، يمكنك الاتصال بنا من خلال التعليق أدناه.