আমি আমার মাইক্রোতে কয়েকটি পিন দিয়ে কীভাবে অনেকগুলি এলইডি নিয়ন্ত্রণ করতে পারি?


10

আমি একটি এটমেল এ্যাটিনি 13 ব্যবহার করছি যাতে 6-পিন আই / ও রয়েছে। আমি প্রায় 15 টি এলইডি নিয়ন্ত্রণ করতে চাই তবে কীভাবে সমস্ত কিছু সংযোগ করতে হবে তা সম্পর্কে আমি নিশ্চিত নই। কোনও ধরণের মাল্টিপ্লেক্সিং ছাড়াই মনে হয় আমি একসাথে কেবল 6 টি এলইডি নিয়ন্ত্রণ করতে সক্ষম হব। মাইক্রোকন্ট্রোলারের আকারের কারণে আমি কি কেবল 6 টি এলইডি সীমাবদ্ধ?



3
কিছুটা পিনিয়ার মাইক্রোকন্ট্রোলার কেনার ব্যয়ের তুলনায় আপনার বিকল্পগুলি তুলনা করতে ভুলবেন না। প্রতি বন্দর এবং মোট বর্তমান সীমাতেও মনোযোগ দিন।
জোফোরকার

আমি যখন কিছুক্ষণ আগে মাইক্রোসের সাথে কাজ শুরু করেছি, এটি এমন একটি প্রশ্ন যা আমি আশা করলাম সুস্পষ্ট উত্তরগুলি পাওয়া সহজ ছিল easy আমি চার্লিপ্লেক্সিং সম্পর্কে শিখতে পেরেছি এবং এটি সফলভাবে বাস্তবায়ন করেছি, তবে আমি এখানে এসই-সম্প্রদায়ের উত্তরের সর্বোত্তম মানের সাথে প্রশ্নটি পুনরায় তৈরি করতে চেয়েছিলাম।
জেলটন

1
@ জোফোরকার আপনি ঠিকই বলেছেন, আমার পজিশটটি এক সময়ের মধ্যে বিবেচনা করে আরও পিনযুক্ত মাইক্রোটির জন্য ব্যয়টি বেশ ন্যূনতম ছিল। আমি কাজটি সম্পাদনের জন্য প্রায় 20 আইও পিন সহ একটি মাইক্রো ব্যবহার করার বিষয়ে এক পর্যায়ে ভেবেছিলাম, তবে আমার লক্ষ্যগুলির মধ্যে একটি ছিল খুব ছোট একটি সার্কিটবোর্ডের পায়ের ছাপ। এছাড়াও, দুর্দান্ত ভয়ঙ্কর বিশেষণ পিনিয়ার !
জেলটন

উত্তর:


18

কয়েকটি আইও পিন থেকে প্রচুর পরিমাণে এলইডি চালানোর জন্য বিভিন্ন পদ্ধতি ব্যবহার করা যেতে পারে।

সবচেয়ে সহজ হল স্ট্যান্ডার্ড সারি / কলাম ডিসপ্লে মাল্টিপ্লেক্সিং। এই কৌশলটি দিয়ে, আপনি এন আইও পিনের সাথে এলইডি ড্রাইভ করতে পারেন । গাণিতিকভাবে, দায়িত্ব চক্রটি হ'ল:(এন/2)2এন

1মিআমিএনআমিমিতোমার দর্শন লগ করামি(অনন্য সারি নিদর্শন, অনন্য কলাম নিদর্শন)

এর অর্থ হ'ল যখন সমস্ত এলইডি প্রজ্বলিত হয় (বা সমস্ত সারি বা সমস্ত কলাম একরকম থাকে) তখন এই কৌশলটির 100% শুল্কচক্র থাকে এবং এর একটি চক্র যখন একটি তির্যক রেখাটি আলোকিত করা প্রয়োজন (বা সমস্ত সারি আলাদা হয়) )। প্রতিটি এলইডি বা একটি এলইডি আলোকিত করার সময় আপনার কেবলমাত্র 100% শুল্ক চক্রের নিশ্চয়তা দেওয়া হয় (বা শূন্য এলইডি, তবে এটি সত্যিকারের পক্ষে খুব বেশি গণনা করে না)।1/এন

সামান্য আরও জটিল হ'ল চার্লিপ্লেক্সিং । এই পদ্ধতির সঙ্গে, আপনি ড্রাইভ করতে পারেন সঙ্গে এলইডি এন আই পিনের। এই কৌশলটি দিয়ে কেবল এন - 1 এলইডি একসাথে জ্বলতে পারে। গাণিতিকভাবে, দায়িত্ব চক্রটি হ'ল:এন2-এনএনএন-1

1ন্যূনতম একযোগে সেট

যেখানে একসাথে সেট হ'ল এলইডিগুলির একটি অনন্য গ্রুপ যার একটি সাধারণ আনোড বা সাধারণ ক্যাথোড থাকে। (এটি প্রমাণিত হয়নি, এক মিনিটের জন্য সমস্যাটি চিন্তা করার পরে আমি এখানে এসেছি। যদি দায়িত্ব চক্র আপনার পক্ষে গুরুত্বপূর্ণ হয় তবে আপনি এটি আরও একবার খোঁজ করতে চাইবেন)) বুদ্ধিগতভাবে এটি অনেক জটিল হিসাব এবং স্ট্যান্ডার্ড মাল্টিপ্লেক্সিংয়ের সমতুল্য গণনার চেয়ে গণনামূলকভাবে। কার্যকরভাবে, যখন আপনি সমস্ত এলইডি জ্বালানো থাকে তখন আপনি এর শুল্ক চক্র পাবেন তবে এন -1 বা কিছু কম এলইডি-র কিছু (কেবল কিছু) নিদর্শনগুলির 100% শুল্ক চক্র থাকতে পারে। 1 এলইডি জ্বালানোর সময় আপনার কেবল 100% শুল্ক চক্রের গ্যারান্টিযুক্ত।1/এন

আমি যে সর্বশেষ পদ্ধতিটি উল্লেখ করব তা হ'ল শিফট রেজিস্টার বা আইও এক্সপেন্ডার ব্যবহার করা। দুটি পিনের সাথে (হয় কাঁচা ডেটা / ক্লক ইন্টারফেস, আই 2 সি, বা দিকনির্দেশক এসপিআই), আপনি নির্বিচারে সংখ্যক এলইডি নিয়ন্ত্রণ করতে পারেন। যে কোনও প্যাটার্নের শুল্ক চক্রটি 100%, তবে আপডেটের হার এলইডি সংখ্যার সাথে বিপরীতভাবে সমানুপাতিক। এটি সবচেয়ে ব্যয়বহুল পদ্ধতি। 15 এলইডি-র জন্য, অনেকগুলি আইও পিনের সাহায্যে কেবল কোনও মাইক্রোতে আপগ্রেড করা সম্ভবত সস্তা হবে।


দায়িত্ব চক্রের দিকটি সম্পর্কে কিছুটা ব্যাখ্যা করার জন্য +1। Charlieplexing সম্পর্কে দ্বিতীয় বাক্যে, আপনি বোঝাতে চেয়েছেন "ড্রাইভ এন ^ 2-এন LED এর সঙ্গে এন আই পিনের?
JYelton

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

11

এন×(এন-1)এন

উদাহরণস্বরূপ:

তিনটি পিনে ছয়টি এলইডি রয়েছে:

PINS        LEDS
0 1 2   1 2 3 4 5 6
0 0 0   0 0 0 0 0 0
0 1 Z   1 0 0 0 0 0
1 0 Z   0 1 0 0 0 0
Z 0 1   0 0 1 0 0 0
Z 1 0   0 0 0 1 0 0
0 Z 1   0 0 0 0 1 0
1 Z 0   0 0 0 0 0 1
0 0 1   0 0 1 0 1 0
0 1 0   1 0 0 1 0 0
0 1 1   1 0 0 0 1 0
1 0 0   0 1 0 0 0 1
1 0 1   0 1 1 0 0 0
1 1 0   0 0 0 1 0 1
1 1 1   0 0 0 0 0 0

3 আউটপুট পিন সহ চার্লিপ্লেক্সিংয়ের স্কিম্যাটিক


সহায়ক স্কিম্যাটিক পাশাপাশি আউটপুট পিন ডেটাসেটের জন্য আপনাকে ধন্যবাদ।
জেলটন

1
স্কিম্যাটিক আঁকার আরেকটি উপায় হ'ল এনএক্সএন গ্রিড হিসাবে, তবে কেবল কলাম চালনা করা এবং প্রাথমিক তিরস্কারটি সারি-কলাম শর্টসের সাথে প্রতিস্থাপন করা।
সুপারক্যাট

মানে আমি কি সব একবারে চালু করতে পারি না? তার মানে কি আমি যদি একবারে এই সমস্তগুলি চালু করতে চাই তবে চোখকে বোকা বানানোর জন্য আমাকে যথেষ্ট সময়-প্লেক্সিং করতে হবে?
MaNyYaaCk

@MaNyYaaCk হ্যাঁ তুমি ঠিক বলছো.
ড্যানিয়েল গ্রিলো

8

মাল্টিপ্লেক্সিং (সরাসরি ড্রাইভ) ছাড়াই আপনি 6 টি এলইডি সীমাবদ্ধ।

চার্লিপ্লেক্সিংয়ের মাধ্যমে আপনি এন পিনগুলি থেকে এন * (এন -1) এলইডি ড্রাইভ করতে পারেন।

আই / ও প্রসারণকারী বা শিফট রেজিস্টারগুলির সাহায্যে আপনি কার্যত সীমাহীন সংখ্যক এলইডি ড্রাইভ করতে পারেন।
উদাহরণ: এমসিপি 23008 8-বিট আই 2 সি আই / হে এক্সপেন্ডার


আই / ও এক্সপেন্ডারগুলি কী হবে তা কী আপনি বিশদভাবে বলতে পারেন?
জেলটন

3
একটি আই / ও এক্সপেন্ডার হ'ল বহিরাগত চিপ যা I / O পিন এবং নিবন্ধগুলি অন্তর্ভুক্ত করে। আপনি আই 2 সি বা এসপিআই এর মতো স্ট্যান্ডার্ড যোগাযোগ বাস ব্যবহার করতে পারেন তাদের সাথে যোগাযোগ করার জন্য।
mjh2007

+1 আপনি টিআই এর টিএলসি594 ( ফোকাস.টি.লিট / ডিভিশনস / সাইমিলিংক / টিএলসি 5940. pdf ) দিয়ে প্রচুর এলইডি চালনা করতে পারেন , তবে এটি অনেক কাজের ক্ষেত্রে ওভারকিল হতে পারে। search.digikey.com/scripts/DkSearch/...
কেনি

ধন্যবাদ - আমার এমন প্রকল্পের নকশা করা উচিত যা I / O প্রসারকারীদের তাদের ব্যবহার সম্পর্কে আমার শেখার জন্য জোর করে।
জেলটন


2

আমি নির্মিত চার্লিপ্লেক্সিংয়ের একটি উদাহরণ এখানে।

এটি লাইটহাউস বিম সিমুলেটর এবং একটি ডিস্কের চারপাশে আলোর রশ্মি ঝাড়ানোর জন্য 12 জিইডি চার্লিপ্লেক্সযুক্ত 12 টি LED এর সিরিজ ব্যবহার করে। এখানে এর একটি ভিডিও আছে

প্রকল্পটি পিক ভিত্তিক, আমি একটি পিক 12 ফ 683 ব্যবহার করি যা একটি 8 পিন ইউপিও এবং 8 পিন এভিআরগুলির সাথে তুলনীয় হিসাবে বিবেচিত হতে পারে।

এলইডিটির তীব্রতা একটি ইন্টারআপ্ট দ্বারা চালিত হয় যা প্রায় 60Hz এ 32 স্টেপ পিডাব্লুএম সরবরাহ করে। আমার প্রয়োজন মতো প্রতিটি এলইডি-র জন্য 50% শুল্ক দেওয়ার সময় যে কোনও সময়ে কেবল দুটি এলইডি জ্বলতে দেওয়া হয়। এটি রেজোলিউশনের বিপরীতে পিডব্লিউএম রিফ্রেশ রেটকে ভাল বাণিজ্য দেয়।

আপনি খুব দ্রুত রিফ্রেশ হারে সময়ে যে কোনও এক সময়ে কেবলমাত্র একক এলইডি জ্বালানোর "ক্লাসিক" পদ্ধতির সাথে লেগে থাকলে চার্লিপ্লেক্সিংকে প্রকৃতপক্ষে সহজ হিসাবে ব্যবহার করার কোডিং। আমি প্রথমে কাগজের উপর প্রয়োজনীয় পোর্ট এবং ট্রিস (নির্দিষ্ট রেজিস্টারগুলি বেছে নেওয়ার) পরে স্ট্যাটিক অ্যারেতে ফলাফলগুলি সংরক্ষণ করি। এলইডি এক্স হালকা করার জন্য পিআইসিকে কেবল অ্যারের সূচকের মানটি দেখতে হবে [x] এবং সরাসরি পোর্টটিতে লিখতে হবে (চার্লিপ্লেক্সে ব্যবহৃত হয়নি এমন অন্য পিনের অবস্থা সংরক্ষণের জন্য কিছুটা মুখোশ দিয়ে)

আমার প্রকল্পে কেবলমাত্র 12 টি এলইডি রয়েছে না 15 বা সর্বোচ্চ 20 টি জিপিআইও অনুমতি দেবে কারণ আমি ভবিষ্যতের বিকাশের জন্য একজন জিপিআইও ছাড়িয়ে রাখতে চেয়েছিলাম।

যাইহোক ... আমি কেবল ভেবেছিলাম আপনার অনুরোধের মতো একটি কার্যকারী উদাহরণ পাওয়া সহায়ক help

আমার উত্সটিতে সম্পূর্ণ উত্স কোড এবং স্কিম্যাটিক্স উপলব্ধ


0

আর একটি বিকল্প হ'ল নিওপিক্সেল এলইডি ব্যবহার করা। তাদের একটি অন্তর্নির্মিত নিয়ন্ত্রণ আইসি রয়েছে এবং আপনার পছন্দ অনুযায়ী যতগুলি এলইডি নিয়ন্ত্রণ করতে আপনার কেবল একটি পিন প্রয়োজন need অবশ্যই আপনার তখন পর্যাপ্ত পৃথক LED পাওয়ার উত্স প্রয়োজন need

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.