Search Code

ESP32 টিউটোরিয়াল ৭/৫৫ - ESP32 আরডুইনো প্রোগ্রামিং-এ অ্যারে ব্যবহার করা-সানফাউন্ডারের ESP32 আইওটি লার্নিং কিট

ESP32 টিউটোরিয়াল ৭/৫৫ - ESP32 আরডুইনো প্রোগ্রামিং-এ অ্যারে ব্যবহার করা-সানফাউন্ডারের ESP32 আইওটি লার্নিং কিট

এই টিউটোরিয়ালে, আমরা ESP32 Arduino প্রোগ্রামিংয়ে অ্যারে কীভাবে ব্যবহার করতে হয় তা অন্বেষণ করব। অ্যারে আপনাকে একটি একক ভেরিয়েবলে একাধিক মান সংরক্ষণ করতে দেয়, যা ডেটা পরিচালনা করা সহজ করে তোলে, বিশেষ করে যখন একই ধরনের আইটেমের সংগ্রহ নিয়ে কাজ করা হয়। এই টিউটোরিয়ালটি আপনাকে অ্যারে সংজ্ঞায়িত করা, অ্যাক্সেস করা এবং পরিবর্তন করার পাশাপাশি কার্যকরভাবে তাদের সাথে ইন্টারঅ্যাক্ট করতে লুপ ব্যবহার করার মাধ্যমে গাইড করবে। এই ধারণাগুলি বোঝা ESP32 দিয়ে প্রোগ্রাম করার আপনার ক্ষমতা ব্যাপকভাবে বৃদ্ধি করবে।

আমরা বিশেষভাবে বিভিন্ন ধরনের লুপের ব্যবহার কভার করব, যেমন for, while, এবং do while, অ্যারে উপাদানগুলির মাধ্যমে পুনরাবৃত্তি করতে। এটি আপনাকে কাজগুলি স্বয়ংক্রিয় করতে এবং আপনার প্রোগ্রামগুলিকে আরও দক্ষ করতে সাহায্য করবে। এই ধারণাগুলি কর্মক্ষেত্রে দেখতে, একটি ব্যবহারিক প্রদর্শনের জন্য 2:30 সময়ে ভিডিওটি দেখতে ভুলবেন না।

হার্ডওয়্যার ব্যাখ্যা

এই টিউটোরিয়ালে আমরা যে প্রাথমিক হার্ডওয়্যার উপাদান ব্যবহার করব তা হল ESP32 মাইক্রোকন্ট্রোলার। ESP32 একটি শক্তিশালী, কম খরচের মাইক্রোকন্ট্রোলার যা Wi-Fi এবং ব্লুটুথ উভয় ক্ষমতা বৈশিষ্ট্যযুক্ত, যা এটিকে বিস্তৃত IoT অ্যাপ্লিকেশনের জন্য উপযুক্ত করে তোলে। বোর্ডটি Arduino Uno-এর মতো কাজ সম্পাদন করতে পারে এবং অতিরিক্ত কার্যকারিতা যেমন ক্লাউড সংযোগ প্রদান করে।

এই নির্দিষ্ট টিউটোরিয়ালে, আমরা ডিজিটাল পিনের মাধ্যমে আউটপুট নিয়ন্ত্রণ করতে একটি অ্যারে ব্যবহার করব। প্রতিটি পিন উচ্চ বা নিম্ন সেট করা যেতে পারে, যা আমাদের অ্যারেতে সংরক্ষিত ডেটার উপর ভিত্তি করে বিভিন্ন প্যাটার্ন বা আচরণ তৈরি করতে দেয়। ESP32-এর GPIO পিনগুলি আউটপুটের জন্য কনফিগার করা হবে, যা আমাদের সংযুক্ত ডিভাইস বা উপাদানগুলিকে পরিচালনা করতে সক্ষম করবে।

ওয়্যারিং নির্দেশাবলী

ESP32-07_74HC595_walking_light_wiring

এই টিউটোরিয়ালের জন্য আপনার ESP32 ওয়্যার করতে, ডিজিটাল পিন সংযোগ করে শুরু করুন। STcp পিন (27) আপনার শিফট রেজিস্টারের ST_CP পিনের সাথে সংযুক্ত করুন। SHcp পিন (26) শিফট রেজিস্টারের SH_CP পিনের সাথে সংযুক্ত করা উচিত। অবশেষে, DS পিন (25) শিফট রেজিস্টারের DS পিনের সাথে সংযুক্ত করুন। একটি সাধারণ রেফারেন্স প্রদানের জন্য ESP32-এর গ্রাউন্ড শিফট রেজিস্টারের গ্রাউন্ডের সাথে সংযুক্ত আছে তা নিশ্চিত করুন।

একটি স্থিতিশীল 3.3 V সরবরাহ ব্যবহার করে ESP32-কে পাওয়ার করতে ভুলবেন না। আপনি যদি অতিরিক্ত উপাদান ব্যবহার করেন তবে নিশ্চিত করুন যে সেগুলিও ESP32-এর ভোল্টেজ স্তরের সাথে সামঞ্জস্যপূর্ণ। কোনো সম্ভাব্য ক্ষতি এড়াতে সিস্টেমটি চালু করার আগে আপনার সংযোগগুলি দুবার পরীক্ষা করা গুরুত্বপূর্ণ (ভিডিওতে 4:10 সময়ে)।

কোড উদাহরণ ও ওয়াকথ্রু

প্রদত্ত কোড স্নিপেটে, আমরা datArray নামে একটি অ্যারে সংজ্ঞায়িত করি যা বাইনারি মান ধারণ করে। অ্যারের প্রতিটি মান GPIO পিনের মাধ্যমে আউটপুট করা যেতে পারে এমন একটি ভিন্ন প্যাটার্নের সাথে মিলে যায়। অ্যারেটি নিম্নরূপ সংজ্ঞায়িত করা হয়েছে:

int datArray[] = {B00000000, B00000001, B00000011, B00000111, B00001111, B00011111, B00111111, B01111111, B11111111};

এই অ্যারেটিতে বাইনারি উপস্থাপনা রয়েছে, যেখানে প্রতিটি বিট একটি পিন অবস্থার (চালু বা বন্ধ) সাথে মিলে যায়। loop() ফাংশনে, আমরা একটি for লুপ ব্যবহার করে এই প্যাটার্নগুলি আউটপুট করতে অ্যারের মাধ্যমে পুনরাবৃত্তি করি:

for(int num = 0; num < 10; num++) {
    digitalWrite(STcp, LOW); 
    shiftOut(DS, SHcp, MSBFIRST, datArray[num]);
    digitalWrite(STcp, HIGH); 
    delay(1000);
}

এই লুপে, আমরা ক্রমাগত datArray থেকে শিফট রেজিস্টারে ডেটা পাঠাই, একটি চলমান আলোর প্রভাব তৈরি করে। delay(1000) প্রতিটি প্যাটার্নের মধ্যে একটি বিরতি প্রবর্তন করে, যা পরিবর্তনগুলিকে দৃশ্যমান হতে দেয়। সম্পূর্ণ কোডের জন্য, অনুগ্রহ করে নীচে পড়ুন কারণ এটি গতিশীলভাবে লোড হবে।

প্রদর্শন / কী আশা করবেন

ওয়্যারিং সম্পূর্ণ এবং কোড আপলোড করার পরে, আপনার সংযুক্ত ডিভাইসগুলিতে একটি চলমান আলোর প্রভাব দেখা উচিত। অ্যারের প্রতিটি বিট ক্রমানুসারে আলোকিত হবে, একটি দৃশ্যত আকর্ষণীয় প্যাটার্ন তৈরি করবে। বিপরীত সংযোগ সম্পর্কে সতর্ক থাকুন কারণ তারা অপ্রত্যাশিত আচরণের দিকে নিয়ে যেতে পারে (ভিডিওতে 8:15 সময়ে)।

ভিডিও টাইমস্ট্যাম্প

  • 00:00 শুরু
  • 1:24 ভূমিকা
  • 3:15 74HC595 শিফট রেজিস্টার চিপ
  • 5:25 চলমান আলো ওয়্যারিং
  • 18:56 74HC595-এর জন্য Arduino কোড ব্যাখ্যা করা হয়েছে
  • 24:24 প্রকল্পের প্রদর্শন
  • 25:49 কোড ঠিক করা
  • 28:11 আলো সামনে এবং পিছনে চলে
  • 30:28 চলমান আলো

ছবি

ESP32-07_74HC595_walking_light_wiring
ESP32-07_74HC595_walking_light_wiring
ESP32-07_74HC595_walking_light_schematic
ESP32-07_74HC595_walking_light_schematic
807-ESP32 Tutorial 7/55 - Walking Light using 74HC595 and learn array
ভাষা: C++
const int STcp = 27;//ST_CP
const int SHcp = 26;//SH_CP 
const int DS = 25; //DS 

int datArray[] = {B00000000, B00000001, B00000011, B00000111, B00001111, B00011111, B00111111, B01111111, B11111111};

void setup ()
{
  //set pins to output
  pinMode(STcp,OUTPUT);
  pinMode(SHcp,OUTPUT);
  pinMode(DS,OUTPUT);
}
void loop()
{
  for(int num = 0; num <10; num++)
  {
    digitalWrite(STcp,LOW); //ground ST_CP and hold low for as long as you are transmitting
    shiftOut(DS,SHcp,MSBFIRST,datArray[num]);
    digitalWrite(STcp,HIGH); //pull the ST_CPST_CP to save the data
    delay(1000);
  }
}

সম্পদ ও রেফারেন্সসমূহ

ফাইলসমূহ📁

কোনো ফাইল উপলব্ধ নেই।