الموقتات والعدادات في متحكم 8051 وتطبيقاته

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





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

هناك نوعان من أجهزة توقيت وعدادات 16 بت في 8051 متحكم : المؤقت 0 والمؤقت 1. يتكون كلا المؤقتين من سجل 16 بت حيث يتم تخزين البايت السفلي في TL ويتم تخزين البايت الأعلى في TH. يمكن استخدام الموقت كعداد وكذلك لتشغيل التوقيت الذي يعتمد على مصدر نبضات الساعة للعدادات.




الموقتات والعدادات

الموقتات والعدادات

تحتوي العدادات والمؤقتات في متحكم 8051 على اثنين من سجلات الوظائف الخاصة: TMOD (سجل وضع المؤقت) و TCON (سجل التحكم في المؤقت) ، والتي تستخدم للتنشيط والتكوين توقيت وعدادات .



التحكم في وضع المؤقت (TMOD): TMOD عبارة عن سجل 8 بت يستخدم لتحديد المؤقت أو العداد ووضع المؤقتات. يتم استخدام 4 بتات أقل للتحكم في تشغيل المؤقت 0 أو عداد 0 ، ويتم استخدام 4 بت المتبقية للتحكم في تشغيل المؤقت 1 أو عداد 1. يوجد هذا السجل في سجل SFR ، وعنوان سجل SFR هو 89.

التحكم في وضع المؤقت (TMOD)

التحكم في وضع المؤقت (TMOD)

بوابة: إذا تم ضبط بت البوابة على '0' ، فيمكننا بدء وإيقاف مؤقت 'البرنامج' بنفس الطريقة. إذا تم ضبط البوابة على '1' ، فيمكننا أداء مؤقت الأجهزة.

C / T: إذا كانت بت C / T هي '1' ، فإنها تعمل كوضع عداد ، وبالمثل عند ضبط C +
= / T بت هي '0' وهي تعمل كوضع مؤقت.


وضع تحديد بت: M1 و M0 هما بتات تحديد الوضع ، والتي تُستخدم لتحديد عمليات المؤقت. هناك أربعة أوضاع لتشغيل العدادات.

الوضع 0: هذا هو وضع 13 بت مما يعني أن عملية المؤقت تكتمل بنبضات '8192'.

الوضع 1: هذا هو وضع 16 بت ، مما يعني اكتمال تشغيل المؤقت بأقصى نبضات ساعة '65535'.

الوضع 2: هذا الوضع عبارة عن وضع إعادة تحميل تلقائي 8 بت ، مما يعني أن تشغيل المؤقت يكتمل بنبضات ساعة '256' فقط.

الوضع 3: هذا الوضع هو وضع تقسيم الوقت ، مما يعني قيم التحميل في T0 ويبدأ تلقائيًا T1.

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

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

اختيار الوضع قيم العدادات والعداد 8051

وضع قيم اختيار الموقتات والعدادات

وضع قيم اختيار الموقتات والعدادات

سجل التحكم في الموقت (TCON): TCON هو سجل آخر يستخدم للتحكم في عمليات العداد والمؤقتات في وحدات التحكم الدقيقة. إنه سجل 8 بت حيث تكون أربع بتات علوية مسؤولة عن أجهزة ضبط الوقت والعدادات والبتات السفلية مسؤولة عن المقاطعات.

سجل التحكم في المؤقت (TCON)

سجل التحكم في المؤقت (TCON)

TF1: يرمز TF1 إلى بت العلم 'timer1'. عند حساب التأخير الزمني في جهاز ضبط الوقت 1 ، يصل كل من TH1 و TL1 إلى القيمة القصوى 'FFFF' تلقائيًا.

مثال: بينما (TF1 == 1)

كلما كان TF1 = 1 ، امسح بت العلم وأوقف المؤقت.

TR1: TR1 تعني بت تشغيل أو إيقاف مؤقت 1. يمكن أن يكون بدء تشغيل المؤقت من خلال تعليمات البرامج أو من خلال طريقة الأجهزة.

EX: بوابة = 0 (مؤقت البدء 1 من خلال تعليمات البرنامج)
TR1 = 1 (مؤقت البدء)

TF0: يرمز TF0 إلى بت العلم 'timer0'. عند حساب التأخير الزمني في المؤقت 1 ، يصل TH0 و TL0 إلى الحد الأقصى لقيمة 'FFFF' تلقائيًا.

مثال: بينما (TF0 == 1)
كلما كان TF0 = 1 ، امسح بت العلم وأوقف المؤقت.

TR0: يرمز TR0 إلى بت تشغيل أو إيقاف 'timer0' ، ويمكن أن يكون بدء تشغيل هذا المؤقت من خلال تعليمات البرامج أو من خلال طريقة الأجهزة.

EX: بوابة = 0 (مؤقت البدء 1 من خلال تعليمات البرنامج)
TR0 = 1 (مؤقت البدء)

حسابات التأخير الزمني لـ 8051 متحكم

المتحكم 8051 يعمل بتردد 11.0592 ميجا هرتز.

تردد 11.0592 ميجا هرتز = 12 نبضة

1 نبضة ساعة = 11.0592 ميجا هرتز / 12

F = 0.921 ميجا هرتز

تأخير الوقت = 1 / واو

T = 1 / 0.92 ميجا هرتز

T = 1.080506 لنا (لدورة '1')

1000us = 1 مللي ثانية

1000 مللي ثانية = 1 ثانية

إجراء لحساب برنامج التأخير

1. يتعين علينا أولاً تحميل قيمة سجل TMOD لـ 'Timer0' و 'Timer1' في أوضاع مختلفة. على سبيل المثال ، إذا أردنا تشغيل timer1 في الوضع 1 ، فيجب تكوينه على أنه 'TMOD = 0x10'.

2. عندما نقوم بتشغيل الموقت في الوضع 1 ، يأخذ المؤقت النبضات القصوى 65535. ثم يجب طرح نبضات التأخير الزمني المحسوبة من النبضات القصوى ، ثم تحويلها بعد ذلك إلى قيمة سداسية عشرية. يجب تحميل هذه القيمة في timer1 بت أعلى وبتات أقل. عملية المؤقت هذه مبرمجة باستخدام جزءا لا يتجزأ من C في متحكم .

مثال: تأخير الوقت 500us

500us / 1.080806us

461 نبضات

ف = 65535-461

ف = 65074

65074 محوّل بواسطة النظام العشري السداسي = FE32

TH1 = 0xFE

TL1 = 0x32

3. ابدأ المؤقت 1 'TR1 = 1'

4. مراقبة بت العلم 'while (TF1 == 1)'

5. امسح بت العلم 'TF1 = 0'

6. ثبّت المؤقت 'TR1 = 0'

برامج المثال:

البرنامج- 1

البرنامج- 1

البرنامج - 2

البرنامج - 2

البرنامج- 3

البرنامج- 3

عدادات 8051

يمكننا استخدام عداد بالحفاظ على C / T مرتفعًا ، أي المنطق '1' في سجل TMOD. لفهم أفضل ، قدمنا ​​برنامجًا واحدًا يستخدم المؤقت 1 كعداد. هنا ، يتم توصيل مصابيح LED بـ 8051 Port 2 ، والمحول إلى المؤقت 1 دبوس P3.5 ، وبالتالي ، إذا تم الضغط على المفتاح ، فسيتم حساب القيمة. خلاف ذلك ، يقوم المستشعر المتصل خارجيًا بدبوس العداد هذا كإدخال بعملية العد هذه.

برنامج العداد

برنامج العداد

تطبيقات الموقتات والعدادات 8051

عداد رقمي 8051

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

عداد رقمي 8051

عداد رقمي 8051

دارة تأخير الوقت باستخدام متحكم 8051

يوضح الشكل أدناه كيف يمكن تنفيذ عملية المؤقت لتبديل مصابيح LED بطريقة فعالة. تتم برمجة عملية التأخير الزمني لمجموعة مصابيح LED في متحكم دقيق بالطريقة التي تمت مناقشتها أعلاه. هنا ، يتم توصيل مجموعة من مصابيح LED بالمنفذ 2 بنظام إمداد مشترك. عندما يتم تشغيل هذه الدائرة على أساس التأخير الزمني برنامج في متحكم بشكل مناسب ، يتم تشغيل هذه المصابيح.

دائرة تأخير الوقت

دائرة تأخير الوقت

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

اعتمادات الصورة:

  • عداد رقمي مع 8051 من اليوم
  • دارة تأخير الوقت vshamu