Search Code

د ESP32 ټیوټوریل 7/55 - د ESP32 Arduino پروګرامینګ سره د Array کارول - د SunFounder د ESP32 IoT زده کړې کټ

د ESP32 ټیوټوریل 7/55 - د ESP32 Arduino پروګرامینګ سره د Array کارول - د SunFounder د ESP32 IoT زده کړې کټ

په دې ټیوټوریل کې به موږ وپلټو چې څنګه په ESP32 Arduino پروګرام کولو کې arrays وکاروو. Arrays تاسو ته اجازه درکوي چې په یوه واحد متغیر کې ډیری ارزښتونه ذخیره کړئ، چې د معلوماتو اداره کول اسانه کوي، په ځانګړې توګه کله چې د ورته توکو له ټولګو سره معامله کوئ. دا ټیوټوریل به تاسو ته د arrays د تعریف، لاسرسي او بدلولو له لارې لارښوونه وکړي، او همدارنګه د لوپونو کارول ترڅو ورسره په مؤثره توګه تعامل وکړئ. د دې مفاهیمو پوهیدل به ستاسو د ESP32 سره د پروګرام کولو وړتیا خورا لوړه کړي.

موږ به په ځانګړې توګه د مختلفو ډوله لوپونو کارول پوښو، لکه for، while، او do while، ترڅو د array عناصرو له لارې تکرار وکړو. دا به تاسو سره د دندو اتومات کولو او ستاسو د پروګرامونو ډیر اغیزمن کولو کې مرسته وکړي. د دې مفاهیمو په عمل کې لیدلو لپاره، ډاډ ترلاسه کړئ چې په 2:30 کې ویډیو د عملي مظاهرې لپاره وګورئ.

هارډویر تشریح شوی

لومړنی هارډویر اجزا چې موږ به یې په دې ټیوټوریل کې کاروو د ESP32 مایکروکنټرولر دی. ESP32 یو پیاوړی، ټیټ لګښت لرونکی مایکروکنټرولر دی چې دواړه Wi-Fi او Bluetooth وړتیاوې لري، چې دا د IoT غوښتنلیکونو پراخه لړۍ لپاره مناسب کوي. بورډ کولی شي د Arduino Uno په څیر دندې ترسره کړي پداسې حال کې چې اضافي فعالیتونه وړاندې کوي، لکه د کلاوډ اړیکه.

په دې ځانګړي ټیوټوریل کې، موږ به د ډیجیټل پنونو له لارې د محصولاتو کنټرول لپاره یو array وکاروو. هر پن کولی شي لوړ یا ټیټ وټاکل شي، چې موږ ته اجازه راکوي چې د array کې ذخیره شوي معلوماتو پر بنسټ مختلف نمونې یا چلندونه رامینځته کړو. د ESP32 GPIO پنونه به د محصول لپاره تنظیم شي، چې موږ ته اجازه راکوي چې وصل شوي وسایل یا اجزاوې اداره کړو.

د تارونو لارښوونې

ESP32-07_74HC595_walking_light_wiring

د دې ټیوټوریل لپاره خپل ESP32 تار کولو لپاره، د ډیجیټل پنونو په نښلولو سره پیل وکړئ. د STcp پن (27) د خپل شفټ راجستر د ST_CP پن سره وصل کړئ. د SHcp پن (26) باید د شفټ راجستر د SH_CP پن سره وصل شي. په پای کې، د DS پن (25) د شفټ راجستر د DS پن سره وصل کړئ. ډاډ ترلاسه کړئ چې د ESP32 ځمکه د شفټ راجستر له ځمکې سره وصل ده ترڅو یو عام حواله چمتو کړي.

ډاډ ترلاسه کړئ چې ESP32 د مستحکم 3.3 V عرضې په کارولو سره بریښنا کړئ. که تاسو اضافي اجزاوې کاروئ، ډاډ ترلاسه کړئ چې دوی د ESP32 د ولتاژ کچو سره هم مطابقت لري. دا مهمه ده چې د سیسټم د بریښنا کولو دمخه خپلې اړیکې دوه ځله وګورئ ترڅو د احتمالي زیان څخه مخنیوی وشي (په 4:10 کې په ویډیو کې).

د کوډ مثالونه او واک تھرو

په چمتو شوي کوډ سنیپټ کې، موږ یو array تعریف کوو چې datArray نومیږي او بائنری ارزښتونه لري. په array کې هر ارزښت د یوې مختلفې نمونې سره مطابقت لري چې د GPIO پنونو له لارې تولید کیدی شي. array په لاندې ډول تعریف شوی دی:

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

دا array بائنری نمایشونه لري، چیرې چې هر بټ د پن حالت (آن یا آف) سره مطابقت لري. په loop() فنکشن کې، موږ د دې نمونو د تولید لپاره د for لوپ په کارولو سره د array له لارې تکرار کوو:

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

په دې لوپ کې، موږ په دوامداره توګه د datArray څخه شفټ راجستر ته معلومات لیږو، چې د تګ رڼا اغیز رامینځته کوي. delay(1000) د هرې نمونې ترمنځ یو وقفه معرفي کوي، چې بدلونونه د لیدلو وړ کوي. د بشپړ کوډ لپاره، مهرباني وکړئ لاندې ته مراجعه وکړئ ځکه چې دا په متحرک ډول بار کیږي.

مظاهره / څه تمه وکړئ

د تارونو بشپړولو او د کوډ اپلوډ کولو وروسته، تاسو باید په وصل شوي وسایلو کې د تګ رڼا اغیز وګورئ. په array کې هر بټ به په ترتیب سره روښانه شي، چې یو بصري زړه راښکونکی نمونه رامینځته کوي. د بیرته راګرځیدلو اړیکو څخه محتاط اوسئ ځکه چې دوی کولی شي غیر متوقع چلند رامینځته کړي (په 8:15 کې په ویډیو کې).

د ویډیو وختونه

  • 00:00 پیل
  • 1:24 پیژندنه
  • 3:15 74HC595 شفټ راجستر چپ
  • 5:25 د تګ رڼا تارونه
  • 18:56 د 74HC595 لپاره د Arduino کوډ تشریح شوی
  • 24:24 د پروژې مظاهره
  • 25:49 د کوډ سمول
  • 28:11 رڼا شاته او مخ ته حرکت کوي
  • 30:28 تګ رڼا

Images

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
Language: 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);
  }
}

Resources & references

Files📁

No files available.