আমি বেশ কয়েকটি প্রকল্পের জন্য PIC16F877
( ডেটাশিট ) ব্যবহার করেছি । একক বহিরাগত পিন পরিবর্তন বাধাদানের জন্য, আপনি PORTB0
বাধা ব্যবহার করতে পারেন । তবে এখন আমার একক সার্কিটে 8 টি স্বতন্ত্র বহিরাগত পিন পরিবর্তন বাধা সমর্থন করতে হবে।
ডেটাসিটে এটি বলেছে যে এখানে 15 টি বাধা রয়েছে PIC16F877
, তবে আমি অনুমান করি যেগুলি টাইমার ওভারফ্লো বাধা ইত্যাদি সহ গণনা করা হয় ... যা এই ক্ষেত্রে অকেজো।
এটিই ডাটাশিট INTCON
রেজিস্টার সম্পর্কে বলে ।
বিট0 ব্যবহার করে আমার 4 টি বাধা থাকতে পারে RBIF
? এটি পরিবর্তনের প্রতিনিধিত্ব করে PB7:PB4
। কোন পিনটি পরিবর্তিত হয়েছে তা আমি কীভাবে সনাক্ত করতে পারি, এটি বাধাপ্রাপ্ত রুটিনে বন্দরের মানটি পড়ে?
এমনকি আমি উপরেও ইতিবাচক উত্তর পেয়েছি, আমার আটটি বাধা দরকার? অবশ্যই আমি এখনও ব্যবহার করতে পারি INTE
, PORTB0
পরিবর্তনের জন্য । তারপরে 4 + 1 = 5
, তবে অন্যান্য 3 সম্পর্কে কী হবে? (তবে 8 টি বিঘ্নিত ইভেন্টগুলি একই ধরণের, 4 + 1 + 3 = 8
জিনিসটি কুৎসিত বলে মনে হচ্ছে, তাই না?)
8 পিন নিরীক্ষণ করা মাইক্রো-কন্ট্রোলারের অন্য কোনও ভারী কাজ আশা করা যায় না। (অন্যান্য কাজের বিষয়ে কথা বলার জন্য, এটি পৃথক কাউন্টার ভেরিয়েবলগুলির একটি সেট বজায় রাখতে হবে এবং প্রায়শই প্রায় 4 বাইট পিসিতে সিরিয়ালি ট্রান্সমিট করতে হয়)
কোন পরামর্শ স্বাগত। এমনকি যদি এটি আরও উপযুক্ত একটির জন্য মাইক্রো-কন্ট্রোলার পরিবর্তন করার বিষয়ে (তবে আহ .. আমাকে PIC
এস থেকে দূরে যেতে বলবেন না )।