8051 মাইক্রোকন্ট্রোলার এবং এর অ্যাপ্লিকেশনগুলিতে টাইমার এবং কাউন্টারগুলি

সমস্যাগুলি দূর করার জন্য আমাদের উপকরণটি ব্যবহার করে দেখুন





অনেক মাইক্রোকন্ট্রোলার অ্যাপ্লিকেশন বাহ্যিক ইভেন্টগুলির গণনা যেমন ডাল ট্রেনগুলির ফ্রিকোয়েন্সি এবং কম্পিউটারের ক্রিয়াকলাপগুলির মধ্যে সুনির্দিষ্ট অভ্যন্তরীণ সময় বিলম্বের প্রজন্মের প্রয়োজন require এই দুটি কাজই সফ্টওয়্যার কৌশল দ্বারা প্রয়োগ করা যেতে পারে, তবে গণনা করার জন্য সফ্টওয়্যার লুপগুলি, এবং সময় সঠিক ফলাফল দেয় না বরং আরও গুরুত্বপূর্ণ কার্য সম্পাদন করা হয়। এই সমস্যাগুলি এড়াতে, মাইক্রো-কন্ট্রোলারগুলির টাইমার এবং কাউন্টারগুলি সহজ এবং স্বল্প ব্যয়ের অ্যাপ্লিকেশনগুলির জন্য ভাল বিকল্প। এই টাইমার এবং কাউন্টার হিসাবে ব্যবহৃত হয় 8051 মাইক্রোকন্ট্রোলারে বাধা দেয়

এখানে দুটি 16-বিট টাইমার এবং কাউন্টার রয়েছে 8051 মাইক্রোকন্ট্রোলার : টাইমার 0 এবং টাইমার 1. উভয় টাইমার 16-বিট রেজিস্ট্রার নিয়ে গঠিত যার মধ্যে নিম্ন বাইট টিএল তে সংরক্ষণ করা হয় এবং উচ্চতর বাইট TH তে সংরক্ষণ করা হয়। টাইমার কাউন্টার হিসাবে পাশাপাশি সময় পরিচালনার জন্য ব্যবহার করা যেতে পারে যা কাউন্টারগুলিতে ঘড়ির ডালের উত্সের উপর নির্ভর করে।




টাইমার এবং কাউন্টার

টাইমার এবং কাউন্টার

8051 মাইক্রোকন্ট্রোলারের কাউন্টার এবং টাইমারগুলিতে দুটি বিশেষ ফাংশন রেজিস্টার থাকে: টিএমডিড (টাইমার মোড রেজিস্টার) এবং টিসিওএন (টাইমার কন্ট্রোল রেজিস্টার), যা সক্রিয়করণ এবং কনফিগার করার জন্য ব্যবহৃত হয় টাইমার এবং কাউন্টার



টাইমার মোড কন্ট্রোল (টিএমওড): টিএমওড হ'ল একটি 8-বিট রেজিস্ট্রার যা টাইমার বা কাউন্টার এবং টাইমারগুলির মোড নির্বাচনের জন্য ব্যবহৃত হয়। নিম্ন 4-বিটগুলি টাইমার 0 বা কাউন্টার 0 এর নিয়ন্ত্রণের জন্য ব্যবহৃত হয় এবং বাকী 4-বিট টাইমার 1 বা কাউন্টার 1 এর নিয়ন্ত্রণের জন্য ব্যবহৃত হয় his

টাইমার মোড কন্ট্রোল (টিএমওডি)

টাইমার মোড কন্ট্রোল (টিএমওডি)

গেট: গেট বিটটি যদি '0' তে সেট করা থাকে, তবে আমরা একইভাবে 'সফ্টওয়্যার' টাইমারটি শুরু করতে এবং থামাতে পারি। গেটটি যদি ‘1’ তে সেট করা থাকে, তবে আমরা হার্ডওয়্যার টাইমারটি সম্পাদন করতে পারি।

সি / টি: যদি সি / টি বিটটি ‘1’ হয়, তবে এটি কাউন্টার মোড হিসাবে অভিনয় করছে এবং একইভাবে সি + সেট করার সময়
= / টি বিটটি ‘0’ এটি টাইমার মোড হিসাবে অভিনয় করছে।


মোড নির্বাচন বিট: M1 এবং M0 মোড নির্বাচন বিট হয়, যা টাইমার ক্রিয়াকলাপ নির্বাচন করতে ব্যবহৃত হয়। টাইমারগুলি পরিচালনা করতে চারটি পদ্ধতি রয়েছে।

মোড 0: এটি একটি 13-বিট মোড যার অর্থ টাইমার অপারেশন '8192' ডাল দিয়ে সম্পূর্ণ।

মোড 1: এটি এ 16-বিট মোড, যার অর্থ টাইমার অপারেশন সর্বাধিক ঘড়ির ডালের সাথে সম্পূর্ণ হয় যা '65535'।

মোড 2: এই মোডটি একটি 8-বিট অটো রিলোডলোড মোড, যার অর্থ টাইমার অপারেশন কেবলমাত্র '256' ক্লক ডাল দিয়ে সম্পূর্ণ tes

মোড 3: এই মোডটি একটি বিভক্ত-টাইমার মোড, যার অর্থ T0 এ লোডিং মানগুলি এবং স্বয়ংক্রিয়ভাবে T1 শুরু হয়।

মোড নির্বাচন বিট

মোড নির্বাচন বিট

মোড নির্বাচন টাইমার এবং 8051 এর কাউন্টার এর মান

টাইমার এবং কাউন্টারগুলির মোড নির্বাচনের মান

টাইমার এবং কাউন্টারগুলির মোড নির্বাচনের মান

টাইমার কন্ট্রোল রেজিস্টার (টিসিওএন): টিসিওএন হ'ল মাইক্রোকন্ট্রোলারগুলিতে কাউন্টার এবং টাইমারগুলির ক্রিয়াকলাপ নিয়ন্ত্রণ করতে ব্যবহৃত আরেকটি নিবন্ধ। এটি একটি 8-বিট রেজিস্ট্রার যেখানে চারটি উচ্চ বিট টাইমার এবং কাউন্টারগুলির জন্য দায়ী এবং নিম্ন বিটগুলি বাধাগুলির জন্য দায়ী।

টাইমার নিয়ন্ত্রণ রেজিস্টার (টিসিওএন)

টাইমার নিয়ন্ত্রণ রেজিস্টার (টিসিওএন)

টিএফ 1: টিএফ 1 এর অর্থ দাঁড়ায় ‘টাইমার 1’ পতাকা বিট। যখনই টাইমার 1-এর সময়-বিলম্ব গণনা করা হয়, TH1 এবং TL1 স্বয়ংক্রিয়ভাবে 'এফএফএফএফ' সর্বাধিক মান পর্যন্ত পৌঁছে যায়।

পূর্ব: সময় (টিএফ 1 == 1)

যখনই টিএফ 1 = 1, তারপরে পতাকা বিটটি সাফ করুন এবং টাইমারটি বন্ধ করুন।

টিআর 1: টিআর 1 এর অর্থ টাইমার 1 স্টার্ট বা স্টপ বিট। এই টাইমার শুরুটি সফ্টওয়্যার নির্দেশের মাধ্যমে বা হার্ডওয়্যার পদ্ধতির মাধ্যমে হতে পারে।

EX: গেট = 0 (সফ্টওয়্যার নির্দেশের মাধ্যমে টাইমার 1 শুরু করুন)
TR1 = 1 (শুরুর টাইমার)

TF0: টিএফ 0 এর অর্থ দাঁড়ায় ‘টাইমার0’ পতাকা-বিট। যখনই টাইমার 1 এ সময় বিলম্ব গণনা করা হয়, TH0 এবং TL0 স্বয়ংক্রিয়ভাবে, ‘এফএফএফএফ’ সর্বাধিক মান পর্যন্ত পৌঁছে যায়।

পূর্ব: সময় (টিএফ 0 == 1)
যখনই TF0 = 1, তারপরে পতাকা বিটটি সাফ করুন এবং টাইমারটি বন্ধ করুন।

টিআর0: টিআর0 এর অর্থ দাঁড়ায় ‘টাইমার0’ শুরু বা স্টপ বিট এই টাইমার শুরুটি সফ্টওয়্যার নির্দেশের মাধ্যমে বা হার্ডওয়্যার পদ্ধতির মাধ্যমে হতে পারে।

EX: গেট = 0 (সফ্টওয়্যার নির্দেশের মাধ্যমে টাইমার 1 শুরু করুন)
TR0 = 1 (শুরুর টাইমার)

8051 মাইক্রোকন্ট্রোলারের জন্য সময় বিলম্ব গণনা

8051 মাইক্রোকন্ট্রোলার 11.0592 মেগাহার্টজ ফ্রিকোয়েন্সি সহ কাজ করে।

ফ্রিকোয়েন্সি 11.0592MHz = 12 pule

1 ঘড়ির নাড়ি = 11.0592MHz / 12

এফ = 0.921 মেগাহার্টজ

সময় বিলম্ব = 1 / এফ

টি = 1 / 0.92MHz

টি = 1.080506 আমাদের (‘1’ চক্রের জন্য)

1000us = 1MS

1000ms = 1 সেকেন্ড

বিলম্ব প্রোগ্রামটি গণনা করার পদ্ধতি

1. প্রথমে আমাদের টিএমওডি রেজিস্টার মানটি ‘টাইমার0’ এবং ‘টাইমার 1’র বিভিন্ন মোডের জন্য লোড করতে হবে। উদাহরণস্বরূপ, আমরা মোডে টাইমার 1 পরিচালনা করতে চাইলে এটি অবশ্যই 'টিএমওডি = 0x10' হিসাবে কনফিগার করা উচিত।

২. আমরা যখনই মোড ১-এ টাইমার পরিচালনা করি তখন টাইমার সর্বাধিক 65৫৫৩৫ ডাল গ্রহণ করে Then এই মানটি টাইমার 1 উচ্চতর বিট এবং নিম্ন বিটগুলিতে লোড করতে হবে। এই টাইমার অপারেশনটি ব্যবহার করে প্রোগ্রাম করা হয়েছে একটি মাইক্রোকন্ট্রোলারে এম এম্বেড সি

উদাহরণ: 500us সময় বিলম্ব

500us / 1.080806us

461 চাপ

পি = 65535-461

পি = 65074

65074 হেক্সা দশমিক = FE32 দ্বারা প্রকাশিত

TH1 = 0xFE

টিএল 1 = 0x32

3. টাইমার 1 'টিআর 1 = 1' শুরু করুন

4. 'যখন (টিএফ 1 == 1)' পতাকা বিট নিরীক্ষণ করুন

৫ 'টিএফ 1 = 0' ফ্ল্যাগ বিটটি সাফ করুন

6. 'টিআর 1 = 0' টাইমারটি সাফ করুন

প্রোগ্রামসমূহ উদাহরণ:

প্রোগ্রাম- ১

প্রোগ্রাম- ১

প্রোগ্রাম- ২

প্রোগ্রাম- ২

প্রোগ্রাম- ৩

প্রোগ্রাম- ৩

8051-এ কাউন্টারগুলি

আমরা টিএমওডি রেজিস্টারে সি / টি বিট উঁচু রেখে, অর্থাৎ লজিক ‘1’ রেখে কাউন্টার ব্যবহার করতে পারি। আরও ভাল বোঝার জন্য, আমরা একটি প্রোগ্রাম দিয়েছি যা কাউন্টার হিসাবে টাইমার 1 ব্যবহার করে। এখানে এলইডিগুলি 8051 পোর্ট 2 এর সাথে সংযুক্ত এবং টাইমার 1 পিন P3.5 এ স্যুইচ করা হয়েছে এবং অতএব, যদি স্যুইচ টিপানো হয় তবে মান গণনা করা হবে। অন্যথায়, ইনপুট হিসাবে এই কাউন্টার পিনের সাথে একটি বাহ্যিকভাবে সংযুক্ত সেন্সর এই গণনা অপারেশন করে।

কাউন্টার প্রোগ্রাম

কাউন্টার প্রোগ্রাম

8051 এ টাইমারস এবং কাউন্টারগুলির প্রয়োগ

8051 সহ ডিজিটাল কাউন্টার

8051 সহ ডিজিটাল কাউন্টারটি উপরে বর্ণিত মাইক্রোকন্ট্রোলার প্রোগ্রামিং এবং এটিতে একটি সেন্সর সিস্টেম সংযুক্ত করে অর্জন করা হয়। এই অবজেক্ট কাউন্টারে আইআর সেন্সর ব্যবহার করে যা এটির কাছাকাছি বাধা সনাক্ত করে এবং এটি সক্ষম করে মাইক্রোকন্ট্রোলারের পিন 06. যখন কোনও বস্তু সেন্সরগুলির মধ্য দিয়ে যায়, তখন মাইক্রোকন্ট্রোলার আইআর সেন্সরগুলি থেকে একটি বিঘ্নিত সংকেত পায় এবং গণনাটি বৃদ্ধি করে যা 7-সেগমেন্ট ডিসপ্লেতে প্রদর্শিত হয়।

8051 সহ ডিজিটাল কাউন্টার

8051 সহ ডিজিটাল কাউন্টার

8051 মাইক্রোকন্ট্রোলার ব্যবহার করে সময় বিলম্বকারী সার্কিট

নীচের চিত্রটি দেখায় যে কীভাবে কার্যকরভাবে এলইডি স্যুইচ করার জন্য টাইমার অপারেশন প্রয়োগ করা যেতে পারে। এলইডি সেট জন্য সময় বিলম্ব অপারেশন উপরে আলোচিত পদ্ধতিতে একটি মাইক্রোকন্ট্রোলার মধ্যে প্রোগ্রাম করা হয়। এখানে, একটি সাধারণ সরবরাহ ব্যবস্থার সাহায্যে এলইডিগুলির একটি সেট বন্দর 2 এর সাথে সংযুক্ত রয়েছে। যখন সময়টি বিলম্বের ভিত্তিতে এই সার্কিটটি চালু করা হয় মাইক্রোকন্ট্রোলারে প্রোগ্রাম যথাযথভাবে, এই এলইডিগুলি চালু আছে।

সময় বিলম্ব সার্কিট

সময় বিলম্ব সার্কিট

এটি প্রায় 8051 মাইক্রোকন্ট্রোলার টাইমার এবং বেসিক প্রোগ্রামিং এবং অ্যাপ্লিকেশন সার্কিট সহ কাউন্টারগুলির সাথে সম্পর্কিত। আমরা আশা করি যে এই নিবন্ধটির তথ্য আপনাকে ধারণাটি আরও ভালভাবে বুঝতে যথেষ্ট পরিমাণ ডেটা দিয়েছে। তদ্ব্যতীত, প্রোগ্রামিং 8051 এবং এর সার্কিট সম্পর্কে কোনও প্রযুক্তিগত সন্দেহ থাকলে, আপনি নীচে মন্তব্য করে আমাদের সাথে যোগাযোগ করতে পারেন।

ছবির ক্রেডিট: