Chapter 11: 4 digit interrupt counter | পর্ব ১১ঃ ৪ ডিজিটের ইন্টারাপ্ট কাউন্টার।
ইন্টারাপ্ট কী?:
ইন্টারাপ্ট হচ্ছে এমনকিছু কাজ যা মাইক্রোকন্ট্রোলার মূল ফাংশনের বাইরে গিয়ে ধারাবাহিকভাবে সম্পন্ন করে। যদি আমরা মাইক্রোকন্ট্রোলারকে ইন্টারাপটের মাধ্যমে কিছু করাতে চাই তাহলে আমাদের একটি ইন্টারাপট সাবরুটিন(ISR) ফাংশন লিখতে হবে। যখনই কোনো ইন্টারাপ্ট জেনারেটেড হয় তখনই মাইক্রোকন্ট্রোলার মূল ফাংশন থেকে বেরিয়ে ISR এ প্রবেশ করে। ISR এর ভেতরের কাজ সম্পন্ন করে মূল ফাংশনের আগের পজিশনে ফিরে আসে।
ইন্টারাপ্ট ২ প্রকারঃ
এক্সটার্নাল ইন্টারাপ্টঃ বাইরের কোনো উৎস যেমন বাটন থেকে সৃষ্ট ইন্টারাপট।
ইন্টার্নাল ইন্টারাপ্টঃ এডিসি, টাইমার, ইউজার্ট ইত্যাদি থেকে সৃষ্ট ইন্টারাপ্ট।
ATmega16 তে মোট ৩ টি এক্সটার্নাল ইন্টারাপ্ট পিন আছে। PB2,PD2,PD3.
এক্সটার্নাল ইন্টারাপ্ট সম্পর্কে আগের অধ্যায়ে আরো বিস্তারিত আলোচনা করা হয়েছে।
এই এক্সপেরিমেন্টে আমরা PD2 এবং PD3 এর সাথে দুটি বাটন কানেক্ট করব। PORTB এর সাথে কানেক্ট করব 7 segment Multiplexed Module. মডিউলটি ০ থেকে গননা শুরু করবে। প্রতিটি বাটন একবার করে প্রেস করলেই ইন্টারাপ্ট জেনারটেড হবে। PD2 একবার প্রেস করলে মডিউলে দেখানো সংখ্যা ১ বৃদ্ধি পাবে। PD3 প্রেস করলে মডিউলে দেখানো সংখ্যা ১ কমবে। এভাবে মডিউলটি দিয়ে ইংরেজিতে সর্বোচ্চ ৯৯৯৯ এবং সর্বনিম্ন ০ পর্যন্ত গননা করা যাবে।
মালটিপ্লেক্সিংঃ
7 segment Multiplexed Module একটি ৪ ডিজিটের কমন অ্যানোড সেভেন সেগমেন্ট ডিস্প্লে দিয়ে তৈরী। আমাদের এক্সপেরিমেন্টের মূলনীতি থেকে বোঝা যায় সেভেন সেগমেন্টের চারটি ডিজিট একই সময়ে চারটি ভিন্ন ভিন্ন সংখ্যা দেখাবে। তার মানে একে আমাদের এমনভাবে ব্যবহার করতে হবে যেন চারটি ডিজিটই একের পর এক এত দ্রুত ভাবে জ্বলে যেন মানুষের চোখ বিরতিটুকু ধরতে না পারে। খালি চোখে দেখে মনে হবে যেন চারটি ডিজিটই সবসময় একসাথে জ্বলে আছে। এই কাজটি করতে আমাদের মালটিপ্লেক্সিং এর সাহায্য নিতে হবে।আমাদের মডিউলে সেভেন সেগমেন্টের চারটি কমন পিনই নিচের ছবিটির মতো পিএনপি ট্রাঞ্জিস্টর দিয়ে সুইচিং করা আছে।
উপরের ছবিতে আমরা দেখতে পাচ্ছি যে পিএনপি ট্রাঞ্জিস্টরগুলোর বেইজে আমরা যদি ০ দিই কালেক্টরের সাথে সংযুক্ত পিনটি হাই হবে। কাজেই, আমরা যদি S1-S4 কে মাইক্রোকন্ট্রোলারের চারটি পিনের সাথে সংযুক্ত করি এবং পিনগুলোকে এক এক করে লো করি তাহলে সেভেন সেগমেন্টের কমন পিনগুলো হাই হতে থাকবে। এই কাজটি আমাদের প্রোগ্রামের মাধ্যমে করা হয়েছে।
প্রয়োজনীয় যন্ত্রপাতিঃ
এই এক্সপেরিমেন্টের জন্য প্রয়োজনীয় যন্ত্রপাতিগুলো নিম্নরূপঃ
প্রয়োজনীয় যন্ত্রপাতি | পরিমান | প্রোডাক্ট লিংক |
7 Segment Multiplexed Module | 1 | |
ATmega16A | 1 | এখানে ক্লিক করুন |
AVR trainer kit | 1 | এখানে ক্লিক করুন |
Female to female jumper | 12 | এখানে ক্লিক করুন |
কেউ চাইলে AVR trainer kit এর পরিবর্তে প্রোগ্রামিং এর জন্য AVR programmer এবং সার্কিট কানেকশনের জন্য ব্রেডবোর্ড ব্যবহার করতে পারেন।
পুরো সার্কিট ডায়াগ্রাম নিচে দেখানো হলঃ
প্রোগ্রাম
প্রোগ্রাম ও আরও হাই রেজ্যুলেশনের সার্কিট ডায়াগ্রাম ডাউনলোড করতে এইখানে ক্লিক করুন।
আরও জানতে চাইলেঃ
- ইন্টারাপ্ট সম্পর্কে:
- সেভেন সেগমেন্ট মাল্টিপ্লেক্সিং সম্পর্কেঃ