সুচিপত্র:

MAX7221: 4 ধাপ ব্যবহার করে কাউন্টার
MAX7221: 4 ধাপ ব্যবহার করে কাউন্টার

ভিডিও: MAX7221: 4 ধাপ ব্যবহার করে কাউন্টার

ভিডিও: MAX7221: 4 ধাপ ব্যবহার করে কাউন্টার
ভিডিও: FLOWCODE УРОК 60 max7219 max7221 2024, জুলাই
Anonim
MAX7221 ব্যবহার করে কাউন্টার
MAX7221 ব্যবহার করে কাউন্টার

একটি কাউন্টার তৈরি করা যা MAX7221 ব্যবহার করে একটি বোতাম চাপলে বৃদ্ধি পায়।

ধাপ 1: অংশ

MAX7221 বা MAX7219

সুইচ

4 7-সেগমেন্ট ডিসপ্লে (সাধারণ ক্যাথোড)

2 প্রতিরোধক: 10k এবং 9.53k (আমি 9.1k ব্যবহার করেছি এবং এটি এখনও কাজ করে)

আরডুইনো

ধাপ 2: সার্কিট নির্মাণ

সার্কিট নির্মাণ
সার্কিট নির্মাণ
সার্কিট নির্মাণ
সার্কিট নির্মাণ
সার্কিট নির্মাণ
সার্কিট নির্মাণ

আমি কেবল যে পিনগুলি ব্যবহার করেছি তা লিখেছি, আপনি ডেটশীটে সম্পূর্ণ পিন লেআউট খুঁজে পেতে পারেন বা আমি এটি সংযুক্ত করেছি। আপনার 7-সেগমেন্ট ডিসপ্লেটি দেখতে ভুলবেন না কারণ এটি সম্ভবত আমার থেকে আলাদা হবে কিন্তু পদ্ধতি একই।

1. MAX7221 এ ডিজিট 0 - 3 কে ডিসপ্লের 1 - 4 এর সাথে সংযুক্ত করুন। MAX ডিজিট 0 ডিসপ্লে ডিজিট 1 এর সাথে সংযোগ স্থাপন করে।

2. MAX7221 এ সেগমেন্ট A - G ডিসপ্লেতে A - G সেগমেন্টের সাথে সংযুক্ত করুন।

3. সর্বোচ্চ শক্তি এবং স্থল সরবরাহ করুন। ভিসিসি 19 পিনে যায়।

4. MAX7221 Arduino এর সাথে SPI (সিরিয়াল পেরিফেরাল ইন্টারফেস) এর মাধ্যমে যোগাযোগ করে। এই ক্ষেত্রে শুধুমাত্র 3 টি তারের প্রয়োজন কারণ আমি MISO (মাস্টার ইন স্লেভ আউট) ব্যবহার করছি না। MAX7221 এ Arduino এর সাথে পিন 1 (দিন) সংযুক্ত করুন, আমার ক্ষেত্রে আমি 12 পিন ব্যবহার করেছি। এটি আপনার MOSI (মাস্টার আউট স্লেভ ইন) বা ডেটা। MAX- এ পিন 12 হল CS (চিপ সিলেক্ট ইনপুট) এবং কিভাবে শিফট রেজিস্টারে ডেটা লোড করা হয়, আমি এটিকে Arduino এ 9 পিন করার জন্য সংযুক্ত করেছি। শেষ সংযোগ হল CLK যা MAX এ 13 পিন, আমি এটিকে Arduino এ 10 পিনের সাথে সংযুক্ত করেছি।

5 ভোল্ট ব্যবহার করে Arduino এর মাধ্যমে বিদ্যুৎ এবং স্থল সরবরাহ নিশ্চিত করুন। আমি সমস্যার মধ্যে দৌড়ে গিয়েছিলাম যেখানে আমার আরডুইনো আমার বোর্ডকে পর্যাপ্ত শক্তি দিচ্ছিল না।

এটি MAX7221 ডেটাশীটের জন্য। এছাড়াও ছবিগুলি কোথা থেকে এসেছে।

www.mouser.com/datasheet/2/256/max7219-max…

ধাপ 3: সুইচ

সুইচ
সুইচ

আমি উপরের স্কিম্যাটিক থেকে সুইচটি তারযুক্ত করেছি। Https://www.arduino.cc/en/tutorial/button এ পাওয়া যায়

আমি সুইচ নিয়ন্ত্রণ করতে আরডুইনোতে পিন 8 ব্যবহার করেছি এবং 10 কে রোধক।

ধাপ 4: কোড

আমি GitHub এ পাওয়া LedControl.h লাইব্রেরি এবং MAX7221 চালু করার জন্য তাদের মৌলিক কোড ব্যবহার করেছি। আমি তখন 0 - 9999 থেকে গণনা করার জন্য কোডটি সংশোধন করেছি যখন বোতামটি চাপানো হচ্ছে।

#অন্তর্ভুক্ত "LedControl.h"

int বাটন = 8;

LedControl lc = LedControl (12, 10, 9, 1);

অকার্যকর সেটআপ() {

পিনমোড (বোতাম, ইনপুট);

lc.shutdown (0, মিথ্যা); // MAX7221 পাওয়ার সেভিং মোডে আছে, তাই আমাদের এটি জাগাতে হবে

lc.setIntensity (0, 15); // উজ্জ্বলতা সেট করা, সর্বোচ্চ 15

lc.clearDisplay (0); // ক্লিয়ারিং ডিসপ্লে

}

অকার্যকর লুপ () {

int state = digitalRead (button);

int i = 0;

int j = 0;

int k = 0;

int l = 0;

যখন (1) {

state = digitalRead (button);

while (state == 1) {

state = digitalRead (button);

lc.setDigit (0, 3, i, false);

আমি ++;

বিলম্ব (100); // আপনি এই সঙ্গে গোলমাল করতে পারেন

যদি (i == 10) {

আমি = 0;

j ++;

যদি (j == 10) {

j = 0;

k ++;

যদি (k == 10) {

k = 0;

l ++;

যদি (l == 10) {

যখন (1) {

lc.setRow (0, 0, 0x3E); // যখন ডিসপ্লে 9999 এ পৌঁছবে তখন এটি U - 1 প্রদর্শন করবে

lc.setRow (0, 1, 0x1); // হেক্সি দশমিক মান

lc.setRow (0, 2, 0x1);

lc.setDigit (0, 3, 1, মিথ্যা);

}

}

lc.setDigit (0, 0, l, false);

}

lc.setDigit (0, 1, k, মিথ্যা);

}

lc.setDigit (0, 2, j, false);

}

}

}

}

প্রস্তাবিত: