সুচিপত্র:
ভিডিও: একটি পট এবং ATTINY85: 3 ধাপ ব্যবহার করে LED রং পরিবর্তন করুন
2024 লেখক: John Day | [email protected]. সর্বশেষ পরিবর্তিত: 2024-01-30 08:02
এই প্রকল্পে আমরা একটি ATTINY85 ব্যবহার করে একটি LED তে রং পরিবর্তন করতে একটি potentiometer (POT) ব্যবহার করি।
কিছু সংজ্ঞা -
পোটেন্টিওমিটার হলো একটি যন্ত্র যার একটি ছোট স্ক্রু / টার্নিং মেকানিজম থাকে যা ঘুরিয়ে দিলে বিভিন্ন বৈদ্যুতিক প্রতিরোধ ক্ষমতা বের হয়। আপনি উপরের টীকাযুক্ত ছবি থেকে দেখতে পারেন যে পটটিতে 3 টি পিন রয়েছে, যথা +, -, এবং আউটপুট। POT বিদ্যুৎ সরবরাহে যথাক্রমে + এবং - পিনগুলিকে vcc এবং মাটিতে সংযুক্ত করে চালিত হয়। পট স্ক্রু চালু হওয়ার সাথে সাথে, আউটপুট প্রতিরোধের পরিবর্তন হয় এবং LED হ্রাস বা তীব্রতা বৃদ্ধি করে। । অন্য কথায়, এটি একটি পরিবর্তনশীল প্রতিরোধক। এগুলি হোম লাইট ডিমারের মতো জিনিসগুলিতে ব্যবহৃত হয়।
এলইডি - এটি একটি ছোট আলো যা আলোকিত করে যখন বৈদ্যুতিক স্রোত চলে যায় যদিও এটি। এই ক্ষেত্রে, আমরা একটি বহুবর্ণ LED ব্যবহার করব যার 3 টি পিন, একটি স্থল (মাঝামাঝি) এবং দুটি পিন যা ট্রিগার করার সময় যথাক্রমে সবুজ এবং লাল দেখায়।
ATTINY85-এটি একটি ছোট স্বল্প খরচের মাইক্রো-চিপ যা আপনি Arduino এর মতো প্রোগ্রাম করতে পারেন।
ওভারভিউ - POT থেকে আউটপুট ATTINY85 এর সাথে সংযুক্ত। POT স্ক্রু চালু হওয়ার সাথে সাথে, একটি পার্থক্য প্রতিরোধ 0 থেকে 255 এর মধ্যে একটি সংখ্যা হিসাবে আউটপুট হয়। ATTINY এটি পরিমাপ করতে পারে এবং POT প্রতিরোধের মান অনুসারে বিভিন্ন পদক্ষেপ নিতে পারে। এই ক্ষেত্রে, আমরা নিম্নরূপ LED এর সাথে সংযোগ করার জন্য এটি প্রোগ্রাম করেছি।
যদি সংখ্যাটি 170 এর বেশি হয় তবে LED কে GREEN এ সুইচ করুন।
যদি সংখ্যাটি 170 এর চেয়ে কম কিন্তু 85 এর বেশি হয় তাহলে LED কে RED এ স্যুইচ করুন।
যদি সংখ্যাটি than৫ এর কম হয় তাহলে LED GREEN AND RED তে সুইচ করুন যার ফলে ORANGE হয়।
বিওএম
1 x 3 পিন LED1 x ATTINY 85
1 x POT (B100K)
1 এক্স রুটিবোর্ড এবং তারগুলি
1 পাওয়ার সাপ্লাই।
ধাপ 1: ATTINY85 প্রোগ্রামিং
ATTINY85 প্রোগ্রামিংয়ের ক্ষেত্রে, দয়া করে আমার আগের নির্দেশাবলী পড়ুন-https://www.instructables.com/id/15-Dollar-Attiny8…
কোড নীচে প্রদর্শিত হয়। লক্ষ্য করার মতো কিছু বিষয় হল যে দুটি ATTINY পিন, PB3, ফিজিক্যাল পিন 2, PB2, ফিজিক্যাল পিন 7 ডিজিটাল মোডে সংযুক্ত, রঙ পরিবর্তন করার জন্য LED এর সাথে। ATTINY পিন PB4, ফিজিক্যাল পিন 3, POT এর সাথে এনালগ মোডে সংযুক্ত, যার মানে হল যে এটি 0 থেকে 254 এর মধ্যে মান পড়তে পারে। আমি কোডটি কাস্টমাইজ করেছি যা আমি ইন্টারনেটে পেয়েছি তাই আমি সেই কাজটি স্বীকার করি। -
অকার্যকর initADC () {// *** // *** Pinout ATtiny25/45/85: // *** PDIP/SOIC/TSSOP // *** ============= ======================================================== ================================ // *** // *** (PCINT5/RESET/ADC0/dW) PB5 [1]* [8] VCC // *** (PCINT3/XTAL1/CLKI/OC1B/ADC3) PB3 [2] [7] PB2 (SCK/USCK/SCL/ADC1/T0/INT0/PCINT2) //* ** (PCINT4/XTAL2/CLKO/OC1B/ADC2) PB4 [3] [6] PB1 (MISO/DO/AIN1/OC0B/OC1A/PCINT1) // *** GND [4] [5] PB0 (MOSI/ DI/SDA/AIN0/OC0A/OC1A/AREF/PCINT0) //* এই ফাংশনটি ADC এর সূচনা করে
এডিসি প্রেসকলার নোট:
ADC Prescaler সেট করা প্রয়োজন যাতে ADC ইনপুট ফ্রিকোয়েন্সি 50 - 200kHz এর মধ্যে থাকে।
আরো তথ্যের জন্য 17.13.2 অধ্যায় "ADCSRA - ADC কন্ট্রোল অ্যান্ড স্ট্যাটাস রেজিস্টার A" (সম্পূর্ণ ATtiny25/45/85 ডেটশীটে পৃষ্ঠা 140 এবং 141, Rev. 2586M – AVR – 07/ 10)
বিভিন্ন ঘড়ির গতির জন্য বৈধ prescaler মান
ঘড়ি উপলব্ধ prescaler মান --------------------------------------- 1 MHz 8 (125kHz), 16 (62.5kHz) 4 MHz 32 (125kHz), 64 (62.5kHz) 8 MHz 64 (125kHz), 128 (62.5kHz) 16 MHz 128 (125kHz)
উদাহরণস্বরূপ 8MHz এ চলমান mcu এর জন্য 128 এর জন্য prescaler সেট করুন
(প্রেসকলার সেট করার জন্য সঠিক বিট মানগুলির জন্য ডেটশীট চেক করুন) */
// 8-বিট রেজোলিউশন
// বাম-শিফট ফলাফল সক্ষম করতে ADLAR 1 সেট করুন (শুধুমাত্র ADC9.. ADC2 বিট পাওয়া যায়) // তারপর, 8-বিট ফলাফলের জন্য শুধুমাত্র ADCH পড়া যথেষ্ট (256 মান) DDRB | = (1 << PB3); // পিন আউটপুট হিসেবে সেট করা আছে। DDRB | = (1 << PB2); // পিন আউটপুট হিসেবে সেট করা আছে। ADMUX = (1 << ADLAR) | // বাম শিফট ফলাফল (0 << REFS1) | // রেফারেন্স সেট করে। ভিসিসিতে ভোল্টেজ, বিট 1 (0 << REFS0) | // রেফারেন্স সেট করে। ভিসিসিতে ভোল্টেজ, বিট 0 (0 << MUX3) | // ইনপুটের জন্য ADC2 ব্যবহার করুন (PB4), MUX বিট 3 (0 << MUX2) | // ইনপুটের জন্য ADC2 ব্যবহার করুন (PB4), MUX বিট 2 (1 << MUX1) | // ইনপুটের জন্য ADC2 ব্যবহার করুন (PB4), MUX বিট 1 (0 << MUX0); // ইনপুট (PB4), MUX বিট 0 এর জন্য ADC2 ব্যবহার করুন
ADCSRA =
(1 << ADEN) | // ADC সক্ষম করুন (1 << ADPS2) | // সেট prescaler 64, বিট 2 (1 << ADPS1) | // সেট prescaler 64, বিট 1 (0 << ADPS0); // সেট প্রেসকলার 64, বিট 0}
int প্রধান (শূন্য)
{initADC ();
যখন (1)
{
ADCSRA | = (1 << ADSC); // ADC পরিমাপ শুরু করুন যখন (ADCSRA & (1 << ADSC)); // রূপান্তর সম্পূর্ণ না হওয়া পর্যন্ত অপেক্ষা করুন
যদি (ADCH> 170)
{PORTB | = (1 << PB3); // পিন উচ্চ সেট। PORTB | = (1 << PB2); // পিন উচ্চ সেট। } অন্যথায় যদি (ADCH 85) {PORTB | = (1 << PB3); // পিন উচ্চ সেট। PORTB & = ~ (1 << PB2); // পিন কম সেট
} অন্য {
PORTB | = (1 << PB2); // পিন উচ্চ সেট। PORTB & = ~ (1 << PB3); // পিন কম সেট
}
}
রিটার্ন 0;
}
ধাপ 2: সার্কিট
ATTINY পিন
PB3, শারীরিক পিন 2 - সংযুক্ত LED পিন 1
PB4, ফিজিক্যাল পিন 3, মধ্য পিন POT এর সাথে সংযুক্ত
GND, ফিজিক্যাল পিন 4, নেগেটিভ রেল -পাওয়ার সাপ্লাই এর সাথে সংযুক্ত
PB2, শারীরিক পিন 7 - সংযুক্ত LED পিন 3
ভিসিসি, ফিজিক্যাল পিন 8, পজিটিভ রেল -পাওয়ার সাপ্লাই এর সাথে সংযুক্ত
পট
পজ এবং নেগ পিন সংশ্লিষ্ট রেলের সাথে সংযুক্ত - বিদ্যুৎ সরবরাহ।
এলইডি
মাঝারি পিন নেগেটিভ রেলের সাথে সংযুক্ত - বিদ্যুৎ সরবরাহ
আমি একটি 3 এবং 3.3 ভোল্ট পাওয়ার সাপ্লাই ব্যবহার করে পরীক্ষা করেছি এবং উভয়ই কাজ করেছি।
ধাপ 3: উপসংহার
অ্যানালগ এবং ডিজিটাল মোডের মধ্যে চলাচলের জন্য ATTINY85 এর ক্ষমতা খুবই শক্তিশালী এবং বিভিন্ন অ্যাপ্লিকেশনে ব্যবহার করা যেতে পারে, যেমন পরিবর্তনশীল গতি মোটর ড্রাইভিং এবং বাদ্যযন্ত্র নোট তৈরি। আমি ভবিষ্যতে নির্দেশাবলীতে এটি অন্বেষণ করব। আমি আশা করি আপনি এই দরকারী খুঁজে পেয়েছেন।
প্রস্তাবিত:
একটি ESP8266 এবং একটি BME280: 10 ধাপ ব্যবহার করে একটি অ্যাপল হোমকিট তাপমাত্রা সেন্সর ডিভাইস তৈরি করুন
একটি ESP8266 এবং একটি BME280 ব্যবহার করে একটি অ্যাপল হোমকিট তাপমাত্রা সেন্সর ডিভাইস তৈরি করুন: আজকের নির্দেশে, আমরা AOSONG AM2302/DHT22 অথবা BME280 তাপমাত্রা/আর্দ্রতা সেন্সর, YL-69 আর্দ্রতা সেন্সরের উপর ভিত্তি করে কম খরচে তাপমাত্রা, আর্দ্রতা এবং আর্দ্রতা সেন্সর তৈরি করব। এবং ESP8266/Nodemcu প্ল্যাটফর্ম। এবং প্রদর্শনের জন্য
একটি রাস্পবেরি পাই এবং একটি আরটিএল-এসডিআর ডংগল ব্যবহার করে একটি অপেশাদার রেডিও এপিআরএস আরএক্স তৈরি করুন মাত্র আধ ঘন্টার কম সময়ে: 5 টি ধাপ
একটি রাস্পবেরি পাই এবং একটি আরটিএল-এসডিআর ডংগল ব্যবহার করে একটি অপেশাদার রেডিও APRS RX শুধুমাত্র আইগেট তৈরি করুন: দয়া করে মনে রাখবেন এটি এখন বেশ পুরনো তাই কিছু অংশ ভুল এবং পুরনো। আপনার সম্পাদনা করার জন্য প্রয়োজনীয় ফাইলগুলি পরিবর্তিত হয়েছে। আমি আপনাকে ছবির সর্বশেষ সংস্করণটি দেওয়ার জন্য লিঙ্কটি আপডেট করেছি (দয়া করে এটি ডিকম্প্রেস করার জন্য 7-জিপ ব্যবহার করুন) কিন্তু সম্পূর্ণ যন্ত্রের জন্য
একটি RaspberryPI এবং একটি BME280 ব্যবহার করে একটি অ্যাপল হোমকিট তাপমাত্রা সেন্সর (BME280) তৈরি করুন: 5 পদক্ষেপ
একটি RaspberryPI এবং একটি BME280 ব্যবহার করে একটি অ্যাপল হোমকিট তাপমাত্রা সেন্সর (BME280) তৈরি করুন: আমি গত কয়েক মাস ধরে IOT ডিভাইসের সাথে চারপাশে খেলছি, এবং আমার ঘর এবং কটেজের আশেপাশের পরিস্থিতি পর্যবেক্ষণ করার জন্য প্রায় 10 টি ভিন্ন সেন্সর মোতায়েন করেছি। এবং আমি মূলত AOSONG DHT22 নাতিশীতোষ্ণ আর্দ্রতা সেন্স ব্যবহার শুরু করেছি
একটি ডিসপোজেবল ক্যামেরা পুনরায় ব্যবহার করুন এবং গ্রহটি সংরক্ষণ করুন! এবং কিছু কুইড সংরক্ষণ করুন: 4 টি ধাপ
একটি ডিসপোজেবল ক্যামেরা পুনরায় ব্যবহার করুন এবং গ্রহটি সংরক্ষণ করুন! এবং কিছু কুইড সংরক্ষণ করুন: সম্প্রতি আমি আমার ব্যবহৃত স্থানীয় ফটো স্টোর (জেসপস) এ ছিলাম কিছু ব্যবহৃত ডিসপোজেবল ক্যামেরা পেতে আমি নিশ্চিত যে আপনি সচেতন যে তারা চমকপ্রদ মানুষের জন্য দারুণ মজা করে। শুধু জিজ্ঞাসা করুন এবং তারা তাদের ছেড়ে দেয়। আমিও ভেবেছিলাম, হাহ, এই কোম্পানিগুলি ক্যামেরাগুলি ফিরে পায়, রাখুন
একটি নিকন এসসি -28 টিটিএল ক্যাবলে একটি পিসি সিঙ্ক জ্যাক যুক্ত করুন (ক্যামেরা ফ্ল্যাশের জন্য অটো সেটিংস ব্যবহার করুন এবং ক্যামেরা ফ্ল্যাশ বন্ধ করুন !!): 4 টি ধাপ
একটি নিকন এসসি -28 টিটিএল ক্যাবলে একটি পিসি সিঙ্ক জ্যাক যুক্ত করুন (ক্যামেরা ফ্ল্যাশ অন করার জন্য অটো সেটিংস ব্যবহার করুন এবং ক্যামেরা ফ্ল্যাশ বন্ধ করুন !!): এই নির্দেশে আমি আপনাকে দেখাবো কিভাবে সেই বিরক্তিকর মালিকানা 3 পিন টিটিএল সংযোগকারীগুলিকে সরিয়ে ফেলতে হয় একটি নিকন SC-28 অফ ক্যামেরা টিটিএল তারের পাশে এবং এটি একটি আদর্শ পিসি সিঙ্ক সংযোগকারী দিয়ে প্রতিস্থাপন করুন। এটি আপনাকে একটি ডেডিকেটেড ফ্ল্যাশ ব্যবহার করতে দেবে