সুচিপত্র:

সার্কিটপাইথন সহ 4x4 কীপ্যাড ব্যবহার করা: 4 টি ধাপ
সার্কিটপাইথন সহ 4x4 কীপ্যাড ব্যবহার করা: 4 টি ধাপ

ভিডিও: সার্কিটপাইথন সহ 4x4 কীপ্যাড ব্যবহার করা: 4 টি ধাপ

ভিডিও: সার্কিটপাইথন সহ 4x4 কীপ্যাড ব্যবহার করা: 4 টি ধাপ
ভিডিও: DIY Portable Electronic MIDI Drum Pads with built-in sounds using Raspberry-Pi Pico 2024, নভেম্বর
Anonim
সার্কিটপাইথনের সাথে 4x4 কীপ্যাড ব্যবহার করা
সার্কিটপাইথনের সাথে 4x4 কীপ্যাড ব্যবহার করা

এই সস্তা কীপ্যাড আপনার সার্কিটপাইথন প্রকল্পগুলিতে সংখ্যাসূচক ইনপুটের একটি সহজ পদ্ধতি প্রদান করে। আমি এটি একটি Adafruit ItsyBitsy M0 এক্সপ্রেস দিয়ে ব্যবহার করতে যাচ্ছি।

আপনার প্রয়োজন হবে:

  • কীপ্যাড - আমার 4x4
  • ItsyBitsy M0 Express বা অনুরূপ বোর্ড
  • Mu এডিটর আপনার কম্পিউটারে ইনস্টল করা আছে
  • কোডটি ফ্ল্যাশ করার জন্য ইউএসবি কেবল

ধাপ 1: কীপ্যাড কিভাবে কাজ করে

কীপ্যাড কিভাবে কাজ করে
কীপ্যাড কিভাবে কাজ করে

তাদের কীপ্যাডে 16 টি সহজ, ধীর অভিনয় বুদবুদ সুইচ রয়েছে যা 4 টি গ্রিডে নীচে 8 টি সংযোগ সহ রয়েছে। যদি আমরা 0 থেকে 7 পর্যন্ত বাম থেকে সংখ্যা করি, 0 থেকে 3 সংযোগগুলি প্রতিটি সারির সাথে সংযুক্ত থাকে। উপরের সারিতে সংযোগ 0 এবং নিচের সারিতে সংযোগ 3। সংযোগ 4 থেকে 7 বাম কলামে সংযোগ 4 এবং ডান কলামে সংযোগ 7 এর সাথে কলামগুলির সাথে সংযুক্ত। 16 টি সুইচের প্রতিটি একটি ভিন্ন সারি/কলাম সংমিশ্রণের মধ্যে যোগদান করে। যদি আমরা key7 চাপি তাহলে তৃতীয় সারিটি বাম কলামে যুক্ত হবে। আমরা বুঝতে পারি যদি 5 টি কী চাপানো হয় যদি তার সারি উচ্চ হয় এবং আমরা তার কলামে একটি উচ্চ পড়তে পারি। এটি করার জন্য আমরা সারিতে আউটপুট এবং কলাম থেকে ইনপুট।

আমাদের প্রতিটি সারি উচ্চতর করে পাল্টাতে হবে, যখন অন্য সারিগুলি কম হবে, প্রতিটি কলামটি পর্যায়ক্রমে পড়ুন যতক্ষণ না আমরা একটি উচ্চ ইনপুট পাই। এটি সহজেই লুপের জন্য নেস্টেড দ্বারা পরিচালিত হয়।

আমাদের এই বিষয়টি বিবেচনায় নেওয়া দরকার যে এই বুদ্বুদ সুইচগুলি বেশ ধীর গতিতে কাজ করে এবং এগুলি বন্ধ করার জন্য বেশ চাপ দেওয়া দরকার। এইভাবে 16 টি সুইচ স্ক্যান করা খুব তাড়াতাড়ি করা যায় কিন্তু একটি কী প্রেস নিতে আমাদের বারবার স্ক্যান করতে হয়। আমাদের অল্প সময়ের বিলম্বের সাথে 'ডিবাউন্স' করতে হবে যাতে আমরা প্রতিবার চাপার সময় কীগুলি পুনরাবৃত্তি করতে না পারি।

সুইচগুলি বেশ 'স্কুইশি' হওয়ায় ব্যবহারকারীর কাছে কিছু প্রতিক্রিয়া প্রয়োজন যাতে বোঝা যায় যে একটি কী প্রেস পড়া হয়েছে। অন্তর্নির্মিত LED প্রতিবার একটি কী প্রেস অনুভূত হলে ফ্ল্যাশ করা হয়।

ধাপ 2: শারীরিক সংযোগ

শারীরিক সংযোগ
শারীরিক সংযোগ

KeyPad0 1 2 3 4 5 6 7 এ বাম থেকে ডানে সংযোগ

D7 D9 D10 D11 A5 A4 A3 A2 ItsyBitsy তে

D7 থেকে D11 আউটপুট হিসাবে সেট করা হয়েছে যখন A5 থেকে A2 পুলডাউন সহ ইনপুট হিসাবে সেট আপ করা হয়েছে।

কোডটিতে প্রচুর মন্তব্য রয়েছে এবং এটি অনুসরণ করা বেশ সহজ হওয়া উচিত।

ধাপ 3: কিভাবে Getkey () কাজ করে

কিভাবে Getkey () কাজ করে
কিভাবে Getkey () কাজ করে

এই ফাংশনটি একক কী প্রেসের জন্য কীপ্যাড স্ক্যান করে। এটি একটি কী সুইচ বন্ধ আছে কিনা তা দেখার জন্য দ্রুত প্রতিটি চাবিগুলি সর্বাধিক 10 বার পরীক্ষা করে। যদি একটি কী চাপানো হয় তবে এটি মূল মানটি ফেরত দেয়, উপরে থেকে নীচে বাম থেকে ডানে গণনা করে (0… 15) নীচের সারির মানগুলি লক্ষ্য করুন: 14, 0, 15, 13 (হেক্স ই, 0, এফ, ডি)। যদি কোন চাবি চাপানো না হয় তবে এটি -999 একটি ত্রুটি কোড হিসাবে ফেরত দেয় যা সহজেই মূল প্রোগ্রামে নেওয়া যায়। ব্যবহারকারীর মতামত হিসাবে একটি কী প্রেস নেওয়া হলে অন্তর্নির্মিত LED ফ্ল্যাশ করে। এটি বেশ দ্রুত চলে এবং 0.2 সেকেন্ডের ডি-বাউন্স অপেক্ষা কেবল তখনই ব্যবহৃত হয় যখন একটি কী চাপানো হয়।

ধাপ 4: Getvalue (সংখ্যা)

Getvalue (সংখ্যা)
Getvalue (সংখ্যা)

এই রুটিন সংখ্যাসূচক কী থেকে একটি n অঙ্কের মান সরবরাহ করে। এটি লাল চাবিকে উপেক্ষা করে।

এই পাইথন কোডটি সহজেই অন্য একটি ডিভাইসে চালানোর জন্য রূপান্তরিত হতে পারে, যেমন রাস্পবেরি পাই, আপনাকে সম্ভবত স্ক্রিপ্টের শীর্ষে পিন সেটআপ লাইনগুলি পরিবর্তন করতে হবে।

কোডটি দরকারী মনে হলে দয়া করে আমাকে জানান।

নিরাপদ থাকুন এবং মজা করুন!

প্রস্তাবিত: