সুচিপত্র:

কয়েকটি মাইক্রোকন্ট্রোলার পিন থেকে প্রচুর এলইডি কীভাবে চালাবেন: 6 টি ধাপ (ছবি সহ)
কয়েকটি মাইক্রোকন্ট্রোলার পিন থেকে প্রচুর এলইডি কীভাবে চালাবেন: 6 টি ধাপ (ছবি সহ)

ভিডিও: কয়েকটি মাইক্রোকন্ট্রোলার পিন থেকে প্রচুর এলইডি কীভাবে চালাবেন: 6 টি ধাপ (ছবি সহ)

ভিডিও: কয়েকটি মাইক্রোকন্ট্রোলার পিন থেকে প্রচুর এলইডি কীভাবে চালাবেন: 6 টি ধাপ (ছবি সহ)
ভিডিও: Lecture 03: Microprocessors and Microcontrollers 2024, নভেম্বর
Anonim
কয়েকটি মাইক্রোকন্ট্রোলার পিন থেকে কীভাবে প্রচুর এলইডি চালানো যায়।
কয়েকটি মাইক্রোকন্ট্রোলার পিন থেকে কীভাবে প্রচুর এলইডি চালানো যায়।

অনেক মাইক্রোকন্ট্রোলার পিনের তিনটি অবস্থা (+V, GND, বা "উচ্চ প্রতিবন্ধকতা") ব্যবহার করে, আপনি N পিন থেকে N*(N-1) LED চালাতে পারেন। 20 টি এলইডি তার পাঁচটি আউটপুট পিন আছে, এবং এখনও এক ধরনের ইনপুটের জন্য একটি পিন বাকি আছে।

ধাপ 1: 5 টি পিনে 20 টি LEDs

5 পিনে 20 টি এলইডি
5 পিনে 20 টি এলইডি

কম পিন-কাউন্ট মাইক্রোকন্ট্রোলারের বর্তমান ফসল (6 পিন থেকে 20 পিন চালু

পুরো প্যাকেজ) আকর্ষণীয় মূল্য এবং 'কিউট', কিন্তু প্রশ্ন উঠছে কিভাবে আপনি এলইডি চালানোর মতো সাধারণ অ্যাপ্লিকেশনের জন্য সেই পিনের সর্বোত্তম ব্যবহার করতে পারেন। এলইডি চালানোর জন্য একটি সরাসরি সংযোগ পদ্ধতি প্রতিটি LED এর জন্য একটি পিন ব্যবহার করে। একটি traditionalতিহ্যবাহী মাল্টিপ্লেক্সিং স্কিম যেখানে এলইডি অ্যানোডের সারিগুলি N পিনের একটি সেট দ্বারা চালিত হয় এবং প্রতিটি সারির সাধারণ ক্যাথোড M পিনের আরেকটি সেট দ্বারা চালিত হয় N+M পিন দিয়ে N*M LEDs হালকা করে। যাইহোক, শুধুমাত্র 5 বা তার কম আউটপুট সহ একটি প্রসেসরে (বেশিরভাগ 8-পিন মাইক্রোকন্ট্রোলারের ক্ষেত্রে), এটি আপনাকে সরাসরি ড্রাইভের চেয়ে বেশি আউটপুট দেয়।

ধাপ 2: চার্লিপ্লেক্সিং

চার্লিপ্লেক্সিং
চার্লিপ্লেক্সিং

অনুমান করা হয় যে আউটপুট পিনগুলি আসলে ত্রি-রাষ্ট্রীয় (সক্রিয় উচ্চ, সক্রিয় কম এবং উচ্চ প্রতিবন্ধকতা (ইনপুট)) সারি এবং কলাম ড্রাইভারগুলি ভাগ করা এবং শুধুমাত্র N পিনের সাহায্যে N*(N-1) LEDs নিয়ন্ত্রণ করা সম্ভব। একটি পিন এলইডি এবং ড্রাইভ্লো সারির সাধারণ ক্যাথোডগুলির সাথে সংযুক্ত থাকে এবং বাকি এন -1 পিনগুলি অ্যানোডগুলির সাথে সংযুক্ত থাকে এবং সেই কলামটি আলোকিত করতে উচ্চতর চালিত হয়, অথবা LEDoff ছেড়ে যাওয়ার জন্য ইনপুট হিসাবে বামে থাকে। ম্যাক্সিম এই কৌশলটিকে "চার্লিপ্লেক্সিং" বলেছেন, এবং (1) এ বর্ণনা করেছেন; মাইক্রোচিপ তাদের ডকুমেন্টে (2) (এবং PICKit 1 বোর্ডেও প্রয়োগগুলি উল্লেখ করে।) cfm/appnote_number/1880 (2) "Tips 'n Tricks 8-pin FLASH PIC Microcontrollers" https://ww1.microchip.com/downloads/en/DeviceDoc/40040b.pdf(3) Charlieplexing LEDs- তত্ত্ব একটি নির্দেশনা rgbphil

ধাপ 3: এটি কাজ করা।

এটা কাজ করা।
এটা কাজ করা।
এটা কাজ করা।
এটা কাজ করা।

এটি একটি ATtiny11 থেকে 20 LEDs চালায়। এই বোর্ডের একটি পূর্ববর্তী সংস্করণ ছিল

প্রকৃতপক্ষে নির্মিত এবং প্রধান পৃষ্ঠার ছবি হিসাবে প্রদর্শিত হয়। আমি ভয় পাচ্ছি পরিকল্পিত ছবিটি বেশ আশাহীন; কোন সংকেত কোথায় সংযুক্ত আছে তা জানাতে আপনাকে agগল দরকার।

ধাপ 4: ছোট এবং আরো বহুমুখী…

ছোট এবং আরও বহুমুখী…
ছোট এবং আরও বহুমুখী…

যেহেতু বেশিরভাগ বোর্ড LED অ্যারে দ্বারা নেওয়া হয়, তাই আমরা জায়গা তৈরি করতে পারি

একটি Attiny চিপ বা একটি মাইক্রোচিপ PIC12F চিপ জন্য। এলইডিগুলিকে 3 মিমি পর্যন্ত সঙ্কুচিত করুন এবং একটি দ্বি -পার্শ্বযুক্ত বোর্ডে যান এবং আমরা প্রায় 27x44 মিমি হায় হায়, এই বোর্ডটি এখনও পরীক্ষা করা হয়নি …

ধাপ 5: ইটি বিটি

Itty bitty
Itty bitty

মাইক্রোচিপে অবশ্যই তাদের 6 পিন PIC10F চিপ রয়েছে, যা গাড়ি চালাতে সক্ষম

3 আউটপুট পিন থেকে মাত্র 6 LEDs। এটি প্রায় 16 মিমি ব্যাস। 603 এলইডি -তে যাওয়া আপনাকে একটু ছোট করতে দেয়, কিন্তু আমি নিশ্চিত নই যে কী জিনিস।

ধাপ 6: সফটওয়্যার

বিভিন্ন কারণে সফটওয়্যারটি কিছুটা অগোছালো হয়ে যায়:

1) দেখানো পিসিবিগুলির জন্য, এলইডিগুলি "সঠিক" বিট অর্ডারের পরিবর্তে পিসিবি লেআউটের সুবিধাজনক উপায়ে রাখা হয়েছে। আইএমও, এই জিনিসগুলি করার উপায়, কিন্তু এর মানে হল যে সারি 1 এর প্রয়োজন হয় না মানে বিট 1, বা কলুমিন 3 এর অর্থ বিট 3 নয়। এর জন্য স্বাভাবিক সারি/কলাম অ্যাড্রেসিং এবং বিট যা সেটিং প্রয়োজন। 2) যেহেতু একই বিটগুলি অ্যানোড এবং ক্যাথোডের জন্য ব্যবহৃত হয়, তাই কিছু বিটের জন্য সাধারণ (সারি) সংযোগ চালিত (কলাম) বিটের মাঝখানে হতে পারে। এর মানে হল যে কলামের সেটের জন্য সারি বিটের আগে বা পরে আছে কিনা তার উপর নির্ভর করে আপনাকে কলাম বিটগুলি স্থানান্তর করতে হবে। 3) আপনাকে আইওপোর্ট এবং পোর্ট দিকের রেজিস্টার উভয়ের জন্য আউটপুট শব্দ বের করতে হবে। ATtiny11 এর জন্য সংযুক্ত ASM কোড একটি "ধারণার প্রমাণ"। এটি লজ্জাজনকভাবে অপ্টিমাইজড এবং খারাপভাবে মন্তব্য করা হয়েছে, কিন্তু আমি এতদূর লিখেছি।

প্রস্তাবিত: