ESP32 Dev Kitc ልማት ቦርድ
የምርት መረጃ
ዝርዝሮች
- ምርት፡ ESP32
- የፕሮግራም አወጣጥ መመሪያ፡ ESP-IDF
- የተለቀቀበት ስሪት: v5.0.9
- አምራች: Espressif ሲስተምስ
- የተለቀቀበት ቀን፡ ሜይ 16፣ 2025
የምርት አጠቃቀም መመሪያዎች
1. ጀምር
በESP32 ከመጀመርዎ በፊት እራስዎን በደንብ ይወቁ
የሚከተለው፡-
1.1 መግቢያ
ስለ መሰረታዊ ተግባራት እና ችሎታዎች ይወቁ
ESP32.
1.2 የሚያስፈልግዎ
አስፈላጊው ሃርድዌር እና ሶፍትዌር እንዳለዎት ያረጋግጡ፡-
- ሃርድዌር፡ አስፈላጊውን የሃርድዌር ዝርዝር ይመልከቱ
አካላት. - ሶፍትዌር፡ አስፈላጊውን ሶፍትዌር ይጫኑ
አካላት.
1.3 መጫን
IDE ለመጫን እና ለማዋቀር እነዚህን ደረጃዎች ይከተሉ
አካባቢ፡
- አይዲኢ፡ የተመከረውን አይዲኢ ይጫኑ ለ
ESP32 ፕሮግራም ማውጣት። - በእጅ መጫን; በእጅ ያዋቅሩት
አስፈላጊ ከሆነ አካባቢ.
1.4 የመጀመሪያ ፕሮጀክትዎን ይገንቡ
ESP32ን በመጠቀም የመጀመሪያ ፕሮጀክትዎን ይፍጠሩ እና ይገንቡ።
1.5 ESP-IDFን ያራግፉ
ካስፈለገ፣ ESP-IDFን ከእርስዎ እንዴት እንደሚያራግፍ ይወቁ
ስርዓት.
2. የኤፒአይ ማጣቀሻ
ለዝርዝር መረጃ የኤፒአይ ሰነድ ይመልከቱ
የመተግበሪያ ፕሮቶኮሎች፣ የስህተት አያያዝ እና ውቅር
መዋቅሮች.
ተዘውትረው የሚጠየቁ ጥያቄዎች (FAQ)
ጥ፡ ከESP32 ጋር የተለመዱ ችግሮችን እንዴት መፍታት እችላለሁ?
መ: በፕሮግራም አወጣጥ መመሪያ ውስጥ ያለውን የመላ መፈለጊያ ክፍል ይመልከቱ
ወይም የአምራቹን ይጎብኙ webለድጋፍ ሀብቶች ጣቢያ.
ጥ፡ ESP-IDFን ከሌሎች ማይክሮ መቆጣጠሪያ ጋር መጠቀም እችላለሁ?
መ: ESP-IDF በተለይ ለESP32 ነው የተቀየሰው፣ ግን ሊያገኙ ይችላሉ።
ከሌሎች የ Espressif ማይክሮ መቆጣጠሪያ ጋር ተኳሃኝነት።
ESP32
ESP-IDF ፕሮግራሚንግ መመሪያ
የተለቀቀው v5.0.9 Espressif ሲስተምስ ሜይ 16፣ 2025
ማውጫ
ማውጫ
i
1 ጀምር
3
1.1 መግቢያ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.2 የሚያስፈልግዎ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.2.1 ሃርድዌር . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.2.2 ሶፍትዌር . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
1.3 መጫን. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
1.3.1 አይዲኢ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
1.3.2 በእጅ መጫን . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
1.4 የመጀመሪያ ፕሮጀክትዎን ይገንቡ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
1.5 ESP-IDFን ያራግፉ። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
2 የኤፒአይ ማጣቀሻ
45
2.1 የኤፒአይ ስምምነቶች። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
2.1.1 አያያዝ ስህተት . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
2.1.2 የማዋቀር መዋቅሮች . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
2.1.3 የግል ኤ.ፒ.አይ.ዎች. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
2.1.4 አካላት በዘፀample ፕሮጀክቶች . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
2.1.5 ኤፒአይ መረጋጋት. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
2.2 የመተግበሪያ ፕሮቶኮሎች. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
2.2.1 ASIO ወደብ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
2.2.2 ESP-Modbus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
2.2.3 ESP-MQTT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
2.2.4 ESP-TLS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
2.2.5 ESP HTTP ደንበኛ። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
2.2.6 ESP የአካባቢ ቁጥጥር . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
2.2.7 ESP ተከታታይ የስላቭ አገናኝ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
2.2.8 ESP x509 የምስክር ወረቀት ቅርቅብ። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
2.2.9 HTTP አገልጋይ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123
2.2.10 HTTPS አገልጋይ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150
2.2.11 ICMP Echo. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154
2.2.12 mDNS አገልግሎት . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
2.2.13 Mbed TLS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
2.2.14 IP የአውታረ መረብ ንብርብር. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161
2.3 ብሉቱዝ ኤፒአይ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161
2.3.1 ብሉቱዝ® የጋራ። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161
2.3.2 ብሉቱዝ® ዝቅተኛ ኃይል። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171
2.3.3 ብሉቱዝ® ክላሲክ። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 325
2.3.4 መቆጣጠሪያ እና ኤች.ሲ.አይ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 471
2.3.5 ESP-BLE-MESH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 485
2.3.6 NimBLE ላይ የተመሰረቱ አስተናጋጅ ኤ ፒ አይዎች። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 767
2.4 የስህተት ኮዶች ማጣቀሻ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 769
2.5 የአውታረ መረብ ኤፒአይዎች። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 776
2.5.1 ዋይ ፋይ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 776
2.5.2 ኤተርኔት. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 899
2.5.3 ክር . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 936
i
2.5.4 ESP-NETIF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 942 2.5.5 IP የአውታረ መረብ ንብርብር. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 974 2.5.6 የመተግበሪያ ንብርብር. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 976 2.6 Peripherals API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 977 2.6.1 አናሎግ ወደ ዲጂታል መለወጫ (ADC) Oneshot ሁነታ ሾፌር . . . . . . . . . . . . . . . . . 977 2.6.2 አናሎግ ወደ ዲጂታል መለወጫ (ADC) ቀጣይነት ያለው ሞድ ሾፌር . . . . . . . . . . . . . . . 986 2.6.3 አናሎግ ወደ ዲጂታል መለወጫ (ADC) የካሊብሬሽን ነጂ። . . . . . . . . . . . . . . . . . . 993 2.6.4 የሰዓት ዛፍ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 997 2.6.5 ዲጂታል ወደ አናሎግ መለወጫ (DAC) . . . . . . . . . . . . . . . . . . . . . . . . . . . 1004 2.6.6 GPIO & RTC GPIO. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1008 2.6.7 አጠቃላይ ዓላማ ቆጣሪ (ጂፒቲመር) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1027 2.6.8 በኢንተር-የተቀናጀ ወረዳ (I2C) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1039 2.6.9 ኢንተር-አይሲ ድምጽ (I2S) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1056 2.6.10 LCD. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1090 2.6.11 የ LED መቆጣጠሪያ (LEDC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1107 2.6.12 የሞተር መቆጣጠሪያ ምት ወርድ ሞዱላተር (MCPWM) . . . . . . . . . . . . . . . . . . . . . 1126 2.6.13 Pulse Counter (PCNT) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1178 2.6.14 የርቀት መቆጣጠሪያ አስተላላፊ (RMT) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1193 2.6.15 የኤስዲ መጎተት መስፈርቶች . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1220 2.6.16 የኤስዲኤምኤምሲ አስተናጋጅ ሹፌር። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1223 2.6.17 SD SPI አስተናጋጅ ነጂ። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1229 2.6.18 SDIO ካርድ ባሪያ ሹፌር . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1234 2.6.19 የሲግማ-ዴልታ ማስተካከያ (ኤስዲኤም) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1244 2.6.20 SPI ዋና ሹፌር . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1249 2.6.21 SPI ባሪያ ሹፌር . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1274 2.6.22 ESP32-WROOM-32SE (ደህንነቱ የተጠበቀ አካል) . . . . . . . . . . . . . . . . . . . . . . . . . 1281 2.6.23 የንክኪ ዳሳሽ። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1282 2.6.24 ባለ ሁለት ሽቦ አውቶሞቲቭ በይነገጽ (TWAI) . . . . . . . . . . . . . . . . . . . . . . . . . . 1299 2.6.25 ሁለንተናዊ ያልተመሳሰለ ተቀባይ/አስተላላፊ (UART) . . . . . . . . . . . . . . . . . . 1317 2.7 የፕሮጀክት ውቅር. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1342 2.7.1 መግቢያ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1342 2.7.2 የፕሮጀክት ውቅር ሜኑ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1342 2.7.3 sdkconfig.defaults በመጠቀም። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1342 2.7.4 Kconfig የመቅረጽ ደንቦች. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1343 2.7.5 የKconfig አማራጮች የኋላ ተኳኋኝነት። . . . . . . . . . . . . . . . . . . . . . . . 1343 2.7.6 የማዋቀር አማራጮች ማጣቀሻ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1343 2.8 አቅርቦት ኤ.ፒ.አይ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1647 2.8.1 የፕሮቶኮል ግንኙነት. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1647 2.8.2 የተዋሃደ አቅርቦት. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1665 2.8.3 የዋይ ፋይ አቅርቦት። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1669 2.9 የማከማቻ ኤ.ፒ.አይ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Fileየስርዓት ድጋፍ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1691 2.9.2 የማምረቻ መገልገያ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1699 2.9.3 የማይለዋወጥ ማከማቻ ቤተ መጻሕፍት። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1703 2.9.4 NVS ክፍልፍል ጄኔሬተር መገልገያ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1725 2.9.5 ኤስዲ/ኤስዲኦ/ኤምኤምሲ ሹፌር። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1730 2.9.6 SPI ፍላሽ ኤፒአይ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1744 2.9.7 SPIFFS Fileስርዓት . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1780 2.9.8 ምናባዊ fileየስርዓት አካል . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1784 2.9.9 Wear Leveling API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1800 2.10 የስርዓት ኤፒአይ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1803 2.10.1 የመተግበሪያ ምስል ቅርጸት. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1803 2.10.2 የመተግበሪያ ደረጃ መከታተል. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1808 2.10.3 የጥሪ ተግባር ከውጭ ቁልል ጋር። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1813 2.10.4 ቺፕ ክለሳ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1815 2.10.5 ኮንሶል . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1817 2.10.6 eFuse አስተዳዳሪ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1826 2.10.7 የስህተት ኮዶች እና የረዳት ተግባራት. . . . . . . . . . . . . . . . . . . . . . . . . . . . . በ1846 ዓ.ም
ii
2.10.8 ESP HTTPS OTA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1849 2.10.9 Event Loop Library. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1856 2.10.10 FreeRTOS (በላይview) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1869 2.10.11 FreeRTOS (ESP-IDF) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1871 2.10.12 FreeRTOS (ተጨማሪ ባህሪያት) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1988 2.10.13 ክምር ትውስታ ምደባ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2008 2.10.14 ክምር ማህደረ ትውስታ ማረም. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2021 2.10.15 ከፍተኛ ጥራት ቆጣሪ (ESP ቆጣሪ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2032 2.10.16 ውስጣዊ እና ያልተረጋጉ ኤፒአይዎች . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2038 2.10.17 የኢንተር ፕሮሰሰር ጥሪ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2040 2.10.18 የማቋረጥ ድልድል . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2045 2.10.19 የምዝግብ ማስታወሻ ቤተ መጻሕፍት . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2051 2.10.20 የተለያዩ የስርዓት ኤፒአይዎች። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2058 2.10.21 በአየር ዝማኔዎች (ኦቲኤ) ላይ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2073 2.10.22 የአፈፃፀም ክትትል. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2084 2.10.23 የኃይል አስተዳደር. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2087 2.10.24 POSIX ክሮች ድጋፍ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2093 2.10.25 የዘፈቀደ ቁጥር ማመንጨት። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2097 2.10.26 የእንቅልፍ ሁነታዎች . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2099 2.10.27 የሶሲ አቅም . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2111 2.10.28 የስርዓት ጊዜ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2121 2.10.29 የ himem ምደባ API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2126 2.10.30 ULP ኮፕሮሰሰር ፕሮግራሚንግ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2129 2.10.31 ጠባቂዎች . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2161
3 የሃርድዌር ማጣቀሻ
2167
3.1 ቺፕ ተከታታይ ንጽጽር. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2167
3.1.1 ተዛማጅ ሰነዶች . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2170
4 API መመሪያዎች
2171
4.1 የመተግበሪያ ደረጃ መከታተያ ቤተ መጻሕፍት . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2171
4.1.1 በላይview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2171
4.1.2 የአሠራር ዘዴዎች . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2171
4.1.3 የማዋቀር አማራጮች እና ጥገኛዎች . . . . . . . . . . . . . . . . . . . . . . . . . . 2172
4.1.4 ይህንን ቤተ-መጽሐፍት እንዴት መጠቀም እንደሚቻል . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2173
4.2 የመተግበሪያ ጅምር ፍሰት . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2181
4.2.1 የመጀመሪያ ዎችtage bootloader . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2182
4.2.2 ሰከንድtage bootloader . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2182
4.2.3 የመተግበሪያ ጅምር . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2183
4.3 ብሉቱዝ® ክላሲክ። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2184
4.3.1 በላይview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2184
4.4 ብሉቱዝ® ዝቅተኛ ኃይል። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2186
4.4.1 በላይview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2186
4.4.2 ጀምር . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2191
4.4.3 ፕሮfile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2240
4.5 ቡት ጫኚ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2284
4.5.1 የቡት ጫኝ ተኳሃኝነት . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2285
4.5.2 የምዝግብ ማስታወሻ ደረጃ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2285
4.5.3 የፋብሪካ ዳግም ማስጀመር . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2286
4.5.4 ከሙከራ Firmware ቡት። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2286
4.5.5 ተመልሷል። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2287
4.5.6 ጠባቂ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2287
4.5.7 የቡት ጫኚ መጠን . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2287
4.5.8 ፈጣን ቡት ከ ጥልቅ እንቅልፍ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2287
4.5.9 ብጁ ቡት ጫኚ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2287
4.6 የግንባታ ስርዓት . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2288
4.6.1 በላይview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2288
4.6.2 የግንባታ ስርዓቱን መጠቀም. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2289
iii
4.6.3 ዘፀample ፕሮጀክት . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2291 4.6.4 ፕሮጀክት CMakeLists File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2291 4.6.5 ክፍሎች CMakeLists Fileኤስ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2293 4.6.6 የክፍሎች ውቅር። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2295 4.6.7 ቅድመ ፕሮሰሰር ፍቺዎች። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2295 4.6.8 የክፍሎች መስፈርቶች . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2295 4.6.9 የፕሮጀክቱ የበላይ አካላት። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2299 4.6.10 ውቅር-ብቻ አካላት. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2300 4.6.11 ማረም CMake . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2300 4.6.12 ዘፀample Component CMakeLists . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2301 4.6.13 ብጁ sdkconfig ነባሪዎች። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2305 4.6.14 የፍላሽ ክርክሮች . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2305 4.6.15 የቡት ጫኚውን መገንባት . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2306 4.6.16 ንፁህ የሲ.ኤም.ኤ.ኢ.ክ አካላትን መጻፍ . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2306 4.6.17 የሶስተኛ ወገን የሲ.ኤም.ኤም. ፕሮጀክቶችን ከአካል ክፍሎች ጋር መጠቀም። . . . . . . . . . . . . . . . . . . 2306 4.6.18 ቀድሞ የተገነቡ ቤተ-መጻሕፍትን ከአካል ክፍሎች ጋር መጠቀም። . . . . . . . . . . . . . . . . . . . . . . . . 2307 4.6.19 ESP-IDFን በብጁ የCMake ፕሮጀክቶች መጠቀም። . . . . . . . . . . . . . . . . . . . . . . . . 2307 4.6.20 ESP-IDF CMake Build System API . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2308 4.6.21 File ግሎቢንግ እና ተጨማሪ ግንባታዎች። . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2312 4.6.22 የስርዓት ሜታዳታ ይገንቡ። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2313 4.6.23 የስርዓት ውስጣዊ አካላትን ይገንቡ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2313 4.6.24 ከ ESP-IDF ጂኤንዩ የመሰደድ ስርዓት። . . . . . . . . . . . . . . . . . . . . . . 2315 4.7 ኮር ቆሻሻ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2316 4.7.1 በላይview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2316 4.7.2 ውቅሮች. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2317 4.7.3 የኮር ቆሻሻ ወደ ብልጭታ ይቆጥቡ። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2317 4.7.4 የኮር መጣል ወደ UART ያትሙ። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2318 4.7.5 ROM ተግባራት በኋላ ትራሶች ውስጥ። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2318 4.7.6 ተለዋዋጮችን በፍላጎት መጣል። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2318 4.7.7 እየሮጠ espcoredump.py . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2319 4.8 ጥልቅ እንቅልፍ መቀስቀሻዎች። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2322 4.8.1 የመቀስቀሻ ዕቃዎች ደንቦች. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2322 4.8.2 ገለባ መተግበር። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2322 4.8.3 ኮድን ወደ RTC ማህደረ ትውስታ በመጫን ላይ። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2322 4.8.4 ውሂብን ወደ RTC ማህደረ ትውስታ በመጫን ላይ። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2323 4.8.5 CRC የንቃት ስቱቦችን ያረጋግጡ። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2323 4.8.6 ዘፀampለ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2323 4.9 አያያዝ ላይ ስህተት . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2324 4.9.1 በላይview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2324 4.9.2 የስህተት ኮዶች። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2324 4.9.3 የስህተት ኮዶችን ወደ የስህተት መልእክት መለወጥ። . . . . . . . . . . . . . . . . . . . . . . . . . 2324 4.9.4 ESP_ERROR_CHECK ማክሮ። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2325 4.9.5 ESP_ERROR_CHECK_WITHOUT_ABORT ማክሮ። . . . . . . . . . . . . . . . . . . . . 2325 4.9.6 ESP_RETURN_ON_ERROR ማክሮ። . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2325 4.9.7 ESP_GOTO_ON_ERROR ማክሮ። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2325 4.9.8 ESP_RETURN_ON_FALSE ማክሮ። . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2325 4.9.9 ESP_GOTO_ON_FALSE ማክሮ። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2325 4.9.10 ቼክ ማክሮስ ዘፀampሌስ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2326 4.9.11 ቅጦችን አያያዝ ላይ ስህተት . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2326 4.9.12 C++ የተለዩ። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2327 4.10 ESP-WIFI-MESH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2327 4.10.1 በላይview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2327 4.10.2 መግቢያ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2328 4.10.3 ESP-WIFI-MESH ጽንሰ-ሐሳቦች . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2329 4.10.4 ኔትወርክ መገንባት . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2334 4.10.5 ኔትወርክን ማስተዳደር . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2339 4.10.6 የውሂብ ማስተላለፍ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2342 4.10.7 ቻናል መቀየር. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2344
iv
4.10.8 አፈጻጸም . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2347 4.10.9 ተጨማሪ ማስታወሻዎች. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2348 4.11 የክስተት አያያዝ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2348 4.11.1 ዋይ ፋይ፣ ኢተርኔት እና አይፒ ዝግጅቶች። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2348 4.11.2 ጥልፍልፍ ክስተቶች. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2349 4.11.3 የብሉቱዝ ክስተቶች. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2350 4.12 ገዳይ ስህተቶች . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2350 4.12.1 በላይview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2350 4.12.2 የሽብር ተቆጣጣሪ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2350 4.12.3 የቆሻሻ መጣያ እና የኋሊት መመዝገብ ይመዝገቡ። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2351 4.12.4 ጂዲቢ ስቱብ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2353 4.12.5 RTC Watchdog ጊዜው አልፎበታል። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2354 4.12.6 የጉሩ ማሰላሰል ስህተቶች። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2354 4.12.7 ሌሎች ገዳይ ስህተቶች። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2356 4.13 ፍላሽ ምስጠራ። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2358 4.13.1 መግቢያ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2359 4.13.2 ተዛማጅ eFuses. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2359 4.13.3 የፍላሽ ምስጠራ ሂደት። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2360 4.13.4 የፍላሽ ምስጠራ ውቅረት። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2360 4.13.5 ሊሆኑ የሚችሉ ውድቀቶች . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2366 4.13.6 ESP32 የፍላሽ ምስጠራ ሁኔታ። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2368 4.13.7 በተመሰጠረ ፍላሽ ውስጥ መረጃን ማንበብ እና መፃፍ። . . . . . . . . . . . . . . . . . . . . . . 2368 4.13.8 የተመሰጠረ ፍላሽ በማዘመን ላይ። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2369 4.13.9 የፍላሽ ምስጠራን ማሰናከል። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2369 4.13.10 ስለ ፍላሽ ምስጠራ ቁልፍ ነጥቦች። . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2370 4.13.11 የፍላሽ ምስጠራ ገደቦች። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2370 4.13.12 ፍላሽ ምስጠራ እና ደህንነቱ የተጠበቀ ቡት። . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2371 4.13.13 የላቁ ባህሪያት. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2371 4.13.14 ቴክኒካዊ ዝርዝሮች. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2373 4.14 የሃርድዌር ማጠቃለያ። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2373 4.14.1 አርክቴክቸር . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2374 4.14.2 ኤልኤል (ዝቅተኛ ደረጃ) ንብርብር. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2375 4.14.3 HAL (Hardware Abstraction Layer) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2376 4.15 ከፍተኛ ደረጃ መቆራረጥ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2377 4.15.1 የተቆራረጡ ደረጃዎች. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2377 4.15.2 ማስታወሻዎች. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . TAG ማረም . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2378 4.16.1 መግቢያ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2378 4.16.2 እንዴት ነው የሚሰራው? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2379 4.16.3 ጄን መምረጥTAG አስማሚ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2380 4.16.4 OpenOCD ማዋቀር። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2380 4.16.5 ESP32 ዒላማ በማዋቀር ላይ። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2380 4.16.6 አራሚ በማስጀመር ላይ። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2386 4.16.7 ማረም ዘፀampሌስ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2386 4.16.8 ግንባታ OpenOCD ከምንጮች . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2386 4.16.9 ጠቃሚ ምክሮች እና ጥያቄዎች . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2391 4.16.10 ተዛማጅ ሰነዶች. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2396 4.17 ሊንከር ስክሪፕት ትውልድ። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2421 4.17.1 በላይview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2421 4.17.2 ፈጣን ጅምር. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2421 4.17.3 Linker Script Generation Internals . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2424 4.18 lwIP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2430 4.18.1 የሚደገፉ ኤፒአይዎች። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2430 4.18.2 BSD Sockets API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2431 4.18.3 Netconn API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2435 4.18.4 lwIP FreeRTOS ተግባር . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2435 4.18.5 IPv6 ድጋፍ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2435 4.18.6 esp-lwip ብጁ ማሻሻያዎች። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2436
v
4.18.7 የአፈጻጸም ማመቻቸት . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2438 4.19 የማህደረ ትውስታ ዓይነቶች. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2439
4.19.1 ድራም (ዳታ ራም) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2439 4.19.2 IRAM (መመሪያ RAM) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2440 4.19.3 IROM (ከፍላሽ የተተገበረ ኮድ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2441 4.19.4 DROM (በፍላሽ ውስጥ የተከማቸ መረጃ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2441 4.19.5 RTC ቀርፋፋ ማህደረ ትውስታ። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2441 4.19.6 RTC ፈጣን ማህደረ ትውስታ። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2441 4.19.7 ዲኤምኤ አቅም ያለው መስፈርት . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2441 4.19.8 የዲኤምኤ ቋት በክምር ውስጥ። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2442 4.20 ክፈት ክር . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2442 4.20.1 የክፍት ክር ቁልል ሁነታዎች። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2443 4.20.2 ክፍት ተከታታይ መተግበሪያ እንዴት እንደሚፃፍ . . . . . . . . . . . . . . . . . . . . . . . . . 2443 4.20.3 ክፍት ክር የድንበር ራውተር። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2444 4.21 የክፋይ ጠረጴዛዎች. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2444 4.21.1 በላይview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2445 4.21.2 አብሮገነብ ክፍልፋይ ጠረጴዛዎች. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2445 4.21.3 ብጁ ጠረጴዛዎችን መፍጠር. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2445 4.21.4 የሁለትዮሽ ክፍልፋይ ሰንጠረዥ መፍጠር. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2448 4.21.5 ክፍልፋይ መጠን ቼኮች. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2448 4.21.6 የክፋይ ጠረጴዛውን ብልጭ ድርግም. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2449 4.21.7 ክፍልፍል መሣሪያ (parttool.py) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2449 4.22 አፈጻጸም . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2450 4.22.1 አፈፃፀሙን እንዴት ማሻሻል እንደሚቻል . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2450 4.22.2 መመሪያዎች. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2451 4.23 የ RF መለኪያ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2468 4.23.1 ከፊል ማስተካከል. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2468 4.23.2 ሙሉ ልኬት። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2469 4.23.3 ምንም መለኪያ የለም። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2469 4.23.4 PHY ማስጀመሪያ መረጃ። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2469 4.23.5 ኤፒአይ ዋቢ። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2469 4.24 ደህንነቱ የተጠበቀ ቡት . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2472 4.24.1 ዳራ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2472 4.24.2 ደህንነቱ የተጠበቀ የማስነሻ ሂደት አልፏልview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2473 4.24.3 ቁልፎች. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2473 4.24.4 የቡት ጫኚ መጠን። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2474 4.24.5 ደህንነቱ የተጠበቀ ቡት እንዴት ማንቃት እንደሚቻል። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2474 4.24.6 ዳግም የሚበራ ሶፍትዌር ቡት ጫኚ። . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2475 4.24.7 ደህንነቱ የተጠበቀ የቡት ፊርማ ቁልፍ ማመንጨት። . . . . . . . . . . . . . . . . . . . . . . . . . . . 2475 4.24.8 የርቀት ምስሎች መፈረም . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2475 4.24.9 ደህንነቱ የተጠበቀ ቡት ምርጥ ልምዶች። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2476 4.24.10 ቴክኒካዊ ዝርዝሮች. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2476 4.24.11 ደህንነቱ የተጠበቀ ቡት እና ፍላሽ ምስጠራ። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2477 4.24.12 የተፈረመ መተግበሪያ ማረጋገጫ ያለ ሃርድዌር ደህንነቱ የተጠበቀ ቡት። . . . . . . . . . . . . . . . . . 2478 4.24.13 የላቁ ባህሪያት. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2478 4.25 ደህንነቱ የተጠበቀ ቡት V2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2478 4.25.1 ዳራ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2479 4.25.2 አድቫንtages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2479 4.25.3 ደህንነቱ የተጠበቀ የቡት ቪ2 ሂደት። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2479 4.25.4 የፊርማ ማገጃ ቅርጸት. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2480 4.25.5 ደህንነቱ የተጠበቀ ንጣፍ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2480 4.25.6 የፊርማ ማገጃ ማረጋገጥ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2481 4.25.7 ምስልን ማረጋገጥ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2481 4.25.8 የቡት ጫኚ መጠን። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2481 4.25.9 eFuse አጠቃቀም። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2481 4.25.10 ደህንነቱ የተጠበቀ ቡት V2 እንዴት ማንቃት እንደሚቻል። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2481 4.25.11 ደህንነቱ የተጠበቀ ቡት ከነቃ በኋላ ገደቦች። . . . . . . . . . . . . . . . . . . . . . . . . . 2482 4.25.12 ደህንነቱ የተጠበቀ የቡት ፊርማ ቁልፍ ማመንጨት። . . . . . . . . . . . . . . . . . . . . . . . . . . . 2482
vi
4.25.13 የርቀት ምስሎች መፈረም . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2483 4.25.14 ደህንነቱ የተጠበቀ ቡት ምርጥ ልምዶች። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2484 4.25.15 ቴክኒካዊ ዝርዝሮች. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2484 4.25.16 ደህንነቱ የተጠበቀ ቡት እና ፍላሽ ምስጠራ። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2484 4.25.17 የተፈረመ መተግበሪያ ማረጋገጫ ያለ ሃርድዌር ደህንነቱ የተጠበቀ ቡት። . . . . . . . . . . . . . . . . . 2484 4.25.18 የላቁ ባህሪያት. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2485 4.26 ለውጫዊ RAM ድጋፍ። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2485 4.26.1 መግቢያ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2485 4.26.2 ሃርድዌር . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2485 4.26.3 ውጫዊ ራም በማዋቀር ላይ። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2486 4.26.4 ገደቦች. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2487 4.26.5 ማስጀመር አለመቻል . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2488 4.26.6 ቺፕ ክለሳዎች. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2488 4.27 ክር የአካባቢ ማከማቻ። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2488 4.27.1 በላይview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2488 4.27.2 FreeRTOS ቤተኛ ኤፒአይ። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2489 4.27.3 የገጽታ ኤፒአይ። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2489 4.27.4 C11 መደበኛ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2489 4.28 መሳሪያዎች . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2489 4.28.1 IDF Frontend - idf.py. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2489 4.28.2 IDF Docker ምስል. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2493 4.28.3 IDF ዊንዶውስ ጫኝ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2495 4.28.4 IDF አካል አስተዳዳሪ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2496 4.28.5 IDF Clang Tidy. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2497 4.28.6 ሊወርዱ የሚችሉ መሳሪያዎች . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2498 4.29 የክፍል ሙከራ በESP32። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2512 4.29.1 መደበኛ የፈተና ጉዳዮች። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2512 4.29.2 ባለብዙ መሳሪያ ሙከራ ጉዳዮች። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2513 4.29.3 ባለብዙ-ዎችtagሠ የሙከራ ጉዳዮች . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2514 4.29.4 ለተለያዩ ዓላማዎች ሙከራዎች። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2514 4.29.5 የሕንፃ ክፍል ሙከራ መተግበሪያ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2515 4.29.6 የሩጫ ክፍል ሙከራዎች። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2515 4.29.7 የጊዜ ኮድ ከመሸጎጫ ካሳ ጊዜ ቆጣሪ ጋር። . . . . . . . . . . . . . . . . . . . . . . 2516 4.29.8 መሳለቂያ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2517 4.30 በሊኑክስ ላይ የክፍል ሙከራ። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2519 4.30.1 የተከተተ ሶፍትዌር ሙከራዎች። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2519 4.30.2 የIDF ክፍል ሙከራዎች በሊኑክስ አስተናጋጅ ላይ። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2520 4.31 የዋይፋይ ሹፌር . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2521 4.31.1 ESP32 Wi-Fi ባህሪ ዝርዝር። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2521 4.31.2 የዋይ ፋይ መተግበሪያ እንዴት እንደሚፃፍ። . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2521 4.31.3 ESP32 Wi-Fi API የስህተት ኮድ። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2522 4.31.4 ESP32 ዋይ ፋይ ኤፒአይ ልኬት ማስጀመር። . . . . . . . . . . . . . . . . . . . . . . . . 2522 4.31.5 ESP32 ዋይ ፋይ ፕሮግራሚንግ ሞዴል . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2522 4.31.6 ESP32 Wi-Fi ክስተት መግለጫ። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2523 4.31.7 ESP32 ዋይ ፋይ ጣቢያ አጠቃላይ ሁኔታ። . . . . . . . . . . . . . . . . . . . . . . . . . . 2526 4.31.8 ESP32 Wi-Fi AP አጠቃላይ ሁኔታ። . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2529 4.31.9 ESP32 ዋይ ፋይ ቅኝት። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2529 4.31.10 ESP32 ዋይ ፋይ ጣቢያ ማገናኘት ሁኔታ። . . . . . . . . . . . . . . . . . . . . . . . . 2536 4.31.11 ESP32 ዋይ ፋይ ጣቢያ በርካታ ኤ.ፒ.ኤኖች ሲገኙ መገናኘት። . . . . . . . . . . . . 2543 4.31.12 ዋይ ፋይ እንደገና ይገናኙ። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2543 4.31.13 የዋይ ፋይ ቢኮን ጊዜ አለቀ። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2543 4.31.14 ESP32 ዋይ ፋይ ማዋቀር። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2543 4.31.15 ዋይ ፋይ ቀላል ማገናኛ TM (ዲፒፒ)። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2549 4.31.16 የገመድ አልባ አውታረመረብ አስተዳደር. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2549 4.31.17 የሬዲዮ ምንጭ መለኪያ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2549 4.31.18 ፈጣን የቢኤስኤስ ሽግግር። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2550 4.31.19 ESP32 ዋይ ፋይ ሃይል ቆጣቢ ሁነታ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2550 4.31.20 ESP32 ዋይ ፋይ የሚተላለፍ። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
vii
4.31.21 ዋይ ፋይ 80211 ፓኬት ላክ። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2552 4.31.22 ዋይ ፋይ ስኒፈር ሁነታ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2554 4.31.23 ዋይ ፋይ በርካታ አንቴናዎች። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2554 4.31.24 የ Wi-Fi ቻናል የግዛት መረጃ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2556 4.31.25 የWi-Fi ቻናል የግዛት መረጃ አዋቅር። . . . . . . . . . . . . . . . . . . . . . . . . 2557 4.31.26 ዋይ ፋይ HT20/40 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2557 4.31.27 ዋይ ፋይ QoS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2557 4.31.28 ዋይ ፋይ AMSDU . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2558 4.31.29 የ Wi-Fi ፍርፋሪ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2558 4.31.30 WPS ተመዝጋቢ። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2558 4.31.31 የWi-Fi ቋት አጠቃቀም። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2558 4.31.32 የ Wi-Fi አፈጻጸምን እንዴት ማሻሻል እንደሚቻል. . . . . . . . . . . . . . . . . . . . . . . . . . . . 2559 4.31.33 Wi-Fi Menuconfig. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2562 4.31.34 መላ መፈለግ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2565 4.32 የዋይ ፋይ ደህንነት። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2568 4.32.1 ESP32 የ Wi-Fi ደህንነት ባህሪያት. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2568 4.32.2 የተጠበቁ የአስተዳደር ክፈፎች (PMF) . . . . . . . . . . . . . . . . . . . . . . . . . . . 2571 4.32.3 ዋይፋይ ድርጅት. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2572 4.32.4 WPA3-የግል. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2572 4.32.5 ዋይ ፋይ የተሻሻለ ክፍትTM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2573 4.33 RF አብሮ መኖር. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2573 4.33.1 በላይview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2574 4.33.2 የተደገፈ አብሮ የመኖር ሁኔታ ለESP32። . . . . . . . . . . . . . . . . . . . . . . . . 2574 4.33.3 አብሮ የመኖር ዘዴ እና ፖሊሲ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2574 4.33.4 አብሮ የመኖር ባህሪን እንዴት መጠቀም እንደሚቻል . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2576 4.34 ሊባዙ የሚችሉ ግንባታዎች . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2577 4.34.1 መግቢያ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2577 4.34.2 የማይደገሙ ግንባታዎች ምክንያቶች። . . . . . . . . . . . . . . . . . . . . . . . . . . . 2577 4.34.3 በ ESP-IDF ውስጥ ሊባዙ የሚችሉ ግንባታዎችን ማንቃት። . . . . . . . . . . . . . . . . . . . . . . . . . 2577 4.34.4 ሊባዙ የሚችሉ ግንባታዎች እንዴት ተሳክተዋል። . . . . . . . . . . . . . . . . . . . . . . . . . . . 2578 4.34.5 ሊባዙ የሚችሉ ግንባታዎች እና ማረም . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2578 4.34.6 አሁንም ሊባዙ የሚችሉ ግንባታዎችን የሚነኩ ምክንያቶች። . . . . . . . . . . . . . . . . . . . . . . . 2578 4.35 ዝቅተኛ ኃይል ሁነታ የተጠቃሚ መመሪያ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2578
5 የፍልሰት መመሪያዎች
2579
5.1 ESP-IDF 5.x የፍልሰት መመሪያ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2579
5.1.1 ከ 4.4 ወደ 5.0 ስደት. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2579
6 ቤተ-መጻሕፍት እና ማዕቀፎች
2611
6.1 Cloud Frameworks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2611
6.1.1 ESP ዝናብ ሰሪ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2611
6.1.2 AWS IoT. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2611
6.1.3 Azure IoT. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2611
6.1.4 Google IoT ኮር. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2611
6.1.5 Alyun IoT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2611
6.1.6 ጆይሊንክ IoT. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2611
6.1.7 Tencent IoT. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2612
6.1.8 Tencentyun IoT. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2612
6.1.9 Baidu IoT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2612
6.2 Espressifns ማዕቀፎች . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2612
6.2.1 Espressif የድምጽ ልማት ማዕቀፍ . . . . . . . . . . . . . . . . . . . . . . . . . 2612
6.2.2 ESP-CSI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2612
6.2.3 Espressif DSP ቤተ መጻሕፍት. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2612
6.2.4 ESP-WIFI-MESH የልማት ማዕቀፍ . . . . . . . . . . . . . . . . . . . . . . . . 2613
6.2.5 ESP-WHO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2613
6.2.6 ESP ዝናብ ሰሪ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2613
6.2.7 ESP-IoT-መፍትሄ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2613
6.2.8 ESP-ፕሮቶኮሎች. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2613
viii
6.2.9 ESP-BSP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2614
7 የአስተዋጽዖዎች መመሪያ
2615
7.1 እንዴት ማበርከት እንደሚቻል . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2615
7.2 ከመዋጮ በፊት. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2615
7.3 የመጎተት ጥያቄ ሂደት . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2615
7.4 የህግ ክፍል. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2616
7.5 ተዛማጅ ሰነዶች . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2616
7.5.1 Espressif IoT ልማት ማዕቀፍ ዘይቤ መመሪያ. . . . . . . . . . . . . . . . . . . . 2616
7.5.2 ለኢኤስፒ-አይዲኤፍ ፕሮጀክት ቅድመ-ኮሚት መንጠቆን ይጫኑ። . . . . . . . . . . . . . . . . . . . . . . 2623
7.5.3 የሰነድ ኮድ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2624
7.5.4 መፍጠር Exampሌስ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2629
7.5.5 የኤፒአይ ሰነድ አብነት። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2630
7.5.6 የአስተዋጽዖ አበርካች ስምምነት . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2632
7.5.7 የቅጂ መብት ራስጌ መመሪያ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2634
7.5.8 የESP-IDF ሙከራዎች ከPytest መመሪያ ጋር። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2635
8 ESP-IDF ስሪቶች
2645
8.1 የተለቀቁ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2645
8.2 በየትኛው ስሪት ልጀምር? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2645
8.3 የስሪት እቅድ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2645
8.4 የድጋፍ ጊዜያት. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2646
8.5 የአሁኑን ስሪት መፈተሽ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2647
8.6 Git የስራ ፍሰት። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2648
8.7 ESP-IDF በማዘመን ላይ። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2648
8.7.1 ወደ የተረጋጋ መለቀቅ ማዘመን። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2649
8.7.2 ወደ ቅድመ-የተለቀቀ ስሪት ማዘመን። . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2649
8.7.3 ወደ ማስተር ቅርንጫፍ በማዘመን ላይ። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2649
8.7.4 ወደ መልቀቂያ ቅርንጫፍ ማዘመን። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2650
9 መርጃዎች
2651
9.1 PlatformIO. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2651
9.1.1 PlatformIO ምንድን ነው? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2651
9.1.2 መጫን . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2651
9.1.3 ውቅር . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2652
9.1.4 አጋዥ ስልጠናዎች . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2652
9.1.5 ፕሮጀክት Exampሌስ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2652
9.1.6 ቀጣይ እርምጃዎች . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2652
9.2 ጠቃሚ ማገናኛዎች . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2652
10 የቅጂ መብቶች እና ፈቃዶች
2653
10.1 የሶፍትዌር የቅጂ መብቶች . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2653
10.1.1 የጽኑ ትዕዛዝ አካላት . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2653
10.1.2 ሰነዶች. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2654
10.2 የሮም ምንጭ ኮድ የቅጂ መብቶች። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2654
10.3 Xtensa libhal MIT ፈቃድ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2655
10.4 TinyBasic Plus MIT ፍቃድ። . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2655
10.5 TJPgDec ፈቃድ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2655
11 ስለ
2657
12 በቋንቋዎች መካከል ይቀያይሩ
2659
መረጃ ጠቋሚ
2661
መረጃ ጠቋሚ
2661
ix
x
ማውጫ
ይህ የ Espressif IoT ልማት ማዕቀፍ (esp-idf) ሰነድ ነው። ESP-IDF ለESP32፣ ESP32-S እና ESP32-C Series SoCs ይፋዊ የእድገት ማዕቀፍ ነው። ይህ ሰነድ ESP-IDFን ከESP32 SoC ጋር መጠቀምን ይገልጻል።
እንጀምር
የኤፒአይ ማጣቀሻ
የኤፒአይ መመሪያዎች
Espressif ስርዓቶች
1 የሰነድ አስተያየት አስገባ
የተለቀቀው v5.0.9
ማውጫ
Espressif ስርዓቶች
2 የሰነድ አስተያየት አስገባ
የተለቀቀው v5.0.9
ምዕራፍ 1
እንጀምር
ይህ ሰነድ በESP32 ቺፕ በ Espressif ላይ በመመስረት ለሃርድዌር የሶፍትዌር ልማት አካባቢን እንዲያዘጋጁ ለመርዳት የታሰበ ነው። ከዚያ በኋላ ቀላል የቀድሞample ESP-IDF (Espressif IoT Development Framework) ለምኑ ውቅረት፣ ከዚያም በESP32 ሰሌዳ ላይ firmware ለመገንባት እና ለማብረቅ እንዴት እንደሚጠቀሙ ያሳየዎታል።
ማስታወሻ፡ ይህ ለተረጋጋ ስሪት v5.0.9 የESP-IDF ሰነድ ነው። ሌሎች የESP-IDF ስሪቶችም ይገኛሉ።
1.1 መግቢያ
ESP32 በቺፕ ላይ ያለ ሥርዓት ሲሆን የሚከተሉትን ባህሪያት ያዋህዳል፡ · ዋይ ፋይ (2.4 GHz band) · ብሉቱዝ · ባለሁለት ከፍተኛ አፈጻጸም Xtensa® 32-bit LX6 CPU cores · Ultra Low Power ተባባሪ ፕሮሰሰር · በርካታ ፔሪፈራሎች
በ 40 nm ቴክኖሎጂ የተጎላበተ፣ ESP32 ጠንካራ፣ በጣም የተቀናጀ መድረክ ያቀርባል፣ ይህም ለተቀላጠፈ የኃይል አጠቃቀም፣ የታመቀ ዲዛይን፣ ደህንነት፣ ከፍተኛ አፈጻጸም እና አስተማማኝነት ያለውን ቀጣይነት ያለው ፍላጎት ለማሟላት ይረዳል። Espressif የመተግበሪያ ገንቢዎች ESP32 ተከታታይ ሃርድዌር በመጠቀም ሃሳባቸውን እንዲገነዘቡ ለመርዳት መሰረታዊ የሃርድዌር እና የሶፍትዌር ግብዓቶችን ያቀርባል። በኤስፕሬሲፍ የሶፍትዌር ልማት ማዕቀፍ የኢንተርኔት ኦፍ-ነገሮች (አይኦቲ) አፕሊኬሽኖች ከዋይ ፋይ፣ ብሉቱዝ፣ የሃይል አስተዳደር እና ሌሎች በርካታ የስርዓት ባህሪያት ጋር ለመስራት የታሰበ ነው።
1.2 የሚያስፈልግዎ
1.2.1 ሃርድዌር
· የESP32 ሰሌዳ። የዩኤስቢ ገመድ - ዩኤስቢ ኤ / ማይክሮ ዩኤስቢ ቢ.
ማሳሰቢያ፡ በአሁኑ ጊዜ አንዳንድ የልማት ሰሌዳዎች የዩኤስቢ አይነት C አያያዦች እየተጠቀሙ ነው። ሰሌዳዎን ለማገናኘት ትክክለኛው ገመድ እንዳለዎት እርግጠኛ ይሁኑ!
ከታች ከተዘረዘሩት የ ESP32 ኦፊሴላዊ የልማት ሰሌዳዎች ውስጥ አንዱ ካለዎት ስለ ሃርድዌር የበለጠ ለማወቅ ሊንኩን ጠቅ ማድረግ ይችላሉ።
3
ምዕራፍ 1. ጀምር
ESP32-DevKitS(-R)
ይህ የተጠቃሚ መመሪያ በESP32-DevKitS(-R)፣ በESP32 ላይ የተመሰረተ ብልጭ ድርግም የሚል ሰሌዳ በኤስፕሬሲፍ ላይ መረጃ ይሰጣል። ESP32-DevKitS(-R) የሁለት የሰሌዳ ስሞች ጥምረት ነው፡ ESP32-DevKitS እና ESP32-DevKitS-R። ኤስ ማለት የምንጮችን ሲሆን R ደግሞ WROVERን ያመለክታል።
ESP32-DevKitS
ESP32-DevKitS-R
ሰነዱ የሚከተሉትን ዋና ዋና ክፍሎች ያቀፈ ነው፡- · መጀመር፡ ማጠቃለያ ያቀርባልview ለመጀመር የESP32-DevKitS(-R) እና ሃርድዌር/ሶፍትዌር ማዋቀር መመሪያዎች። · የሃርድዌር ማጣቀሻ፡ ስለ ESP32-DevKitS(-R) ns ሃርድዌር የበለጠ ዝርዝር መረጃ ይሰጣል። · ተዛማጅ ሰነዶች፡ ተዛማጅ ሰነዶችን አገናኞችን ይሰጣል።
መጀመር ይህ ክፍል በESP32-DevKitS(-R) እንዴት እንደሚጀመር ይገልጻል። ስለ ESP32-DevKitS(-R) በጥቂት የመግቢያ ክፍሎች ይጀምራል፣ ከዚያም ክፍል እንዴት ቦርድን እንዴት ማብረቅ እንደሚቻል አንድ ሞጁል በESP32-DevKitS(-R) ላይ እንዴት እንደሚሰቀል መመሪያ ይሰጣል፣ ያዘጋጃል እና ፋየርዌርን በእሱ ላይ ያብሩት።
አልቋልview ESP32-DevKitS(-R) በተለይ ለESP32 የተነደፈ የ Espressifns ብልጭልጭ ሰሌዳ ነው። ሞጁሉን ወደ ሃይል አቅርቦት እና ሲግናል መስመሮች ሳይሸጥ ESP32 ሞጁሉን ለማብረቅ ይጠቅማል። በሞጁል በተሰቀለ፣ ESP32-DevKitS(-R) እንደ ESP32-DevKitC እንደ ሚኒ ልማት ቦርድም ሊያገለግል ይችላል።
ESP32-DevKitS እና ESP32-DevKitS-R ሰሌዳዎች የሚከተሉትን ESP32 ሞጁሎች ለማስማማት በፀደይ ፒን አቀማመጥ ብቻ ይለያያሉ።
ESP32-DevKitS፡ ESP32-WROOM-32 ESP32-WROOM-32D ESP32-WROOM-32U ESP32-SOLO-1 ESP32-WROOM-32E ESP32-WROOM-32UE
ESP32-DevKitS-R፡ ESP32-WROVER (PCB & IPEX) ESP32-WROVER-B (PCB & IPEX) ESP32-WROVER-E ESP32-WROVER-IE
ከላይ ስለ ሞጁሎች መረጃ፣ እባክዎን ESP32 Series Modules ይመልከቱ።
የአካል ክፍሎች መግለጫ
Espressif ስርዓቶች
4 የሰነድ አስተያየት አስገባ
የተለቀቀው v5.0.9
ምዕራፍ 1. ጀምር
ምስል 1: ESP32-DevKitS - ፊት ለፊት
Espressif ስርዓቶች
ምስል 2፡ ESP32-DevKitS-R - የፊት 5
የሰነድ ግብረመልስ አስገባ
የተለቀቀው v5.0.9
ምዕራፍ 1. ጀምር
ቁልፍ አካል ስፕሪንግ ፒን 2.54 ሚሜ የሴት ራስጌዎች
የዩኤስቢ-ወደ-UART ድልድይ LDO ማይክሮ-ዩኤስቢ አያያዥ/ማይክሮ ዩኤስቢ ወደብ EN አዝራር ማስነሻ ቁልፍ
በ LED ላይ ኃይል
መግለጫ ሞጁሉን በ ውስጥ ጠቅ ያድርጉ። ፒኖቹ ወደ ሞጁሎች ከተሰነጣጠሉ ጉድጓዶች ጋር ይጣጣማሉ። እነዚህ የሴት ራስጌዎች በዚህ ሰሌዳ ላይ ከተሰቀሉት ሞጁሎች ፒን ጋር የተገናኙ ናቸው። ስለ ሴት ራስጌዎች መግለጫ፣ እባክዎን የራስጌ ብሎኮችን ይመልከቱ። ነጠላ-ቺፕ ዩኤስቢ ወደ UART ድልድይ እስከ 3 ሜጋ ባይት በሰከንድ የማስተላለፊያ ፍጥነቶችን ይሰጣል።
5V-ወደ-3.3V ዝቅተኛ-ተቆልቋይ ጥራዝtagኢ ተቆጣጣሪ (LDO)።
የዩኤስቢ በይነገጽ. ለቦርዱ የኃይል አቅርቦት እንዲሁም በኮምፒተር እና በቦርዱ መካከል ያለው የግንኙነት በይነገጽ.
ዳግም አስጀምር አዝራር.
የማውረድ ቁልፍ። ቡትን በመያዝ እና EN ን በመጫን ፈርምዌርን በተከታታይ ወደብ ለማውረድ የጽኑዌር አውርድ ሁነታን ይጀምራል።
የዩኤስቢ ወይም የኃይል አቅርቦቱ ከቦርዱ ጋር ሲገናኝ ይበራል።
ሰሌዳውን እንዴት እንደሚያብረቀርቅ የእርስዎን ESP32-DevKitS(-R) ኃይል ከማብራትዎ በፊት ምንም ግልጽ የብልሽት ምልክቶች ሳይታይበት በጥሩ ሁኔታ ላይ መሆኑን ያረጋግጡ።
ተፈላጊ ሃርድዌር · የመረጡት የESP32 ሞጁል · ዩኤስቢ 2.0 ገመድ (ከመደበኛ-ኤ እስከ ማይክሮ-ቢ) · ዊንዶውስ ፣ ሊኑክስ ወይም ማክኦኤስን የሚያሄድ ኮምፒውተር
የሃርድዌር ማዋቀር እባክዎ በሚከተለው ቅደም ተከተል የመረጡትን ሞጁል በእርስዎ ESP32-DevKitS(-R) ላይ ይስቀሉ፡
· ሞጁሉን በቀስታ በESP32-DevKitS(-R) ሰሌዳ ላይ ያድርጉት። በሞጁልዎ ላይ ያሉት የካስቴልት ቀዳዳዎች በቦርዱ ላይ ካለው የፀደይ ፒን ጋር የተጣጣሙ መሆናቸውን ያረጋግጡ።
· ሞጁሉን ጠቅ እስኪያደርጉ ድረስ ወደ ሰሌዳው ይጫኑ። · ሁሉም የፀደይ ካስማዎች ወደ ካስቴል ጉድጓዶች ውስጥ መግባታቸውን ያረጋግጡ። አንዳንድ ያልተስተካከሉ የፀደይ ካስማዎች ካሉ ፣
ወደ ካስቴል ጉድጓዶች በቲዊዘር ያስቀምጧቸው.
የሶፍትዌር ማዋቀር
ተመራጭ ዘዴ የESP-IDF ልማት ማዕቀፍ በESP32-DevKitS(-R) ላይ ሁለትዮሽ ብልጭ ድርግም የሚል ተመራጭ መንገድ ይሰጣል። እባኮትን ወደ ጅምር ይቀጥሉ፣ የሴክሽን ጭነት በፍጥነት የእድገት አካባቢን ለማዘጋጀት ይረዳዎታል እና ከዚያ አንድ መተግበሪያን ያብሩampወደ የእርስዎ ESP32-DevKitS(-R) ይሂዱ።
አማራጭ ዘዴ እንደ አማራጭ የዊንዶውስ ተጠቃሚዎች የፍላሽ አውርድ መሳሪያን በመጠቀም ሁለትዮሽዎችን ብልጭ ድርግም ማድረግ ይችላሉ። በቀላሉ ያውርዱት፣ ይክፈቱት እና በሰነዱ ውስጥ ያሉትን መመሪያዎች ይከተሉ።
ማስታወሻ፡ 1. ሁለትዮሽ ለማብረቅ files፣ ESP32 ወደ Firmware ማውረድ ሁነታ መቀናበር አለበት። ይህ በፍላሽ መሳሪያው በራስ ሰር ወይም የቡት አዝራሩን በመያዝ የኢኤን ቁልፍን በመንካት ሊከናወን ይችላል። 2. ሁለትዮሽ ካበራ በኋላ fileዎች፣ የፍላሽ አውርድ መሳሪያ የእርስዎን ESP32 ሞጁል እንደገና ያስጀምረዋል እና ብልጭ ድርግም ያለውን መተግበሪያ በነባሪ ያስነሳል።
የሰሌዳ ልኬቶች ይዘቶች እና ማሸግ
Espressif ስርዓቶች
6 የሰነድ አስተያየት አስገባ
የተለቀቀው v5.0.9
ምዕራፍ 1. ጀምር ምስል 3፡ ESP32-DevKitS የሰሌዳ ልኬቶች - ተመለስ
Espressif ስርዓቶች
ምስል 4፡ ESP32-DevKitS-R የሰሌዳ ልኬቶች - ኋላ 7
የሰነድ ግብረመልስ አስገባ
የተለቀቀው v5.0.9
ምዕራፍ 1. ጀምር
የችርቻሮ ማዘዣዎች ጥቂት ካዘዙamples፣ እያንዳንዱ ESP32-DevKitS(-R) በግለሰብ ፓኬጅ በአንቲስታቲክ ከረጢት ወይም በችርቻሮ ሻጭ ላይ በመመስረት በማንኛውም ማሸጊያ ይመጣል። ለችርቻሮ ትዕዛዞች፣ እባክዎ ወደ https://www.espressif.com/en/contact-us/get-s ይሂዱ።ampሌስ.
የጅምላ ማዘዣዎች በጅምላ ካዘዙ, ሰሌዳዎቹ በትልቅ የካርቶን ሳጥኖች ውስጥ ይመጣሉ. ለጅምላ ሽያጭ፣ እባክዎ ወደ https://www.espressif.com/en/contact-us/sales-questions ይሂዱ።
የሃርድዌር ማጣቀሻ
አግድ ዲያግራም ከዚህ በታች ያለው የማገጃ ንድፍ የESP32-DevKitS(-R) አካላትን እና ግንኙነቶቻቸውን ያሳያል።
ምስል 5፡ ESP32-DevKitS(-R) (ለመጨመር ጠቅ ያድርጉ)
የኃይል አቅርቦት አማራጮች ለቦርዱ ኃይል ለማቅረብ እርስ በርስ የሚደጋገፉ ሦስት መንገዶች አሉ፡- የማይክሮ ዩኤስቢ ወደብ፣ ነባሪ የኃይል አቅርቦት · 5V እና GND ራስጌ ፒን · 3V3 እና GND ራስጌ ፒን
የመጀመሪያውን አማራጭ ለመጠቀም ይመከራል-ማይክሮ ዩኤስቢ ወደብ.
Espressif ስርዓቶች
.
የመለያ ምልክት
L1 3V3 VDD 3V3
L2 EN CHIP_PU
L3 ቪፒ SENSOR_VP
L4 ቪኤን SENSOR_VN
L5 34
ጂፒዮ 34
L6 35
ጂፒዮ 35
L7 32
ጂፒዮ 32
L8 33
ጂፒዮ 33
በሚቀጥለው ገጽ ይቀጥላል
8 የሰነድ አስተያየት አስገባ
የተለቀቀው v5.0.9
ምዕራፍ 1. ጀምር
ሠንጠረዥ 1 ካለፈው ገጽ ቀጥሏል
.
የመለያ ምልክት
L9 25
ጂፒዮ 25
L10 26
ጂፒዮ 26
L11 27
ጂፒዮ 27
L12 14
ጂፒዮ 14
L13 12
ጂፒዮ 12
L14 GND GND
L15 13
ጂፒዮ 13
L16 D2 ኤስዲ_DATA2
L17 D3 ኤስዲ_DATA3
L18 CMD SD_CMD
L19 5V
ውጫዊ 5 ቪ
R1 GND GND
R2 23
ጂፒዮ 23
R3 22
ጂፒዮ 22
R4 TX U0TXD
R5 RX U0RXD
R6 21
ጂፒዮ 21
R7 GND GND
R8 19
ጂፒዮ 19
R9 18
ጂፒዮ 18
R10 5
ጂፒዮ 5
R11 17
ጂፒዮ 17
R12 16
ጂፒዮ 16
R13 4
ጂፒዮ 4
R14 0
ጂፒዮ 0
R15 2
ጂፒዮ 2
R16 15
ጂፒዮ 15
R17 D1 ኤስዲ_DATA1
R18 D0 ኤስዲ_DATA0
R19 CLK SD_CLK
የራስጌ ብሎኮች ለራስጌ ብሎኮች ምስል፣ እባክዎን የአካል ክፍሎችን መግለጫ ይመልከቱ።
ተዛማጅ ሰነዶች
· ESP32-DevKitS(-R) Schematics (PDF) · ESP32 የውሂብ ሉህ (PDF) · ESP32-WROOM-32 የውሂብ ሉህ (ፒዲኤፍ) የውሂብ ሉህ (ፒዲኤፍ) · ESP32-WROVER-B የውሂብ ሉህ (ፒዲኤፍ) · ኢኤስፒ ምርት መራጭ
ESP32-DevKitM-1
ይህ የተጠቃሚ መመሪያ በESP32-DevKitM-1 እንዲጀምሩ ያግዝዎታል እና የበለጠ ጥልቅ መረጃም ይሰጣል።
ESP32-DevKitM-1 በESP32-MINI-1(1U) ላይ የተመሰረተ በኤስፕሬሲፍ የተሰራ የልማት ቦርድ ነው። አብዛኛው የI/O ፒን ለቀላል መስተጋብር በሁለቱም በኩል ባሉት የፒን ራስጌዎች ላይ ይሰበራል። ተጠቃሚዎች ከጃምፕር ሽቦዎች ጋር ማገናኘት ወይም ESP32-DevKitM-1ን በዳቦ ሰሌዳ ላይ መጫን ይችላሉ።
Espressif ስርዓቶች
9 የሰነድ አስተያየት አስገባ
የተለቀቀው v5.0.9
ምዕራፍ 1. ጀምር
ESP32-DevKitM-1 - የፊት
ESP32-DevKitM-1 - isometric
ሰነዱ የሚከተሉትን ዋና ዋና ክፍሎች ያቀፈ ነው፡- · መጀመር፡ ማጠቃለያ ያቀርባልview ለመጀመር የESP32-DevKitM-1 እና ሃርድዌር/ሶፍትዌር ማዋቀር መመሪያዎች። · የሃርድዌር ማጣቀሻ፡ ስለ ESP32-DevKitM-1ns ሃርድዌር የበለጠ ዝርዝር መረጃ ይሰጣል። · ተዛማጅ ሰነዶች፡ ተዛማጅ ሰነዶችን አገናኞችን ይሰጣል።
መጀመር ይህ ክፍል በESP32-DevKitM-1 እንዴት እንደሚጀመር ይገልጻል። ስለ ESP32-DevKitM-1 በጥቂት የመግቢያ ክፍሎች ይጀምራል፣ከዚያ ክፍል ጀምር መተግበሪያ ልማት የመጀመሪያውን ሃርድዌር ማዋቀር እንዴት እንደሚሰራ እና ከዚያም በESP32-DevKitM-1 ላይ firmware እንዴት እንደሚበራ መመሪያዎችን ይሰጣል።
አልቋልview ይህ ትንሽ እና ምቹ የሆነ የእድገት ሰሌዳ ነው የሚከተሉትን ባህሪያት የያዘ:
· ESP32-MINI-1፣ ወይም ESP32-MINI-1U ሞጁል · ከዩኤስቢ ወደ ተከታታይ ፕሮግራሚንግ በይነገጽ ለቦርዱ የሃይል አቅርቦትን ይሰጣል · ፒን ራስጌዎች · የጽኑ ማውረጃ ሁነታን እንደገና ለማስጀመር እና ለማግበር የግፋ ቁልፎች · ሌሎች ጥቂት አካላት
ይዘት እና ማሸግ
የችርቻሮ ማዘዣዎች ጥቂት ካዘዙamples፣ እያንዳንዱ ESP32-DevKitM-1 በግለሰብ ፓኬጅ በአንቲስታቲክ ቦርሳ ወይም እንደ ቸርቻሪዎ የሚወሰን ሆኖ በማንኛውም ማሸጊያ ይመጣል።
ለችርቻሮ ትዕዛዞች፣ እባክዎ ወደ https://www.espressif.com/en/contact-us/get-s ይሂዱ።ampሌስ.
የጅምላ ማዘዣዎች በጅምላ ካዘዙ, ሰሌዳዎቹ በትልቅ የካርቶን ሳጥኖች ውስጥ ይመጣሉ. ለጅምላ ሽያጭ፣ እባክዎ ወደ https://www.espressif.com/en/contact-us/sales-questions ይሂዱ።
የመለዋወጫ አካላት መግለጫ የሚከተለው ምስል እና ከታች ያለው ሠንጠረዥ የESP32-DevKitM-1 ቦርድ ቁልፍ አካላትን፣ መገናኛዎችን እና መቆጣጠሪያዎችን ይገልፃል። ቦርዱን በ ESP32-MINI-1 ሞጁል እንደ አንድ የቀድሞ እንወስዳለንample በሚቀጥሉት ክፍሎች.
Espressif ስርዓቶች
10 የሰነድ አስተያየት አስገባ
የተለቀቀው v5.0.9
ምዕራፍ 1. ጀምር
ምስል 6: ESP32-DevKitM-1 - ፊት ለፊት
የቁልፍ አካል በቦርድ ላይ ሞጁል
5 V እስከ 3.3 V LDO ማስነሻ አዝራር
የማይክሮ ዩኤስቢ ወደብ ዳግም አስጀምር
የዩኤስቢ-ወደ-UART ድልድይ 3.3 ቪ ኃይል በ LED ላይ
I/O አያያዥ
መግለጫ
ESP32-MINI-1 ሞጁል ወይም ESP32-MINI-1U ሞጁል። ESP32-MINI-1 ከቦርድ PCB አንቴና ጋር አብሮ ይመጣል። ESP32-MINI-1U ከውጭ አንቴና ማገናኛ ጋር አብሮ ይመጣል። ሁለቱ ሞጁሎች ሁለቱም በቺፕ ጥቅል ውስጥ 4 ሜባ ፍላሽ አላቸው። ለዝርዝሮች፣ እባክዎን ESP32-MINI-1 እና ESP32-MINI-1U Datasheet ይመልከቱ።
የኃይል መቆጣጠሪያ 5 V ወደ 3.3 ቮ ይለውጣል.
የማውረድ ቁልፍ። ቡትን ተጭኖ ከዚያ ዳግም አስጀምርን በመጫን ፈርምዌርን በተከታታይ ወደብ ለማውረድ የጽኑዌር አውርድ ሁነታን ይጀምራል።
ዳግም አስጀምር አዝራር
የዩኤስቢ በይነገጽ. ለቦርዱ የኃይል አቅርቦት እንዲሁም በኮምፒተር እና በ ESP32 ቺፕ መካከል ያለው የግንኙነት በይነገጽ።
ነጠላ የዩኤስቢ-UART ድልድይ ቺፕ እስከ 3 ሜጋ ባይት በሰከንድ የማስተላለፊያ ዋጋ ይሰጣል።
ዩኤስቢ ከቦርዱ ጋር ሲገናኝ ይበራል። ለዝርዝሮች፣ እባክዎ በተዛማጅ ሰነዶች ውስጥ ያሉትን ንድፎች ይመልከቱ። ሁሉም የሚገኙት የ GPIO ፒኖች (ከ SPI አውቶብስ ለፍላሽ በስተቀር) በቦርዱ ላይ ባሉት የፒን ራስጌዎች ላይ ተከፋፍለዋል። ተጠቃሚዎች ብዙ ተግባራትን ለማንቃት ESP32 ቺፕ ፕሮግራም ማድረግ ይችላሉ።
የመተግበሪያ ልማትን ይጀምሩ የእርስዎን ESP32-DevKitM-1 ኃይል ከማብቃትዎ በፊት፣ እባክዎ ምንም ግልጽ የብልሽት ምልክቶች ሳይታይበት በጥሩ ሁኔታ ላይ መሆኑን ያረጋግጡ።
ተፈላጊ ሃርድዌር · ESP32-DevKitM-1 · ዩኤስቢ 2.0 ኬብል (መደበኛ-A እስከ ማይክሮ-ቢ) · ዊንዶውስ፣ ሊኑክስ ወይም ማክኦኤስን የሚያሄድ ኮምፒውተር
የሶፍትዌር ማዋቀር እባኮትን ወደ ጅምር ይቀጥሉ፣ የሴክሽን ጭነት በፍጥነት የእድገት አካባቢን ለማዘጋጀት ይረዳዎታል እና ከዚያ የቀድሞ መተግበሪያን ያብሩ።ampወደ ESP32-DevKitM-1 ይሂዱ።
Espressif ስርዓቶች
11 የሰነድ አስተያየት አስገባ
የተለቀቀው v5.0.9
ምዕራፍ 1. ጀምር
ትኩረት፡ ከዲሴምበር 2፣ 2021 በፊት የተሰሩ ESP32-DevKitM-1 ቦርዶች አንድ ነጠላ ኮር ሞጁል ተጭኗል። የትኛውን ሞጁል እንዳለህ ለማረጋገጥ፣ እባክህ በሞጁል ምልክት ማድረጊያ መረጃ በ PCN-2021-021 ተመልከት። ሰሌዳዎ አንድ ነጠላ ኮር ሞጁል ከተጫነ እባክዎ መተግበሪያዎችዎን ከማብረቅዎ በፊት ነጠላ ኮር ሁነታን (CONFIG_FREERTOS_UNICORE) በሜኑ ውቅረት ውስጥ ያንቁ።
የሃርድዌር ማመሳከሪያ አግድ ዲያግራም ከዚህ በታች ያለው የማገጃ ንድፍ የ ESP32-DevKitM-1 አካላትን እና ግንኙነታቸውን ያሳያል።
ምስል 7፡ ESP32-DevKitM-1
የኃይል ምንጭ ምረጥ ለቦርዱ ኃይል ለማቅረብ እርስ በርስ የሚደጋገፉ ሦስት መንገዶች አሉ፡- የማይክሮ ዩኤስቢ ወደብ፣ ነባሪ የኃይል አቅርቦት · 5V እና GND ራስጌ ፒን · 3V3 እና GND ራስጌ ፒን
ማስጠንቀቂያ፡ · የኃይል አቅርቦቱ መቅረብ ያለበት ከላይ ከተዘረዘሩት አማራጮች ውስጥ አንዱን ብቻ ነው፣ ይህ ካልሆነ ግን ቦርዱ እና/ወይም የኃይል አቅርቦቱ ምንጩ ሊበላሽ ይችላል። · የኃይል አቅርቦት በማይክሮ ዩኤስቢ ወደብ ይመከራል።
የፒን መግለጫዎች ከታች ያለው ሰንጠረዥ በቦርዱ በሁለቱም በኩል የፒን ስም እና ተግባር ያቀርባል. ለጎንዮሽ ፒን ውቅሮች፣ እባክዎን ESP32 Datasheet ይመልከቱ።
አይ።
ስም
ዓይነት
1
ጂኤንዲ
P
2
3V3
P
የተግባር መሬት 3.3 ቮ የኃይል አቅርቦት
በሚቀጥለው ገጽ ይቀጥላል
Espressif ስርዓቶች
12 የሰነድ አስተያየት አስገባ
የተለቀቀው v5.0.9
ምዕራፍ 1. ጀምር
ሠንጠረዥ 2 ካለፈው ገጽ ቀጥሏል
አይ።
ስም
ዓይነት
ተግባር
3
I36
I
GPIO36፣ ADC1_CH0፣ RTC_GPIO0
4
I37
I
GPIO37፣ ADC1_CH1፣ RTC_GPIO1
5
I38
I
GPIO38፣ ADC1_CH2፣ RTC_GPIO2
6
I39
I
GPIO39፣ ADC1_CH3፣ RTC_GPIO3
7
RST
I
ዳግም አስጀምር; ከፍተኛ፡ አንቃ; ዝቅተኛ፡ ኃይል ጠፍቷል
8
I34
I
GPIO34፣ ADC1_CH6፣ RTC_GPIO4
9
I35
I
GPIO35፣ ADC1_CH7፣ RTC_GPIO5
10
IO32
አይ/ኦ
GPIO32፣ XTAL_32K_P (32.768 kHz ክሪስታል oscillator ግብዓት)፣
ADC1_CH4፣ TOUCH9፣ RTC_GPIO9
11
IO33
አይ/ኦ
GPIO33፣ XTAL_32K_N (32.768 kHz ክሪስታል ኦሲሊተር ውፅዓት)፣
ADC1_CH5፣ TOUCH8፣ RTC_GPIO8
12
IO25
አይ/ኦ
GPIO25፣ DAC_1፣ ADC2_CH8፣ RTC_GPIO6፣ EMAC_RXD0
13
IO26
አይ/ኦ
GPIO26፣ DAC_2፣ ADC2_CH9፣ RTC_GPIO7፣ EMAC_RXD1
14
IO27
አይ/ኦ
GPIO27፣ ADC2_CH7፣ TOUCH7፣ RTC_GPIO17፣ EMAC_RX_DV
15
IO14
አይ/ኦ
GPIO14፣ ADC2_CH6፣ TOUCH6፣ RTC_GPIO16፣ ኤምቲኤምኤስ፣ ኤችኤስፒአይኤልኬ፣
HS2_CLK፣ ኤስዲ_CLK፣ EMAC_TXD2
16
5V
P
5 ቪ የኃይል አቅርቦት
17
IO12
አይ/ኦ
GPIO12፣ ADC2_CH5፣ TOUCH5፣ RTC_GPIO15፣ MTDI፣ HSPIQ፣
HS2_DATA2፣ ኤስዲ_DATA2፣ EMAC_TXD3
18
IO13
አይ/ኦ
GPIO13፣ ADC2_CH4፣ TOUCH4፣ RTC_GPIO14፣ MTCK፣ HSPID፣
HS2_DATA3፣ ኤስዲ_DATA3፣ EMAC_RX_ER
19
IO15
አይ/ኦ
GPIO15፣ ADC2_CH3፣ TOUCH3፣ RTC_GPIO13፣ MTDO፣ HSPICS0፣
HS2_CMD፣ ኤስዲ_ሲኤምዲ፣ EMAC_RXD3
20
IO2
አይ/ኦ
GPIO2፣ ADC2_CH2፣ TOUCH2፣ RTC_GPIO12፣ HSPIWP፣
HS2_DATA0፣ SD_DATA0
21
IO0
አይ/ኦ
GPIO0፣ ADC2_CH1፣ TOUCH1፣ RTC_GPIO11፣ CLK_OUT1፣
EMAC_TX_CLK
22
IO4
አይ/ኦ
GPIO4፣ ADC2_CH0፣ TOUCH0፣ RTC_GPIO10፣ HSPIHD፣
HS2_DATA1፣ ኤስዲ_DATA1፣ EMAC_TX_ER
23
IO9
አይ/ኦ
GPIO9፣ HS1_DATA2፣ U1RXD፣ SD_DATA2
24
IO10
አይ/ኦ
GPIO10፣ HS1_DATA3፣ U1TXD፣ SD_DATA3
25
IO5
አይ/ኦ
GPIO5፣ HS1_DATA6፣ VSPICS0፣ EMAC_RX_CLK
26
IO18
አይ/ኦ
GPIO18፣ HS1_DATA7፣ VSPICLK
27
IO23
አይ/ኦ
GPIO23፣ HS1_STROBE፣ VSPID
28
IO19
አይ/ኦ
GPIO19፣ VSPIQ፣ U0CTS፣ EMAC_TXD0
29
IO22
አይ/ኦ
GPIO22፣ VSPIWP፣ U0RTS፣ EMAC_TXD1
30
IO21
አይ/ኦ
GPIO21፣ VSPIHD፣ EMAC_TX_EN
31
TXD0
አይ/ኦ
GPIO1፣ U0TXD፣ CLK_OUT3፣ EMAC_RXD2
32
አርኤችዲ 0
አይ/ኦ
GPIO3፣ U0RXD፣ CLK_OUT2
የሃርድዌር ክለሳ ዝርዝሮች ምንም ቀዳሚ ስሪቶች የሉም።
ተዛማጅ ሰነዶች
· ESP32-MINI-1 & ESP32-MINI-1U Datasheet (PDF) · ESP32-DevKitM-1 Schematics (PDF) · ESP32-DevKitM-1 PCB አቀማመጥ (PDF) · ESP32-DevKitM-1 አቀማመጥ (DXF) - ይችላሉ view ከ Autodesk ጋር Viewer online · ESP32 Datasheet (PDF) · ESP ምርት መራጭ
ለቦርዱ ሌላ የንድፍ ሰነድ፣ እባክዎ በ sales@espressif.com ያግኙን።
Espressif ስርዓቶች
13 የሰነድ አስተያየት አስገባ
የተለቀቀው v5.0.9
ምዕራፍ 1. ጀምር
1.2.2 ሶፍትዌር
ESP-IDFን በESP32 መጠቀም ለመጀመር የሚከተለውን ሶፍትዌር ይጫኑ፡- ለESP32 ኮድ ለማጠናቀር Toolchain · Build tools – CMake and Ninja to build a full Application for ESP32 · ESP-IDF በመሰረቱ ኤፒአይ (የሶፍትዌር ቤተ-መጻሕፍት እና የምንጭ ኮድ) ለESP32 እና ስክሪፕቶች Toolchainን ለመስራት
1.3 መጫን
ሁሉንም አስፈላጊ ሶፍትዌሮች ለመጫን, ይህንን ተግባር ለማመቻቸት አንዳንድ የተለያዩ መንገዶችን እናቀርባለን. ካሉት አማራጮች ውስጥ አንዱን ይምረጡ።
1.3.1 አይዲኢ
ማስታወሻ፡ ESP-IDFን በምትወደው IDE እንድትጭን በጣም እንመክራለን።
· Eclipse Plugin · VSCcode Extension
1.3.2 በእጅ መጫን
ለእጅ ሂደቱ፣ እባክዎን በእርስዎ ስርዓተ ክወና መሰረት ይምረጡ።
Espressif ስርዓቶች
14 የሰነድ አስተያየት አስገባ
የተለቀቀው v5.0.9
ምዕራፍ 1. ጀምር
ለዊንዶውስ የመሳሪያ ሰንሰለት መደበኛ ማዋቀር
መግቢያ ESP-IDF የሚደገፉ ቺፖችን ለማግኘት ፈርምዌርን መገንባት እንዲችሉ አንዳንድ ቅድመ ሁኔታ መሣሪያዎች እንዲጫኑ ይፈልጋል። ቅድመ ሁኔታው የሚያስፈልጉት መሳሪያዎች Python፣ Git፣ Cross-compilers፣ CMake እና Ninja የግንባታ መሳሪያዎችን ያካትታሉ። ለዚህ ጅምር የ Command Promptን እንጠቀማለን፣ነገር ግን ESP-IDF ከተጫነ በኋላ በምትኩ Eclipse Plugin ወይም ሌላ ግራፊክ IDE በCMake ድጋፍ መጠቀም ይችላሉ። ማሳሰቢያ፡ ገደቦች፡- የESP-IDF እና ESP-IDF መሳሪያዎች የመጫኛ መንገድ ከ90 ቁምፊዎች በላይ መሆን የለበትም። በጣም ረጅም የመጫኛ መንገዶች ያልተሳካ ግንባታን ሊያስከትሉ ይችላሉ። - የ Python ወይም ESP-IDF የመጫኛ መንገድ ነጭ ክፍተቶችን ወይም ቅንፍዎችን መያዝ የለበትም። - ስርዓተ ክወናው በዩኒኮድ UTF-8psupport ካልተዋቀረ በስተቀር የ Python ወይም ESP-IDF የመጫኛ መንገድ ልዩ ቁምፊዎችን (nonASCII) መያዝ የለበትም። የስርዓት አስተዳዳሪ ድጋፉን በመቆጣጠሪያ ፓነል በኩል ማንቃት ይችላል - የቀን ፣ የሰዓት ወይም የቁጥር ቅርጸቶችን ይቀይሩ - አስተዳደራዊ ትር - የስርዓት አካባቢን ይቀይሩ - አማራጭን ያረጋግጡ oBeta: ለአለም አቀፍ ቋንቋ ድጋፍ ዩኒኮድ UTF-8 ይጠቀሙ - እሺ እና ኮምፒተርውን እንደገና ያስነሱ።
ESP-IDF Tools Installer የESP-IDFns ቅድመ ሁኔታዎችን ለመጫን ቀላሉ መንገድ ከESP-IDF Tools Installers አንዱን ማውረድ ነው።
የዊንዶውስ ጫኝ አውርድ
ለኦንላይን እና ከመስመር ውጭ ጫኝ የመስመር ላይ ጫኚ ጥቅም ላይ የሚውለው ምንድነው በጣም ትንሽ ነው እና ሁሉንም የሚገኙትን የESP-IDF ልቀቶች መጫን ያስችላል። ጫኚው በመጫን ሂደት ውስጥ Git For Windows ን ጨምሮ አስፈላጊ የሆኑትን ብቻ ያወርዳል። ጫኚው ወርዷል files በመሸጎጫ ማውጫ %userprofile% espressif
ከመስመር ውጭ ጫኝ ምንም አይነት የአውታረ መረብ ግንኙነት አይፈልግም። ጫኚው Git For Windows ን ጨምሮ ሁሉንም አስፈላጊ ጥገኞች ይዟል።
የመጫኛ አካላት ጫኚው የሚከተሉትን ክፍሎች ያሰማራቸዋል፡
· የተከተተ ፓይዘን · ክሮስ-ማጠናቀቂያዎች · ክፍትኦሲዲ · ሲሜክ እና ኒንጃ የግንባታ መሳሪያዎች · ኢኤስፒ-አይዲኤፍ
ጫኚው እንዲሁም ያለውን ማውጫ ከESP-IDF ጋር እንደገና ለመጠቀም ይፈቅዳል። የሚመከረው ማውጫ %userpro ነው።file%Desktopesp-idf የት %userprofile% የእርስዎ የቤት ማውጫ ነው።
Espressif ስርዓቶች
15 የሰነድ አስተያየት አስገባ
የተለቀቀው v5.0.9
ምዕራፍ 1. ጀምር
የESP-IDF አካባቢን ማስጀመር በመጫን ሂደቱ መጨረሻ ላይ ESP-IDF PowerShell Environmentን አሂድ ወይም ESP-IDF Command Prompt (cmd.exe)ን አሂድ የሚለውን አማራጭ ማየት ትችላለህ። ጫኚው የESP-IDF አካባቢን በተመረጠው ጥያቄ ያስነሳል። ESP-IDF PowerShell አካባቢን ያሂዱ፡-
ምስል 8፡ የESP-IDF Tools Setup Wizardን በሩጫ ESP-IDF PowerShell አካባቢን ማጠናቀቅ
ESP-IDF Command Prompt (cmd.exe) ያሂዱ፦
የትእዛዝ መጠየቂያውን በመጠቀም ለቀሪዎቹ የጀማሪ እርምጃዎች የዊንዶውስ ትዕዛዝ ጥያቄን እንጠቀማለን። ESP-IDF Tools Installer ESP-IDF Command Promptን ለመጀመር በጀምር ሜኑ ውስጥ አቋራጭ መንገድ ይፈጥራል። ይህ አቋራጭ Command Prompt (cmd.exe) ያስነሳል እና የአካባቢ ተለዋዋጮችን (PATH፣ IDF_PATH እና ሌሎች) ለማዘጋጀት ኤክስፖርት.bat ስክሪፕትን ያስኬዳል። በዚህ የትእዛዝ ጥያቄ ውስጥ ሁሉም የተጫኑ መሳሪያዎች ይገኛሉ። ይህ አቋራጭ በESP-IDF Tools Installer ውስጥ ለተመረጠው የESP-IDF ማውጫ የተወሰነ መሆኑን ልብ ይበሉ። በኮምፒዩተር ላይ ብዙ የ ESP-IDF ማውጫዎች ካሉዎት (ለምሳሌample፣ ከተለያዩ የESP-IDF ስሪቶች ጋር ለመስራት) ለመጠቀም ሁለት አማራጮች አሉዎት።
1. በESP-IDF Tools Installer የተፈጠረውን አቋራጭ ቅጂ ይፍጠሩ እና የአዲሱን አቋራጭ የስራ ማውጫ ወደ ESP-IDF ዳይሬክቶሬት ይለውጡ።
2. በአማራጭ cmd.exe ን ያሂዱ እና ወደሚፈልጉት የ ESP-IDF ማውጫ ይቀይሩ እና Export.bat ያሂዱ። ከቀዳሚው አማራጭ በተለየ ይህ መንገድ Python እና Git በ PATH ውስጥ እንዲገኙ እንደሚፈልግ ልብ ይበሉ። ከ Python ወይም Git ያልተገኙ ጋር የተያያዙ ስህተቶች ካጋጠሙዎት የመጀመሪያውን አማራጭ ይጠቀሙ.
በESP-IDF ላይ ያሉ የመጀመሪያ እርምጃዎች አሁን ሁሉም መስፈርቶች ስለተሟሉ የሚቀጥለው ርዕስ የመጀመሪያ ፕሮጀክትዎን እንዴት እንደሚጀምሩ ይመራዎታል።
Espressif ስርዓቶች
16 የሰነድ አስተያየት አስገባ
የተለቀቀው v5.0.9
ምዕራፍ 1. ጀምር ምስል 9፡ ESP-IDF PowerShell
ምስል 10፡ የESP-IDF Tools Setup Wizardን በESP-IDF Command Prompt (cmd.exe) በማስኬድ መሙላት።
Espressif ስርዓቶች
17 የሰነድ አስተያየት አስገባ
የተለቀቀው v5.0.9
ምዕራፍ 1. ጀምር
ምስል 11፡ ESP-IDF የትእዛዝ ጥያቄ
Espressif ስርዓቶች
18 የሰነድ አስተያየት አስገባ
የተለቀቀው v5.0.9
ምዕራፍ 1. ጀምር
ይህ መመሪያ ESP-IDFን በመጠቀም በመጀመሪያዎቹ ደረጃዎች ይረዳዎታል። በESP32 ላይ አዲስ ፕሮጀክት ለመጀመር እና የመሣሪያውን ውፅዓት ለመገንባት፣ ለማብረቅ እና ለመቆጣጠር ይህንን መመሪያ ይከተሉ። ማሳሰቢያ፡ እስካሁን ESP-IDFን ካልጫኑ፣ እባክዎ ይህንን መመሪያ ለመጠቀም የሚያስፈልጉትን ሶፍትዌሮች ለማግኘት ወደ መጫኛ ይሂዱ እና መመሪያውን ይከተሉ።
ፕሮጀክት ይጀምሩ አሁን ማመልከቻዎን ለESP32 ለማዘጋጀት ዝግጁ ነዎት። በጀማሪ/ሄሎ_አለም ፕሮጀክት ከቀድሞ መጀመር ትችላለህamples ማውጫ በESP-IDF።
ጠቃሚ፡ የESP-IDF ግንባታ ስርዓት ወደ ESP-IDF ወይም ወደ ፕሮጀክቶች በሚወስደው መንገድ ላይ ክፍተቶችን አይደግፍም።
የፕሮጀክቱን መጀመር/ሄሎ_ዓለምን ወደ ~/esp directory፡ cd %userpro ቅዳfile%esp xcopy /e /i %IDF_PATH%examplesget-started ሰላም_ዓለም ሰላም_ዓለም
ማሳሰቢያ፡- የ example ፕሮጀክቶች በ examples ማውጫ በESP-IDF። ማንኛውንም ፕሮጀክት ከላይ እንደተገለጸው በተመሳሳይ መንገድ መቅዳት እና ማስኬድ ይችላሉ። በተጨማሪም exampበመጀመሪያ እነሱን ሳይገለብጡ les ውስጥ-ቦታ.
መሳሪያዎን ያገናኙ አሁን የእርስዎን ESP32 ሰሌዳ ከኮምፒዩተር ጋር ያገናኙ እና ቦርዱ በየትኛው ተከታታይ ወደብ እንደሚታይ ያረጋግጡ። የመለያ ወደብ ስሞች በዊንዶውስ በ COM ይጀምራሉ. የመለያ ወደብ ስም እንዴት እንደሚፈትሹ እርግጠኛ ካልሆኑ፣ እባክዎን ለተሟላ መረጃ ከESP32 ጋር ተከታታይ ግንኙነት ይፍጠሩ።
ማሳሰቢያ፡ በሚቀጥሉት ደረጃዎች ስለፈለጉት የወደብ ስም ምቹ ያድርጉት።
የእርስዎን ፕሮጀክት ያዋቅሩ ወደ የእርስዎ hello_world ማውጫ ይሂዱ፣ ESP32ን እንደ ዒላማ ያቀናብሩ እና የፕሮጀክት ውቅር መገልገያ ሜኑconfigን ያሂዱ።
ዊንዶውስ ሲዲ% የተጠቃሚ ፕሮfile%esphello_world idf.py set- target esp32 idf.py menuconfig
አዲስ ፕሮጀክት ከከፈቱ በኋላ በመጀመሪያ ኢላማውን በ idf.py set- target esp32 ማዘጋጀት አለብዎት። በፕሮጀክቱ ውስጥ ያሉ ግንባታዎች እና አወቃቀሮች ካሉ በዚህ ሂደት ተጠርገው እንደሚጀመሩ ልብ ይበሉ። ዒላማው ይህንን ደረጃ ለመዝለል በአከባቢው ተለዋዋጭ ውስጥ ሊቀመጥ ይችላል። ለተጨማሪ መረጃ የዒላማ ቺፕ፡ set-ዒላማ የሚለውን ይምረጡ። የቀደሙት እርምጃዎች በትክክል ከተከናወኑ የሚከተለው ሜኑ ይታያል፡- ይህንን ሜኑ እየተጠቀሙ ያሉት የፕሮጀክት ልዩ ተለዋዋጮችን ለምሳሌ የዋይ ፋይ አውታረ መረብ ስም እና የይለፍ ቃል፣ የፕሮሰሰር ፍጥነት እና የመሳሰሉትን ለማዋቀር ነው። ፕሮጄክቱን በ menuconfig ማዋቀር ለ ohllo_wordp ሊዘለል ይችላል።ample ነባሪ ውቅር ጋር ይሰራል.
ትኩረት፡ ESP32-DevKitC ቦርድን ከESP32-SOLO-1 ሞጁል ወይም ESP32-DevKitM-1 ቦርድ ከESP32-MIN1-1(1U) ሞጁል ከተጠቀማችሁ፣እባክዎ የቀድሞ ብልጭ ድርግም ከማድረግዎ በፊት ነጠላ ኮር ሁነታን (CONFIG_FREERTOS_UNICORE) ያንቁ።ampሌስ.
Espressif ስርዓቶች
19 የሰነድ አስተያየት አስገባ
የተለቀቀው v5.0.9
ምዕራፍ 1. ጀምር
ምስል 12: የፕሮጀክት ውቅር - የቤት መስኮት
ማሳሰቢያ፡ በተርሚናልዎ ውስጥ የማውጫው ቀለሞች ሊለያዩ ይችላሉ። ከአማራጭ - ዘይቤ ጋር መልክን መቀየር ይችላሉ. እባክዎን idf.py menuconfig -እርዳታን ለበለጠ መረጃ ያሂዱ።
ከሚደገፉት የልማት ሰሌዳዎች ውስጥ አንዱን እየተጠቀሙ ከሆነ የቦርድ ድጋፍ ጥቅልን በመጠቀም እድገትዎን ማፋጠን ይችላሉ። ለበለጠ መረጃ ተጨማሪ ምክሮችን ይመልከቱ።
ፕሮጀክቱን ይገንቡ በማሄድ ፕሮጀክቱን ይገንቡ፡-
idf.py ግንባታ
ይህ ትእዛዝ አፕሊኬሽኑን እና ሁሉንም የESP-IDF ክፍሎችን ያጠናቅራል፣ ከዚያ የቡት ጫኚውን፣ የክፋይ ሠንጠረዥን እና የመተግበሪያ ሁለትዮሾችን ያመነጫል።
$ idf.py build cmake በማውጫ / ዱካ/ወደ/ሄሎ_አለም/ግንባታ በማስኬድ ላይ “cmake -G Ninja –warn-uninitialized /path/to/hello_world”…ስለማይታወቁ እሴቶች አስጠንቅቅ። - ተገኝቷል Git: /usr/bin/git (ስሪት "2.17.0" ተገኝቷል) - በማዋቀር ምክንያት ባዶ የ aws_iot አካል መገንባት - የአካላት ስሞች: … - የአካላት ዱካዎች:…
… (የሥርዓት ውፅዓት ተጨማሪ መስመሮች)
[527/527] hello_world.bin esptool.py v2.3.1 በማመንጨት ላይ
የፕሮጀክት ግንባታ ተጠናቋል። ብልጭ ድርግም ለማድረግ ይህንን ትዕዛዝ ያሂዱ፡- .././ bin build 0x1000 build/bootloader/bootloader.bin 0x8000 build/partition_table/ partition-table.bin ወይም አሂድ 'idf.py -p PORT flash'
ምንም ስህተቶች ከሌሉ, ግንባታው የ firmware binary .bin በማመንጨት ያበቃል files.
Espressif ስርዓቶች
20 የሰነድ አስተያየት አስገባ
የተለቀቀው v5.0.9
ምዕራፍ 1. ጀምር
በመሳሪያው ላይ ብልጭ ድርግም የሚሉ ሁለትዮሾች አሁን የገነቡትን (bootloader.bin, partition-table.bin እና hello_world.bin) ወደ የእርስዎ ESP32 ሰሌዳ በማሄድ: idf.py -p PORT [-b BAUD] flash
PORTን በ ESP32 boardns ተከታታይ ወደብ ስም ይተኩ። እንዲሁም BAUDን በሚፈልጉት ባውድ መጠን በመተካት የፍላሹን ባውድ መጠን መቀየር ይችላሉ። ነባሪው የ baud መጠን 460800 ነው። ስለ idf.py ክርክር የበለጠ መረጃ ለማግኘት idf.py ን ይመልከቱ።
ማሳሰቢያ፡ አማራጭ ፍላሽ ፕሮጀክቱን በራስ ሰር ይገነባል እና ያበራል፣ ስለዚህ idf.py buildን ማስኬድ አስፈላጊ አይደለም።
ብልጭ ድርግም እያለ ችግሮች አጋጥመውታል? የተሰጠውን ትዕዛዝ ካስኬዱ እና እንደዚህ ያሉ ስህተቶችን ካዩ asoን መገናኘት አልተሳካም ፣ ለዚህ ብዙ ምክንያቶች ሊኖሩ ይችላሉ። ከምክንያቶቹ አንዱ በ esptool.py ያጋጠሙ ችግሮች፣ በግንባታ ስርዓቱ የሚጠራው ቺፑን ዳግም ለማስጀመር፣ ከሮም ቡት ጫኚው ጋር መስተጋብር እና ፍላሽ firmware ነው። ለመሞከር አንድ ቀላል መፍትሄ ከዚህ በታች የተገለፀው በእጅ ዳግም ማስጀመር ነው, እና ካልረዳዎት በመላ መፈለጊያ ውስጥ ሊሆኑ ስለሚችሉ ጉዳዮች ተጨማሪ ዝርዝሮችን ማግኘት ይችላሉ.
esptool.py የዩኤስቢ DTR እና RTS መቆጣጠሪያ መስመሮችን ወደ ተከታታይ መቀየሪያ ቺፕ ማለትም FTDI ወይም CP210x በማረጋገጥ ESP32ን በራስ ሰር ዳግም ያስጀምረዋል (ለበለጠ መረጃ ከESP32 ጋር ተከታታይ ግንኙነት መመስረትን ይመልከቱ)። የDTR እና RTS መቆጣጠሪያ መስመሮች በተራው ከ GPIO0 እና CHIP_PU (EN) የ ESP32 ፒን ጋር የተገናኙ ናቸው፣ ስለዚህም በቮል ውስጥ ይቀየራል።tagየDTR እና RTS ደረጃዎች ESP32ን ወደ Firmware ማውረድ ሁነታ ያስነሳሉ። እንደ አንድ የቀድሞampለ፣ ለESP32 DevKitC ልማት ቦርድ ንድፉን ያረጋግጡ።
በአጠቃላይ፣ ከኦፊሴላዊው የesp-idf ልማት ሰሌዳዎች ጋር ምንም አይነት ችግር ሊኖርብህ አይገባም። ሆኖም፣ esptool.py በሚከተሉት ሁኔታዎች ውስጥ የእርስዎን ሃርድዌር በራስ-ሰር ዳግም ማስጀመር አልቻለም።
· የእርስዎ ሃርድዌር ከ GPIO0 እና CHIP_PU ጋር የተገናኘ DTR እና RTS መስመሮች የሉትም · DTR እና RTS መስመሮች በተለያየ መንገድ የተዋቀሩ ናቸው · እንደዚህ አይነት ተከታታይ መቆጣጠሪያ መስመሮች በጭራሽ የሉም.
እንደ ሃርድዌር አይነት፣ የእርስዎን ESP32 ሰሌዳ በእጅ ወደ Firmware ማውረድ ሁነታ (ዳግም ማስጀመር) ማስገባትም ይቻል ይሆናል።
· በኤስፕሬሲፍ ለተዘጋጁ የልማት ሰሌዳዎች፣ ይህ መረጃ በየመጀመርያ መመሪያዎች ወይም የተጠቃሚ መመሪያዎች ውስጥ ይገኛል። ለ example፣ የESP-IDF ልማት ሰሌዳን እራስዎ እንደገና ለማስጀመር የቡት አዝራሩን (GPIO0) ተጭነው ይያዙ እና EN ቁልፍን (CHIP_PU) ይጫኑ።
· ለሌሎች የሃርድዌር አይነቶች GPIO0ን ወደ ታች ለመሳብ ይሞክሩ።
መደበኛ ክዋኔ ብልጭ ድርግም በሚሉበት ጊዜ የውጤት ምዝግብ ማስታወሻውን ከሚከተለው ጋር ይመሳሰላል ።
… esptool.py –ቺፕ esp32 -p /dev/ttyUSB0 -b 460800 –before=default_reset -after=hard_reset write_flash –flash_mode dio –flash_freq 40m –flash_size 2MB 0x8000 partition_table.0x-partition_table/partition.0x ቡት ጫኚ/ቡት ጫኚ 24:0a:c4:05:b9:14 stub በመስቀል ላይ… stub ሩጫ… ስቶብ ሩጫ… የባውድ መጠንን ወደ 460800 መለወጥ ተቀይሯል።
(በሚቀጥለው ገጽ ይቀጥላል)
Espressif ስርዓቶች
21 የሰነድ አስተያየት አስገባ
የተለቀቀው v5.0.9
ምዕራፍ 1. ጀምር
(ከባለፈው ገጽ የቀጠለ) የፍላሽ መጠንን በማዋቀር ላይ… ከ 3072 ባይት ወደ 103 ተጨምቆ… በ 0x00008000 መፃፍ… (100%) 3072 ባይት (103 የታመቀ) በ0x00008000 በ0.0 ሰከንድ ውስጥ ፅፏል (ከ5962.8 kbit ከ ዳታ 000 ውጤታማ) የታመቀ 26096 ባይት ወደ 15408… በ0x00001000 መፃፍ… (100%) 26096 ባይት (15408 compressed) በ0x00001000 በ0.4 ሰከንድ ፃፈ (ከ546.7 kbit/s ውጤታማ)… Hash of data 147104 ባይት ወደ 77364 ተጨምቆ… በ0x00010000 መፃፍ… (20%) በ0x00014000… (40%) በ0x00018000 መፃፍ… (60%) (%) በ 0x0001c80 መጻፍ… 0x00020000… (100%) 147104 ባይት (77364 compressed) በ0x00010000 በ1.9 ሰከንድ ውስጥ (615. 5 kbit/s ውጤታማ) … ሃሽ የተረጋገጠ መረጃ ጻፈ።
በመውጣት ላይ… በRTS ፒን በኩል ከባድ ዳግም ማስጀመር… ተከናውኗል
በፍላሽ ሂደቱ መጨረሻ ምንም ችግሮች ከሌሉ ቦርዱ እንደገና ይነሳና theohello_worldpapplication ይጀምራል። idf.pyን ከማሄድ ይልቅ Eclipse ወይም VS Code IDE ለመጠቀም ከፈለጉ፣ Eclipse Plugin፣ VSCcode Extensionን ይመልከቱ።
ውጤቱን ተከታተል ohello_worldpis በእርግጥ እየሰራ መሆኑን ለማረጋገጥ idf.py -p PORT ሞኒተር ይተይቡ (ፖርትን በተከታታይ ወደብ ስም መተካትን አይርሱ)።
ይህ ትእዛዝ የ IDF ሞኒተር መተግበሪያን ያስጀምራል፡-
$ idf.py -p በዳይሬክተሩ ውስጥ idf_monitorን ይቆጣጠሩ […]/esp/hello_world/build “python […]/esp-idf/tools/idf_monitor.py -b 115200 […]/esp/hello_ world/build/hello_world.elf”… — idf_monitor on 115200 —– ተወ፡ Ctrl+] | ምናሌ፡ Ctrl+T | እገዛ፡ Ctrl+T ተከትሎ Ctrl+H –ets Jun 8 2016 00:22:57
መጀመሪያ፡0x1(POWERON_RESET)፣ቡት፡0x13 (SPI_FAST_FLASH_BOOT) እና ጁን 8 2016 00፡22፡57 …
ከጅምር እና የምርመራ ምዝግብ ማስታወሻዎች ወደላይ ከተሸብልሉ በኋላ፣ oHello world!በመተግበሪያው የታተመ ማየት አለቦት።
… ሰላም አለም! በ10 ሰከንድ ውስጥ እንደገና በመጀመር ላይ… ይህ esp32 ቺፕ በ2 ሲፒዩ ኮር(ዎች)፣ ዋይፋይ/ቢቲ/ቢኤሌ፣ የሲሊኮን ክለሳ 1፣ 2ሜባ ውጫዊ ብልጭታ ዝቅተኛው ነፃ ክምር መጠን፡ 298968 ባይት በ9 ሰከንድ ውስጥ እንደገና በመጀመር ላይ… በ8 ሰከንድ ውስጥ እንደገና በመጀመር ላይ… በ7 ሰከንድ ውስጥ እንደገና በመጀመር ላይ…
ከአይዲኤፍ ሞኒተሪ ለመውጣት አቋራጩን Ctrl+ ይጠቀሙ።
Espressif ስርዓቶች
22 የሰነድ አስተያየት አስገባ
የተለቀቀው v5.0.9
ምዕራፍ 1. ጀምር
IDF ሞኒተሩ ከተሰቀለ በኋላ ብዙም ሳይቆይ ካልተሳካ፣ ወይም፣ ከላይ ባሉት መልዕክቶች ምትክ፣ ከዚህ በታች ካለው ጋር ተመሳሳይ የሆነ የዘፈቀደ ቆሻሻ ካዩ፣ ሰሌዳዎ ምናልባት 26 ሜኸር ክሪስታል ሊጠቀም ይችላል። አብዛኛዎቹ የልማት ቦርድ ዲዛይኖች 40 ሜኸር ይጠቀማሉ፣ ስለዚህ ESP-IDF ይህንን ድግግሞሽ እንደ ነባሪ እሴት ይጠቀማል።
እንደዚህ አይነት ችግር ካጋጠመዎት የሚከተሉትን ያድርጉ፡ 1. ከሞኒተሪው ይውጡ። 2. ወደ menuconfig ተመለስ. 3. ወደ አካል ማዋቀር > የሃርድዌር መቼቶች > ዋና XTAL ውቅረት > ዋና XTAL ፍሪኩዌንሲ ይሂዱ፣ ከዚያ CONFIG_XTAL_FREQ_SEL ወደ 26 MHz ቀይር። 4. ከዚያ በኋላ, አፕሊኬሽኑን እንደገና ይገንቡ እና ያብሩት.
አሁን ባለው የESP-IDF ስሪት፣ በESP32 የሚደገፉ ዋና የ XTAL ድግግሞሾች እንደሚከተለው ናቸው።
· 26 ሜኸ · 40 ሜኸ
ማሳሰቢያ፡ ግንባታን፣ ብልጭ ድርግም የሚል እና ክትትልን በመሮጥ ወደ አንድ ደረጃ ማጣመር ይችላሉ፡ idf.py -p PORT flash monitor
በተጨማሪ ይመልከቱ፡ · IDF ሞኒተር ለአጠቃቀም ምቹ አቋራጮች እና ተጨማሪ ዝርዝሮችን ስለ IDF ሞኒተር አጠቃቀም። · idf.py ለ idf.py ትዕዛዞች እና አማራጮች ሙሉ ማጣቀሻ።
በ ESP32 ለመጀመር የሚያስፈልግህ ያ ብቻ ነው! አሁን ሌላ የቀድሞ ሰው ለመሞከር ዝግጁ ነዎትamples፣ ወይም የራስዎን መተግበሪያዎች ለማዘጋጀት በቀጥታ ይሂዱ።
ጠቃሚ፡ አንዳንድ የቀድሞamples ESP32ን አይደግፉም ምክንያቱም የሚፈለገው ሃርድዌር በESP32 ውስጥ ስላልተጨመረ ሊደገፍ አይችልም። አንድ የቀድሞ መገንባት ከሆነampእባክህ README ን ተመልከት file ለሚደገፉ ዒላማዎች ሰንጠረዥ. ይህ ESP32 ኢላማን ጨምሮ ካለ፣ ወይም ሰንጠረዡ ጨርሶ ከሌለ፣ የቀድሞample ESP32 ላይ ይሰራል።
ተጨማሪ ጠቃሚ ምክሮች
የፈቃድ ችግሮች /dev/ttyUSB0 በአንዳንድ የሊኑክስ ስርጭቶች ESP32ን በሚያበሩበት ጊዜ ወደብ/dev/ttyUSB0 መክፈት አልተቻለም የስህተት መልእክት ሊያገኙ ይችላሉ። ይህ የአሁኑን ተጠቃሚ ወደ የንግግር ቡድን በማከል ሊፈታ ይችላል።
የ Python ተኳኋኝነት ESP-IDF Python 3.7 ወይም ከዚያ በላይ ይደግፋል። ይህን መስፈርት ወደሚያረካው ኦፐሬቲንግ ሲስተምዎን ወደ የቅርብ ጊዜው ስሪት ማሻሻል ይመከራል። ሌሎች አማራጮች ፓይዘንን ከምንጮች መጫን ወይም እንደ pyenv ያሉ የ Python ስሪት አስተዳደር ስርዓትን መጠቀም ያካትታሉ።
በቦርድ የድጋፍ ፓኬጅ ይጀምሩ በአንዳንድ የልማት ሰሌዳዎች ላይ ፕሮቶታይፕን ለማፋጠን፣የቦርድ ድጋፍ ፓኬጆችን (BSPs) መጠቀም ይችላሉ፣ ይህም የአንድ የተወሰነ ቦርድ አጀማመርን እንደ ጥቂት የተግባር ጥሪዎች ቀላል ያደርገዋል።
Espressif ስርዓቶች
23 የሰነድ አስተያየት አስገባ
የተለቀቀው v5.0.9
ምዕራፍ 1. ጀምር
BSP በተለምዶ በልማት ሰሌዳ ላይ የቀረቡትን ሁሉንም የሃርድዌር ክፍሎች ይደግፋል። ከፒንዮውት ፍቺ እና ጅምር ተግባራት ውጭ፣ BSP ከአሽከርካሪዎች ጋር ለውጫዊ አካላት እንደ ዳሳሾች፣ ማሳያዎች፣ ኦዲዮ ኮዴኮች ወዘተ. BSP ዎች በIDF አካል አስተዳዳሪ በኩል ይሰራጫሉ፣ ስለዚህ በ IDF ክፍል መዝገብ ውስጥ ይገኛሉ። ሄር አንድ የቀድሞampESP-WROVER-KIT BSPን ወደ ፕሮጀክትዎ እንዴት እንደሚጨምሩ፡ idf.py add-dependency esp_wrover_kit
ተጨማሪ የቀድሞampየBSP አጠቃቀም በBSP ex ውስጥ ይገኛል።amples አቃፊ.
ተዛማጅ ሰነዶች የመጫን ሂደቱን ማበጀት ለሚፈልጉ የላቀ ተጠቃሚዎች፡- · የኢኤስፒ-አይዲኤፍ መሳሪያዎችን በዊንዶው ላይ ማዘመን · ተከታታይ ግንኙነትን ከ ESP32 ጋር መፍጠር · Eclipse Plugin · VSCcode Extension · IDF Monitor
በዊንዶውስ ላይ የ ESP-IDF መሳሪያዎችን በማዘመን ላይ
ስክሪፕት ተጠቅመው የESP-IDF መሳሪያዎችን ይጫኑ ከዊንዶውስ ትዕዛዝ ጥያቄው ኢኤስፒዲኤፍ ወደተጫነበት ማውጫ ይቀይሩ። ከዚያ ሩጡ፡-
ጫን.ባት
ለPowershell፣ ESP-IDF ወደተጫነበት ማውጫ ይቀይሩ። ከዚያ ሩጡ፡-
ጫን.ps1
ይህ ESP-IDF ለመጠቀም አስፈላጊ የሆኑትን መሳሪያዎች ያውርዳል እና ይጭናል። የመሳሪያው የተወሰነ ስሪት አስቀድሞ ከተጫነ ምንም እርምጃ አይወሰድም. መሳሪያዎቹ በESP-IDF Tools ጫኝ ሂደት ወቅት ወደተገለጸው ማውጫ ውስጥ ወርደው ተጭነዋል። በነባሪ፣ ይህ C: Usersusername.espressif ነው።
የኤክስፖርት ስክሪፕት በመጠቀም የESP-IDF መሳሪያዎችን ወደ PATH ያክሉ ESP-IDF tools ጫኝ ለ oESP-IDF Command Promptp የጀምር ሜኑ አቋራጭ ይፈጥራል። ይህ አቋራጭ ሁሉም መሳሪያዎች ያሉበት የትእዛዝ መስጫ መስኮት ይከፍታል።
ይገኛል. በአንዳንድ ሁኔታዎች፣ ያንን አቋራጭ መጠቀም ባልጀመረው የትእዛዝ መስጫ መስኮት ከESP-IDF ጋር መስራት ይፈልጉ ይሆናል። ጉዳዩ ይህ ከሆነ፣ የESP-IDF መሳሪያዎችን ወደ PATH ለመጨመር ከታች ያሉትን መመሪያዎች ይከተሉ። ESP-IDFን ለመጠቀም በሚፈልጉበት የትዕዛዝ መጠየቂያው ውስጥ፣ ESP-IDF ወደሚጫንበት ማውጫ ይቀይሩ እና ከዚያ Export.bat ን ያሂዱ፡
ሲዲ% የተጠቃሚ ፕሮfile%espesp-idf ኤክስፖርት.ባት
በአማራጭ በPowershell ውስጥ ESP-IDFን ለመጠቀም ወደሚፈልጉበት ማውጫ ይቀይሩ እና ESP-IDF ወደሚጫንበት ማውጫ ይቀይሩ እና ወደ ውጪ መላክ።ps1ን ያስፈጽሙ፡-
cd ~/esp/esp-idf export.ps1
ይህ ሲደረግ, መሳሪያዎቹ በዚህ የትእዛዝ ጥያቄ ውስጥ ይገኛሉ.
ተከታታይ ግንኙነትን ከESP32 ጋር ይፍጠሩ ይህ ክፍል በESP32 እና በፒሲ መካከል ተከታታይ ግንኙነት እንዴት መመስረት እንደሚቻል መመሪያ ይሰጣል።
Espressif ስርዓቶች
24 የሰነድ አስተያየት አስገባ
የተለቀቀው v5.0.9
ምዕራፍ 1. ጀምር
ESP32ን ከፒሲ ጋር ያገናኙ የዩኤስቢ ገመዱን በመጠቀም የ ESP32 ሰሌዳውን ከፒሲው ጋር ያገናኙ። የመሳሪያ ሾፌር በራስ-ሰር ካልተጫነ በእርስዎ ESP32 ሰሌዳ (ወይም ውጫዊ መለወጫ dongle) ላይ ዩኤስቢ ወደ ተከታታይ መለወጫ ቺፑን ይለዩ እና ሾፌሮችን በኢንተርኔት ይፈልጉ እና ይጫኑዋቸው። ከታች ያሉት በአብዛኛዎቹ ESP32 ሰሌዳዎች ላይ የተጫኑ የዩኤስቢ ወደ ተከታታይ መቀየሪያ ቺፖች ከአሽከርካሪዎች ጋር ተያይዘው ይገኛሉ፡-
· CP210x፡ CP210x USB ወደ UART ድልድይ ቪሲፒ ነጂዎች · FTDI: FTDI Virtual COM Port Drivers እባክዎን ለተወሰነ ዩኤስቢ ወደ ተከታታይ መቀየሪያ ቺፕ ጥቅም ላይ የዋለ የቦርድ ተጠቃሚ መመሪያን ያረጋግጡ። ከላይ ያሉት አሽከርካሪዎች በዋናነት ለማጣቀሻዎች ናቸው. በተለመደው ሁኔታ, ሾፌሮቹ ከኦፕሬቲንግ ሲስተም ጋር መያያዝ እና ቦርዱን ከፒሲ ጋር ሲያገናኙ በራስ-ሰር መጫን አለባቸው.
በዊንዶው ላይ ያለውን ወደብ ያረጋግጡ በዊንዶውስ መሣሪያ አስተዳዳሪ ውስጥ ተለይተው የታወቁ የ COM ወደቦች ዝርዝርን ያረጋግጡ። ESP32ን ያላቅቁ እና መልሰው ያገናኙት፣ ከዝርዝሩ የትኛው ወደብ እንደጠፋ እና ከዚያ እንደገና እንደሚታይ ለማረጋገጥ። ከታች ያሉት ምስሎች ለESP32 DevKitC እና ESP32 WROVER KIT ተከታታይ ወደብ ያሳያሉ
ምስል 13፡ የESP32-DevKitC ከዩኤስቢ ወደ UART ድልድይ በዊንዶውስ መሳሪያ አስተዳዳሪ
በሊኑክስ እና በማክኦኤስ ላይ ያለውን ወደብ ያረጋግጡ የ ESP32 ቦርድዎ ተከታታይ ወደብ (ወይም የውጭ መለወጫ ዶንግል) ይህንን ትዕዛዝ ሁለት ጊዜ ያሂዱ በመጀመሪያ ቦርዱ / ዶንግል ነቅለው ከዚያ ከተሰካ በኋላ ለሁለተኛ ጊዜ የሚታየው ወደብ እርስዎ የሚፈልጉት ሊኑክስ ነው ።
ls /dev/tty*
ማክሮስ
Espressif ስርዓቶች
25 የሰነድ አስተያየት አስገባ
የተለቀቀው v5.0.9
ምዕራፍ 1. ጀምር
ምስል 14፡ ሁለት የዩኤስቢ መለያ ወደቦች የESP-WROVER-KIT በዊንዶውስ መሳሪያ አስተዳዳሪ
Espressif ስርዓቶች
26 የሰነድ አስተያየት አስገባ
የተለቀቀው v5.0.9
ምዕራፍ 1. ጀምር
ls /dev/cu.* ማስታወሻ፡ የማክሮስ ተጠቃሚዎች፡ የመለያ ወደብ ካላዩ የዩኤስቢ/ተከታታይ ሾፌሮች መጫኑን ያረጋግጡ። ለአሽከርካሪዎች ማገናኛ ESP32ን ከፒሲ ጋር ያገናኙ የሚለውን ክፍል ይመልከቱ። ለ macOS High Sierra (10.13) ነጂዎቹ እንዲጭኑ በግልፅ መፍቀድ ሊኖርብዎ ይችላል። የስርዓት ምርጫዎችን ይክፈቱ -> ደህንነት እና ግላዊነት -> አጠቃላይ እና እዚህ የሚታየው ስለ oSystem Software ከገንቢ lp የገንቢው ስም Silicon Labs ወይም FTDI የሚል መልእክት ካለ ያረጋግጡ።
በሊኑክስ ላይ ተጠቃሚን ማከል አሁን የገባው ተጠቃሚ ተከታታይ ወደቡን በዩኤስቢ ማንበብ እና መፃፍ ነበረበት። በአብዛኛዎቹ የሊኑክስ ስርጭቶች ላይ ተጠቃሚውን በሚከተለው ትእዛዝ ወደ የንግግር ቡድን በማከል ይከናወናል።
sudo usermod -a -G መገናኛ $USER
በአርክ ሊኑክስ ላይ ይህ የሚከናወነው በሚከተለው ትዕዛዝ ተጠቃሚውን ወደ uucp ቡድን በማከል ነው።
sudo usermod -a -G uucp $USER
ለተከታታይ ወደብ የማንበብ እና የመጻፍ ፍቃዶችን ለማንቃት እንደገና መግባትዎን ያረጋግጡ።
ተከታታይ ግንኙነቱን ያረጋግጡ አሁን ተከታታይ ግንኙነቱ የሚሰራ መሆኑን ያረጋግጡ። ESP32 ን ዳግም ካስጀመርክ በኋላ በተርሚናል ላይ ምንም አይነት ውጤት ካገኘህ በማጣራት ተከታታይ ተርሚናል ፕሮግራምን በመጠቀም ይህን ማድረግ ትችላለህ። በESP32 ላይ ያለው ነባሪ የኮንሶል ባውድ መጠን 115200 ነው።
ዊንዶውስ እና ሊኑክስ በዚህ exampለሁለቱም ለዊንዶውስ እና ሊነክስ የሚገኘውን የፑቲ ኤስኤስኤች ደንበኛን እንጠቀማለን። ሌሎች ተከታታይ ፕሮግራሞችን መጠቀም እና የግንኙነት መለኪያዎችን ከዚህ በታች ማዘጋጀት ይችላሉ. ተርሚናልን ያሂዱ እና ተለይቶ የሚታወቅ ተከታታይ ወደብ ያዘጋጁ። ባውድ ተመን = 115200 (ከተፈለገ ይህንን ወደ ነባሪው የቺፑ ፍጥነት ቀይር)፣ ዳታ ቢት = 8፣ ስቶክ ቢትስ = 1 እና ፓሪቲ = N ከዚህ በታች ተዘርዝረዋል።ampበዊንዶውስ እና ሊኑክስ ላይ ወደቡን የማቀናበር ቅጽበታዊ ገጽ እይታዎች እና እንደዚህ ያሉ የማስተላለፊያ መለኪያዎች (በአጭሩ እንደ 115200-8-1-N ተገልጿል)። ከላይ በደረጃ ለይተው ያወቁትን ተመሳሳይ ተከታታይ ወደብ መምረጥዎን ያስታውሱ። ከዚያ በ ESP32 የታተመ ማንኛውንም ሎግ ካዩ በተርሚናል ውስጥ ተከታታይ ወደብ ይክፈቱ እና ያረጋግጡ። የምዝግብ ማስታወሻው ይዘቱ ወደ ESP32 በተጫነው መተግበሪያ ላይ ይወሰናል፣ ዘፀample Output.
ማሳሰቢያ፡ግንኙነቱ እየሰራ መሆኑን ካረጋገጠ በኋላ ተከታታይ ተርሚናልን ዝጋ። የተርሚናል ክፍለ ጊዜውን ክፍት ካደረጉት፣ ተከታታይ ወደብ በኋላ ላይ ፈርምዌርን ለመጫን ተደራሽ አይሆንም።
macOS የመለያ ተርሚናል ፕሮግራምን የመጫን ችግርን ለመታደግ ማክሮስ የስክሪን ትዕዛዙን ይሰጣል። · በLinux እና MacOS ላይ በCheck port ላይ እንደተብራራው፣ አሂድ፡-
ls /dev/cu.* · ተመሳሳይ ውጤት ማየት አለብህ፡-
/dev/cu.ብሉቱዝ-መጪ-ወደብ /dev/cu.SLAB_USBtoUART USBtoUART7
/dev/cu.SLAB_
· ከኮምፒዩተርዎ ጋር በተገናኙት የቦርዶች አይነት እና ብዛት ላይ በመመርኮዝ ውጤቱ ይለያያል። ከዚያ የቦርድዎን የመሳሪያ ስም ይምረጡ እና ያሂዱ (ከተፈለገ፣ o115200 በአገልግሎት ላይ ባለው ነባሪ የባውድ መጠን ይለውጡ)
screen /dev/cu.device_name 115200 ls /dev/cu.* እያሄደ ባለው ስም የመሣሪያ_ስምን ይተኩ።
Espressif ስርዓቶች
27 የሰነድ አስተያየት አስገባ
የተለቀቀው v5.0.9
ምዕራፍ 1. ጀምር
ምስል 15፡ ተከታታይ ግንኙነትን በፑቲቲ በዊንዶውስ ማዋቀር
Espressif ስርዓቶች
28 የሰነድ አስተያየት አስገባ
የተለቀቀው v5.0.9
ምዕራፍ 1. ጀምር
ምስል 16፡ ተከታታይ ግንኙነትን በPUTTY በሊኑክስ ማዋቀር
Espressif ስርዓቶች
29 የሰነድ አስተያየት አስገባ
የተለቀቀው v5.0.9
ምዕራፍ 1. ጀምር
· የምትፈልጉት በስክሪኑ የሚታየውን ሎግ ነው። የምዝግብ ማስታወሻው ይዘቱ ወደ ESP32 በተጫነው መተግበሪያ ላይ ይወሰናል፣ ዘፀample Output. ከማያ ገጹ ክፍለ ጊዜ ለመውጣት Ctrl-A + ይተይቡ።
ማሳሰቢያ፡ ግንኙነቱ እየሰራ መሆኑን ካረጋገጡ በኋላ ከማያ ገጹ ክፍለ ጊዜ መውጣትን አይርሱ። ይህን ማድረግ ካልቻሉ እና የተርሚናል መስኮቱን ብቻ ከዘጉ፣ ተከታታይ ወደብ በኋላ ላይ ፈርምዌርን ለመጫን ተደራሽ አይሆንም።
Example Output አንድ የቀድሞample log ከዚህ በታች ይታያል. ምንም ነገር ካላዩ ሰሌዳውን እንደገና ያስጀምሩ. et ሰኔ 8 2016 00:22:57
መጀመሪያ፡0x5(DEEPSLEEP_RESET)፣ቡት፡0x13 (SPI_FAST_FLASH_BOOT) እና ሰኔ 8 2016 00፡22፡57
rst:0x7 (TG0WDT_SYS_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT) configsip: 0, SPIWP:0x00 clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00 mode:DIO, clock div:2 load:0x3fff0008,len:8 load:0x3fff0010,len:3464 load:0x40078000,len:7828 load:0x40080000,len:252 entry 0x40080034 I (44) boot: ESP-IDF v2.0-rc1-401-gf9fba35 2nd stagሠ ቡት ጫኚ I (45) ማስነሻ፡ ጊዜ ማጠናቀር 18፡48፡10
…
ሊነበብ የሚችል የምዝግብ ማስታወሻ ውፅዓት ማየት ከቻሉ ተከታታይ ግንኙነት እየሰራ ነው እና ወደ መጫን እና በመጨረሻም አፕሊኬሽኑን ወደ ESP32 ለመስቀል ዝግጁ ነዎት ማለት ነው።
ማሳሰቢያ፡ ለአንዳንድ ተከታታይ ወደብ የወልና አወቃቀሮች ESP32 ከመነሳቱ እና ተከታታይ ውፅዓት ከማምጣቱ በፊት ተከታታይ RTS እና DTR ፒን በተርሚናል ፕሮግራም ውስጥ መሰናከል አለባቸው። ይህ በሃርድዌር በራሱ ላይ የተመሰረተ ነው, አብዛኛዎቹ የእድገት ቦርዶች (ሁሉም የ Espressif ቦርዶችን ጨምሮ) ይህ ጉዳይ የላቸውም. RTS እና DTR በቀጥታ ወደ EN እና GPIO0 ፒን ከተጣመሩ ችግሩ አለ። ለተጨማሪ ዝርዝሮች የ esptool ሰነድ ይመልከቱ።
ከደረጃ 5 እዚህ ከደረስክ በ ESP-IDF ላይ s/w ስትጭን የመጀመሪያ ርምጃዎች፣ በመቀጠል በደረጃ 5 መቀጠል ትችላለህ።
የ IDF ሞኒተር IDF ሞኒተር በዋናነት ተከታታይ መረጃን ወደ ኢላማው የመሣሪያዎች ተከታታይ ወደብ የሚያስተላልፍ ተከታታይ ተርሚናል ፕሮግራም ነው። እንዲሁም አንዳንድ IDF-ተኮር ባህሪያትን ያቀርባል። IDF ሞኒተር idf.py ሞኒተርን በማሄድ ከ IDF ፕሮጀክት ሊጀመር ይችላል።
የቁልፍ ሰሌዳ አቋራጮች ከአይዲኤፍ ሞኒተር ጋር ለቀላል መስተጋብር፣ በሰንጠረዡ ውስጥ ያሉትን የቁልፍ ሰሌዳ አቋራጮች ይጠቀሙ።
Espressif ስርዓቶች
30 የሰነድ አስተያየት አስገባ
የተለቀቀው v5.0.9
ምዕራፍ 1. ጀምር
የቁልፍ ሰሌዳ አቋራጭ Ctrl+] Ctrl+T
Ctrl+T
Ctrl+] · Ctrl+P
Ctrl+R
Ctrl+F
Ctrl+A (ወይም A)
Ctrl+Y
Ctrl+L
Ctrl+I (ወይም I)
Ctrl+H (ወይም H)
Ctrl+X (ወይም X)
Ctrl+C
ድርጊት
መግለጫ
ከፕሮግራሙ ውጣ የምናሌ ማምለጫ ቁልፍ የማውጫ ቁምፊውን ራሱ ወደ የርቀት መቆጣጠሪያ ይላኩ።
የመውጫ ቁምፊውን ራሱ ወደ የርቀት መቆጣጠሪያ ይላኩ።
መተግበሪያን በRTS መስመር በኩል ባለበት ለማቆም ዒላማውን ወደ ቡት ጫኚው ዳግም ያስጀምሩ
የዒላማ ሰሌዳን በRTS በኩል ዳግም ያስጀምሩ
ፕሮጀክቱን ይገንቡ እና ያብሩት።
መተግበሪያውን ብቻ ይገንቡ እና ያብሩት።
በማያ ገጹ ላይ የምዝግብ ማስታወሻ ህትመትን አቁም/ ከቆመበት ቀጥል
የማቆሚያ/ከቆመበት የምዝግብ ማስታወሻ ውፅዓት ተቀምጧል file
አቁም/የቆመበት ጊዜamps
ማተም
ሁሉንም የቁልፍ ሰሌዳ አቋራጮች አሳይ
ከታች ከተሰጡት ቁልፎች አንዱን ተጭነው ይከተሉት።
ቦርዱ ምንም እንዳይሰራ በ RTS መስመር (ከተገናኘ) ወደ ቡት ጫኚ ውስጥ ኢላማውን ዳግም ያስጀምራል። ሌላ መሳሪያ እስኪጀምር መጠበቅ ሲያስፈልግ ይጠቅማል። የዒላማ ሰሌዳውን እንደገና ያስጀምረዋል እና ማመልከቻውን በ RTS መስመር (ከተገናኘ) እንደገና ያስጀምረዋል.
የፕሮጀክት ፍላሽ ኢላማውን ለማስኬድ idf_monitor ባለበት ያቆማል፣ ከዚያ idf_monitorን ከቆመበት ይቀጥላል። ማንኛውም የተለወጠ ምንጭ fileዎች እንደገና ይሰባሰባሉ እና ከዚያ እንደገና ብልጭ ድርግም ይላሉ። ዒላማ የተመሰጠረ-ፍላሽ የሚሰራው idf_monitor በክርክር -E ከተጀመረ ነው። የመተግበሪያ-ፍላሽ ኢላማውን ለማስኬድ idf_monitor ባለበት ያቆማል፣ ከዚያ idf_monitorን ከቆመበት ይቀጥላል። ከፍላሽ ኢላማው ጋር ተመሳሳይ ነው፣ ነገር ግን ዋናው መተግበሪያ ብቻ ነው የተሰራው እና እንደገና የበራ። ዒላማ ኢንክሪፕትድ-አፕ-ፍላሽ የሚሰራው idf_monitor በክርክር -E ከተጀመረ ነው። ሲነቃ ሁሉንም ገቢ ተከታታይ ውሂብ ያስወግዳል። መቆጣጠሪያውን ሳያቋርጥ በፍጥነት ለማቆም እና የምዝግብ ማስታወሻ ውፅዓትን ለመመርመር ያስችላል። ይፈጥራል ሀ file በፕሮጀክት ማውጫ ውስጥ እና ውጤቱ ለዚያ ተጽፏል file ይህ በተመሳሳዩ የቁልፍ ሰሌዳ አቋራጭ (ወይም IDF ሞኒተር መውጫዎች) እስከሚሰናከል ድረስ። IDF ሞኒተር አንድ ጊዜ ማተም ይችላል።amp በእያንዳንዱ መስመር መጀመሪያ ላይ. ዘመኑamp ፎርማት በ -timest ሊቀየር ይችላል።amp- የትእዛዝ መስመር ክርክር ቅርጸት።
ከፕሮግራሙ ውጣ
አሂድ መተግበሪያን አቋርጥ
ባለበት ያቆማል IDF ን ይከታተል እና የGDB ፕሮጄክት አራሚን በማሄድ አፕሊኬሽኑን በስራ ሰዓት ለማረም ያሂዱ። ይሄ ለመንቃት :ref:CONFIG_ESP_SYSTEM_GDBSTUB_RUNTIME አማራጭ ያስፈልገዋል።
ከCtrl-] እና ከ Ctrl-T በስተቀር ማንኛውም የተጫኑ ቁልፎች በተከታታይ ወደብ በኩል ይላካሉ።
IDF-ተኮር ባህሪያት
አውቶማቲክ አድራሻ ዲኮዲንግ በማንኛውም ጊዜ ESP-IDF ቅጽ 0x4_______ ሄክሳዴሲማል ኮድ አድራሻ ባወጣ ቁጥር IDF Monitor addr2line_ን በመጠቀም በምንጭ ኮድ ውስጥ ያለውን ቦታ ለማየት እና የተግባር ስሙን ለማግኘት።
የESP-IDF መተግበሪያ ከተበላሸ እና ከተደናገጠ፣ የመመዝገቢያ መጣያ እና የኋላ ዱካ ይፈጠራል፣ እንደሚከተሉት ያሉ፡
Espressif ስርዓቶች
31 የሰነድ አስተያየት አስገባ
የተለቀቀው v5.0.9
ምዕራፍ 1. ጀምር
የጉሩ ሜዲቴሽን ስህተት ማከማቻ የተከለከለው በዋናው 0 ላይ ተከስቷል። የተለየ ነበር።
ያልተያዘ.
የቆሻሻ መጣያ ይመዝገቡ;
PC
: 0x400f360d PS
: 0x00060330 A0
: 0x800dbf56 A1
:
0x3ffb7e00
A2
: 0x3ffb136c A3
: 0x00000005 A4
: 0x00000000 A5
:
0x00000000
A6
: 0x00000000 A7
: 0x00000080 A8
: 0x00000000 A9
:
0x3ffb7dd0
አ10
: 0x00000003 A11
: 0x00060f23 A12
: 0x00060f20 A13
:
0x3ffba6d0
አ14
: 0x00000047 A15
: 0x0000000f SAR
: 0x00000019 ይቅር፡
0x0000001d
EXCVADDR: 0x00000000 LBEG: 0x4000c46c ብድር: 0x4000c477 LCOUNT:
0x00000000
Backtrace: 0x400f360d:0x3ffb7e00 0x400dbf56:0x3ffb7e20 0x400dbf5e:0x3ffb7e40 0x400dbf82:0x3ffb7e60 0x400d071d:0x3ffb7e90
IDF ሞኒተር ወደ መጣያው ተጨማሪ ዝርዝሮችን ያክላል፡-
የጉሩ ሜዲቴሽን ስህተት ማከማቻ የተከለከለው በዋናው 0 ላይ ተከስቷል። የተለየ ነበር።
ያልተያዘ.
የቆሻሻ መጣያ ይመዝገቡ;
PC
: 0x400f360d PS
: 0x00060330 A0
: 0x800dbf56 A1
:
0x3ffb7e00
0x400f360d: በ /home/gus/esp/32/idf/ex ላይ_የሚበላሽ_ነገር_አድርግampሌስ/ጀምር/
ሰላም_ዓለም/ዋና/./ሰላም_ዓለም_main.c:57
(በውስጡ የገባ) በ /home/gus/esp/32/idf/ex ላይ የውስጥ_አጋጣሚampሌስ/ጀምር/ሰላም_
ዓለም/ዋና/./ሰላም_ዓለም_main.c:52
A2
: 0x3ffb136c A3
: 0x00000005 A4
: 0x00000000 A5
:
0x00000000
A6
: 0x00000000 A7
: 0x00000080 A8
: 0x00000000 A9
:
0x3ffb7dd0
አ10
: 0x00000003 A11
: 0x00060f23 A12
: 0x00060f20 A13
:
0x3ffba6d0
አ14
: 0x00000047 A15
: 0x0000000f SAR
: 0x00000019 ይቅር፡
0x0000001d
EXCVADDR: 0x00000000 LBEG: 0x4000c46c ብድር: 0x4000c477 LCOUNT:
0x00000000
Backtrace: 0x400f360d:0x3ffb7e00 0x400dbf56:0x3ffb7e20 0x400dbf5e:0x3ffb7e40 0x400dbf82:0x3ffb7e60 0x400d071d:0x3ffb7e90 0x400f360d: do_something_to_crash at /home/gus/esp/32/idf/examples/ጀማሪ/ ሰላም_አለም/ዋና/./ሄሎ_world_main.c:57 (በውስጠ-ግንኙነት) በ /home/gus/esp/32/idf/ex ላይamples/ጀማሪ/ሄሎ_አለም/ዋና/./hello_world_main.c:52 0x400dbf56:አሁንም_አልበላሽም በ /home/gus/esp/32/idf/examples/ጀምር/ሄሎ_አለም/ዋና/./hello_world_main.c:47 0x400dbf5e: አትቸገር በ /home/gus/esp/32/idf/examples/ጀማሪ/ሄሎ_ዓለም/ ዋና/./hello_world_main.c:42 0x400dbf82: app_main በ /home/gus/esp/32/idf/examples/ጀማሪ/ሄሎ_አለም/ዋና/ ./ሄሎ_world_main.c:33 0x400d071d፡ ዋና_ስራ በ /home/gus/esp/32/idf/components/esp32/./cpu_start.c:254
እያንዳንዱን አድራሻ ለመፍታት፣ IDF Monitor የሚከተለውን ትዕዛዝ ከበስተጀርባ ይሰራል፡ xtensa-esp32-elf-addr2line -pfiaC -e build/PROJECT.elf ADDRESS
ማሳሰቢያ፡- የአካባቢን ተለዋዋጭ ESP_MONITOR_DECODE ወደ 0 ያቀናብሩ ወይም በልዩ የትእዛዝ መስመር idf_monitor.py ይደውሉ
Espressif ስርዓቶች
32 የሰነድ አስተያየት አስገባ
የተለቀቀው v5.0.9
ምዕራፍ 1. ጀምር
አማራጭ፡ idf_monitor.py –disable-address-decoding የአድራሻ መፍታትን ለማሰናከል።
በግንኙነት ላይ የዒላማ ዳግም ማስጀመር በነባሪ፣ IDF Monitor ከሱ ጋር ሲገናኝ ዒላማውን ዳግም ያስጀምራል። የዒላማው ቺፕ ዳግም ማስጀመር የሚከናወነው በ DTR እና RTS ተከታታይ መስመሮች በመጠቀም ነው. IDF ሞኒተር በግንኙነት ላይ ኢላማውን በራስ ሰር ዳግም እንዳያስጀምር ለመከላከል፡-ምንም ዳግም ማስጀመር በሚለው አማራጭ (ለምሳሌ፡ idf_monitor.py –no-reset) ለ IDF Monitor ይደውሉ።
ማስታወሻ፡-ምንም ዳግም ማስጀመር አማራጭ IDF ሞኒተርን ከአንድ የተወሰነ ወደብ (ለምሳሌ idf.py monitor –no-reset -p [PORT]) ሲያገናኙም ተመሳሳይ ባህሪን ተግባራዊ ያደርጋል።
ጂዲቢን ከGDBStub GDBStub ጋር ማስጀመር በዒላማው ላይ የሚሄድ እና ከአስተናጋጁ ጋር በተከታታይ ወደብ ላይ በማገናኘት የማረም ትዕዛዞችን የሚቀበል ጠቃሚ የአሂድ ማረም ባህሪ ነው። GDBStub እንደ ማህደረ ትውስታ ማንበብ እና ተለዋዋጮች፣ የጥሪ ቁልል ፍሬሞችን መመርመር ወዘተ ያሉ ትዕዛዞችን ይደግፋል። ምንም እንኳን GDBStub ከጄ ያነሰ ሁለገብ ቢሆንምTAG ማረም፣ ምንም ልዩ ሃርድዌር አይፈልግም (እንደ ጄTAG ወደ ዩኤስቢ ድልድይ) ግንኙነት ሙሉ በሙሉ በተከታታይ ወደብ ላይ ስለሚደረግ። አንድ ኢላማ CONFIG_ESP_SYSTEM_PANICን በጂዲቢኤስቱብ በሂደት ጊዜ በማዘጋጀት GDBStub ከበስተጀርባ እንዲያሄድ ሊዋቀር ይችላል። የCtrl+C መልእክት በተከታታዩ ወደብ ላይ እስኪላክ እና GDBStub የፕሮግራሙን መቋረጥ (ማለትም አፈጻጸምን እንዲያቆም) እስኪያደርግ ድረስ GDBStub ከበስተጀርባ ይሰራል፣ በዚህም GDBStub የማረም ትዕዛዞችን እንዲይዝ ያስችለዋል። በተጨማሪም የፍርሃት ተቆጣጣሪው CONFIG_ESP_SYSTEM_PANICን በድንጋጤ ወደ GDBStub በማዘጋጀት GDBStub በብልሽት ላይ እንዲያሄድ ሊዋቀር ይችላል። ብልሽት በሚፈጠርበት ጊዜ GDBStub እየሰራ መሆኑን የሚያመለክት ልዩ የሕብረቁምፊ ንድፍ በተከታታይ ወደብ ላይ ያወጣል። በሁለቱም ሁኔታዎች (ማለትም፣ የCtrl+C መልእክት በመላክ ወይም ልዩ የstring ጥለትን በመቀበል) ተጠቃሚው የማረም ትዕዛዞችን እንዲልክ ለመፍቀድ IDF Monitor በራስ-ሰር GDB ይጀምራል። ከጂዲቢ ከወጣ በኋላ፣ ኢላማው በRTS ተከታታይ መስመር በኩል ዳግም ይጀመራል። ይህ መስመር ካልተገናኘ ተጠቃሚዎች ኢላማቸውን ዳግም ማስጀመር ይችላሉ (የቦርዶችን ዳግም ማስጀመር ቁልፍን በመጫን)።
ማስታወሻ፡ ከበስተጀርባ IDF Monitor GDBን ለማስጀመር የሚከተለውን ትዕዛዝ ይሰራል፡-
xtensa-esp32-elf-gdb -ex “serial baud BAUD” -ለምሳሌ “የማነጣጠር የርቀት ወደብ” -የማቋረጥ ግንባታ/PROJECT.elf :idf_ታርጌት፡`ሰላም የስም ቺፕ`
የውጤት ማጣራት IDF ማሳያ እንደ idf.py monitor –print-filter=”xyz” ሊጠራ ይችላል፣ እዚያም –print-filter የውጤት ማጣሪያ መለኪያ ነው። ነባሪው ዋጋ ባዶ ሕብረቁምፊ ነው, ይህም ማለት ሁሉም ነገር ታትሟል.
ምን እንደሚታተም ላይ ገደቦች እንደ ተከታታይ ሊገለጹ ይችላሉtag>: እቃዎች የትtag> ነው tag ሕብረቁምፊ እና የመግቢያ ደረጃን የሚያመለክት {N, E, W, I, D, V, *} ከተዘጋጀው ቁምፊ ነው።
ለ exampሌ፣ PRINT_FILTER=”tag1፡ደብሊው” በESP_LOGW የተፃፉትን ብቻ ያመሳስላል እና ያትማል("tag1”፣ …) ወይም ዝቅተኛ የቃል ደረጃ፣ ማለትም ESP_LOGE(“tag1 "፣…) አለመጥቀስ ሀ ወይም * ነባሪዎችን እስከ Verbose ደረጃ በመጠቀም።
ማሳሰቢያ፡ የማትፈልጋቸውን ውጤቶች በማጠናቀር ጊዜ ለማሰናከል የመጀመሪያ ደረጃ ምዝግብ ማስታወሻን ይጠቀሙ። ከ IDF ማሳያ ጋር የውጤት ማጣሪያ ሁለተኛ መፍትሄ ሲሆን ይህም አፕሊኬሽኑን እንደገና ሳያጠናቅቅ የማጣሪያ አማራጮችን ለማስተካከል ጠቃሚ ሊሆን ይችላል.
የእርስዎ መተግበሪያ tags ክፍተቶችን፣ ኮከቦችን * ወይም ኮሎን መያዝ የለበትም፡ ከውጤት ማጣሪያ ባህሪ ጋር ተኳሃኝ ለመሆን።
በመተግበሪያዎ ውስጥ ያለው የውጤት የመጨረሻ መስመር በጋሪ መመለስ ካልተከተለ የውጤት ማጣሪያው ግራ ሊጋባ ይችላል ማለትም ሞኒተሩ መስመሩን ማተም ሲጀምር እና በኋላ መስመሩ መፃፍ እንዳልነበረበት ይገነዘባል። ይህ የሚታወቅ ጉዳይ ነው እና ሁል ጊዜ የመጓጓዣ ተመላሽ በመጨመር (በተለይ ምንም ውጤት ወዲያውኑ ካልተከተለ) ማስቀረት ይቻላል።
Espressif ስርዓቶች
33 የሰነድ አስተያየት አስገባ
የተለቀቀው v5.0.9
ምዕራፍ 1. ጀምር
Exampየማጣሪያ ህጎች፡-
· * ማንኛውንም ለማዛመድ ሊያገለግል ይችላል። tags. ሆኖም፣ ሕብረቁምፊ PRINT_FILTER=”*:I tag1፡E” ከሰላምታ ጋር tag1 ስህተቶችን ብቻ ያትማል፣ ምክንያቱም ህጉ ለ tag1 ለ * ከደንቡ የበለጠ ቅድሚያ አለው።
ነባሪው (ባዶ) ህግ ከ *:V ጋር እኩል ነው ምክንያቱም እያንዳንዱን ስለሚዛመድ tag በ Verbose ደረጃ ወይም ዝቅተኛ ማለት ሁሉንም ነገር ማዛመድ ማለት ነው.
· "*: N" ከመመዝገቢያ ተግባራት የሚወጣውን ውጤት ብቻ ሳይሆን በ printf ወዘተ የተሰሩ ህትመቶችንም ጭምር ይገድባል. ይህንን ለማስቀረት *:E ወይም ከፍ ያለ የቃል ደረጃ ይጠቀሙ.
· ደንቦች "tag1፡V”፣ “tag1፡v”፣ “tag1:", "tag1:*” እና “tag1" እኩል ናቸው። · ደንብ "tag1፡ወ tag1:E" ከ" ጋር እኩል ነውtag1፡ኢ” ምክንያቱም ማንኛውም አይነት ተመሳሳይ መከሰት tag
ስም የቀደመውን ይተካል። · ደንብ "tag1: እኔ tag2፡ደብሊው” ብቻ ነው የሚታተመው tag1 በመረጃ ቃላቶች ደረጃ ወይም ዝቅተኛ እና tag2 በማስጠንቀቂያው
የቃል ደረጃ ወይም ዝቅተኛ። · ደንብ "tag1: እኔ tag2፡ወ tag3:N" በመሠረቱ ከቀዳሚው ጋር እኩል ነው ምክንያቱም tag3:N ይገልጻል
የሚለውን ነው። tag3 መታተም የለበትም. · tag3፡N በደንቡ"tag1: እኔ tag2፡ወ tag3፡N *፡V” የበለጠ ትርጉም ያለው ነው ምክንያቱም ያለሱ tag3:N የ
tag3 መልዕክቶች ሊታተሙ ይችሉ ነበር; ስህተቶቹ ለ tag1 እና tag2 በተጠቀሰው (ወይም ዝቅተኛ) የቃል ደረጃ ታትሟል እና ሁሉም ነገር በነባሪ ይታተማል።
የበለጠ ውስብስብ ማጣሪያ Exampየሚከተለው የምዝግብ ማስታወሻ ቅንጣቢ ያለ ምንም የማጣሪያ አማራጮች ተገኝቷል።
ጭነት:0x40078000,len:13564 ግቤት 0x40078d4c E (31) esp_image: ምስል 0x30000 ላይ ልክ ያልሆነ አስማት ባይት W (31) esp_image አለው: 0x30000 ላይ ያለው ምስል ልክ ያልሆነ SPI ሁነታ አለው 255 E (39) ፋብሪካ ማስነሳት አይቻልም (568) cpu_start፡ Pro ሲፒዩ ወደ ላይ። እኔ (569) heap_init፡ ማስጀመር። ራም ለተለዋዋጭ ምደባ ይገኛል፡ I (603) cpu_start፡ Pro ሲፒዩ ጅምር የተጠቃሚ ኮድ D (309) light_driver፡ [light_init, 74]: status: 1, mode: 2 D (318) vfs: esp_vfs_register_fd_range ለክልል ስኬታማ ነው <54; 64) እና VFS መታወቂያ 1 I (328) wifi፡ wifi ነጂ ተግባር፡ 3ffdbf84፣ prio:23፣ ቁልል፡4096፣ ኮር=0
የተቀረጸው የማጣሪያ አማራጮች PRINT_FILTER="wifi esp_image:E light_driver:I" ከዚህ በታች ቀርቧል፡
E (31) esp_image፡ ምስል 0x30000 ልክ ያልሆነ አስማት ባይት I (328) wifi፡ wifi ነጂ ተግባር፡ 3ffdbf84፣ prio:23፣ ቁልል:4096፣ ኮር=0 አለው
የ"PRINT_FILTER="የብርሃን_ሾፌር:D esp_image:N boot:N cpu_start:N vfs:N wifi:N *:V" የሚከተለውን ውፅዓት ያሳያሉ።
ጭነት: 0x40078000, ሌ: 13564 ግቤት 0x40078d4c I (569) heap_init: ማስጀመር. ራም ለተለዋዋጭ ምደባ ይገኛል፡ D (309) light_driver፡ [light_init, 74]: status: 1, mode: 2
ከ IDF ሞኒተር ጋር የታወቁ ጉዳዮች
በዊንዶውስ ላይ የተስተዋሉ ጉዳዮች
· የቀስት ቁልፎች፣ እንዲሁም አንዳንድ ሌሎች ቁልፎች፣ በWindows Console ውስንነቶች ምክንያት በጂዲቢ ውስጥ አይሰሩም። · አልፎ አልፎ፣ oidf.pypexits፣ IDF Monitor እንደገና ከመጀመሩ በፊት ለ30 ሰከንድ ያህል ሊቆም ይችላል። · ogdbpis ሲሮጥ፣ ከGDBStub ጋር መገናኘት ከመጀመሩ በፊት ለአጭር ጊዜ ሊቆም ይችላል።
Espressif ስርዓቶች
34 የሰነድ አስተያየት አስገባ
የተለቀቀው v5.0.9
ምዕራፍ 1. ለሊኑክስ እና ለማክኦኤስ መደበኛ የመሳሪያ ሰንሰለት ማዋቀር ይጀምሩ
የመጫኛ ደረጃ በደረጃ ይህ በመትከል ሂደት ውስጥ እርስዎን ለማራመድ ዝርዝር የሆነ ፍኖተ ካርታ ነው።
የልማት አካባቢን ማዋቀር እነዚህ ለእርስዎ ESP32 ESP-IDF የማዋቀር ደረጃዎች ናቸው። ደረጃ 1. ቅድመ ሁኔታዎችን ጫን · ደረጃ 2. ESP-IDF ያግኙ · ደረጃ 3. መሳሪያዎቹን አዘጋጁ · ደረጃ 4. የአካባቢ ተለዋዋጮችን ማዘጋጀት · ደረጃ 5. በ ESP-IDF ላይ የመጀመሪያ እርምጃዎች
ደረጃ 1. ቅድመ ሁኔታዎችን ጫን ESP-IDFን ከESP32 ጋር ለመጠቀም በእርስዎ ኦፕሬቲንግ ሲስተም ላይ በመመስረት አንዳንድ የሶፍትዌር ፓኬጆችን መጫን ያስፈልግዎታል። ይህ የማዋቀር መመሪያ ሁሉንም ነገር በሊኑክስ እና ማክኦኤስ ላይ በተመሰረቱ ስርዓቶች ላይ እንዲጫኑ ያግዝዎታል።
ለሊኑክስ ተጠቃሚዎች ESP-IDFን በመጠቀም ለማጠናቀር የሚከተሉትን ጥቅሎች ማግኘት ያስፈልግዎታል። የማስኬድ ትእዛዝ የሚወሰነው የትኛውን የሊኑክስ ስርጭት እየተጠቀሙ ነው፡-
ኡቡንቱ እና ዴቢያን፡ sudo apt-get install git wget flex bison gperf python3 python3-pip python3venv cmake ninja-build ccache libffi-dev libssl-dev dfu-util libusb-1.0-0
CentOS 7 እና 8፡ sudo yum -y update && sudo yum install git wget flex bison gperf python3 cmake ninja-build ccache dfu-util libusbx
CentOS 7 አሁንም ይደገፋል ነገር ግን ለተሻለ የተጠቃሚ ተሞክሮ CentOS ስሪት 8 ይመከራል። አርክ፡ sudo pacman -S – need gcc git make flex bison gperf python cmake ninja ccache dfu-util libusb
ማስታወሻ፡- ከESP-IDF ጋር ለመጠቀም CMake ስሪት 3.16 ወይም ከዚያ በላይ ያስፈልጋል። Otools/idf_toolsን ያሂዱ።የእርስዎ የስርዓተ ክወና ስሪቶች ከሌላቸው ተስማሚ ስሪት ይጫኑ cmakepto። · የሊኑክስ ስርጭትዎን ከላይ ባለው ዝርዝር ውስጥ ካላዩት እባክዎን የትኛውን ትእዛዝ ጥቅሎችን ለመጫን እንደሚጠቀሙ ለማወቅ ሰነዶቹን ያረጋግጡ ።
ለማክሮስ ተጠቃሚዎች ESP-IDF በነባሪ በማክሮስ ላይ የተጫነውን የ Python ስሪት ይጠቀማል። · CMake & Ninja build ን ጫን፡ HomeBrew ካለህ ማስኬድ ትችላለህ፡ brew install cmake ninja dfu-util MacPorts ካለህ ማስኬድ ትችላለህ፡ sudo port install cmake ninja dfu-util ያለበለዚያ የCMake እና Ninja መነሻ ገፆችን ለ macOS ጭነት አውርዶች ያማክሩ።
Espressif ስርዓቶች
35 የሰነድ አስተያየት አስገባ
የተለቀቀው v5.0.9
ምዕራፍ 1. ጀምር
ለፈጣን ግንባታዎች ccache ን መጫን በጥብቅ ይመከራል። HomeBrew ካለዎት ይህ በ MacPorts ላይ በ brew install ccache ወይም sudo port install ccache በኩል ሊከናወን ይችላል።
ማሳሰቢያ፡ እንደዚህ አይነት ስህተት በማንኛውም ደረጃ ከታየ፡ xcrun፡ ስህተት፡ ልክ ያልሆነ የገንቢ መንገድ (/Library/Developer/CommandLineTools)፣ xcrun በ: /Library/Developer/CommandLineTools/usr/bin/xcrun ጠፍቷል።
ከዚያ ለመቀጠል የ XCode ትዕዛዝ መስመር መሳሪያዎችን መጫን ያስፈልግዎታል. xcode-select –installን በማሄድ እነዚህን መጫን ይችላሉ።
የ Apple M1 ተጠቃሚዎች አፕል M1 መድረክን ከተጠቀሙ እና እንደዚህ አይነት ስህተት ካዩ፡ ማስጠንቀቂያ፡ ማውጫ ለመሳሪያ xtensa-esp32-elf version esp-2021r2-patch3-8.4.0 አለ ነገር ግን መሳሪያ አልተገኘም ስህተት፡ መሳሪያ xtensa-esp32-elf ምንም የተጫኑ ስሪቶች የሉትም። እባክህ ለመጫን 'install.sh' ን ያሂዱ።
ወይም፡ zsh፡ መጥፎ የሲፒዩ አይነት በ executable፡ ~/.espressif/tools/xtensa-esp32-elf/esp-2021r2patch3-8.4.0/xtensa-esp32-elf/bin/xtensa-esp32-elf-gcc
ከዚያ አፕል Rosetta 2 ን መጫን ያስፈልግዎታል /usr/sbin/softwareupdate -install-rosetta -እስማማለሁ-ወደ-ፍቃድ
Python 3 ን መጫን በ macOS Catalina 10.15 የመልቀቂያ ማስታወሻዎች ላይ በመመስረት Python 2.7 መጠቀም አይመከርም እና Python 2.7 በነባሪ ወደፊት በሚመጣው የ macOS ስሪቶች ውስጥ አይካተትም። በአሁኑ ጊዜ ያለዎትን Python ይመልከቱ፡ python –version
ውጤቱ እንደ Python 2.7.17 ከሆነ፣ የእርስዎ ነባሪ አስተርጓሚ Python 2.7 ነው። ከሆነ፣ እንዲሁም Python 3 በኮምፒውተርዎ ላይ እንዳልተጫነ ያረጋግጡ፡ python3 –version
ከላይ ያለው ትዕዛዝ ስህተት ከተመለሰ Python 3 አልተጫነም ማለት ነው. ከታች ያለቀ ነው።view Python 3 ን ለመጫን ደረጃዎች።
· በHomeBrew መጫን እንደሚከተለው ሊከናወን ይችላል-brew install python3
· MacPorts ካለዎት ማስኬድ ይችላሉ፡ sudo port install python38
ደረጃ 2. ESP-IDFን ያግኙ ለESP32 አፕሊኬሽኖችን ለመገንባት በኤስፕረስፍ የተሰጡ የሶፍትዌር ቤተ-መጻሕፍት በESP-IDF ማከማቻ ውስጥ ያስፈልግዎታል። ESP-IDFን ለማግኘት ወደ የእርስዎ የመጫኛ ማውጫ ይሂዱ እና ማከማቻውን በgit clone ያቅርቡ፣ ከዚህ በታች ለስርዓተ ክወናዎ የተለየ መመሪያዎችን ይከተሉ። ተርሚናልን ይክፈቱ እና የሚከተሉትን ትዕዛዞች ያሂዱ
Espressif ስርዓቶች
36 የሰነድ አስተያየት አስገባ
የተለቀቀው v5.0.9
ምዕራፍ 1. ጀምር
mkdir -p ~/esp cd ~/esp git clone -b v5.0.9 -recursive https://github.com/espressif/esp-idf.git
ESP-IDF ወደ ~/esp/esp-idf ይወርዳል። በተወሰነ ሁኔታ ውስጥ የትኛውን የESP-IDF እትም መጠቀም እንዳለበት መረጃ ለማግኘት የESP-IDF ስሪቶችን አማክር።
ደረጃ 3 መሳሪያዎቹን ያዘጋጁ ከESP-IDF በተጨማሪ ESP32ን ለሚደግፉ ፕሮጀክቶች በESP-IDF የሚጠቀሙባቸውን መሳሪያዎች ለምሳሌ ኮምፕሌተር፣ አራሚ፣ ፓይዘን ፓኬጆችን እና የመሳሰሉትን መጫን ያስፈልግዎታል። cd ~/esp/esp-idf ./install.sh esp32
ወይም በ Fish shell cd ~/esp/esp-idf ./install.fish esp32
ከዚህ በላይ ያሉት መሳሪያዎች ለESP32 ብቻ እንዲጭኑ ያዛል። ለተጨማሪ ቺፕ ኢላማዎች ፕሮጀክቶችን ለመስራት ካሰቡ ሁሉንም ዘርዝረህ ለ example: cd ~/esp/esp-idf ./install.sh esp32,esp32s2
ወይም በአሳ ቅርፊት ሲዲ ~/esp/esp-idf ./install.fish esp32,esp32s2
ለሁሉም የሚደገፉ ዒላማዎች መሣሪያዎችን ለመጫን እባክዎ የሚከተለውን ትዕዛዝ ያሂዱ፡ cd ~/esp/esp-idf ./install.sh all
ወይም በ Fish shell cd ~/esp/esp-idf ./install.fish ሁሉም
ማሳሰቢያ: ለ macOS ተጠቃሚዎች እንደዚህ ያለ ስህተት በማንኛውም ደረጃ ከታየ:urlክፍት ስህተት [SSL: CERTIFICATE_VERIFY_FAILED] የምስክር ወረቀት ማረጋገጥ አልተሳካም: የአካባቢ ሰጪ ሰርተፍኬት ማግኘት አልተቻለም (_ssl.c:xxx)
ሰርተፊኬቶችን ለመጫን Install Certificates.commandን በኮምፒዩተርዎ Python ፎልደር ውስጥ ማሄድ ይችላሉ። ለዝርዝሮች፣ የESP-IDF መሣሪያዎችን በመጫን ጊዜ የማውረድ ስህተትን ይመልከቱ።
አማራጭ File ውርዶች የመሣሪያዎች ጫኚው በርካታ ያወርዳል fileከ GitHub ልቀቶች ጋር ተያይዟል። GitHubን መድረስ ቀርፋፋ ከሆነ ለGitHub ንብረት ማውረዶች የ Espressifns አውርድ አገልጋይን ለመምረጥ የአካባቢን ተለዋዋጭ ማዘጋጀት ይቻላል.
ማሳሰቢያ፡ ይህ ቅንብር ከ GitHub የወረዱ መሳሪያዎችን ብቻ ነው የሚቆጣጠረው፣ አይቀይረውም። URLማንኛውንም የ Git ማከማቻዎችን ለመድረስ ጥቅም ላይ ይውላል።
መሳሪያዎችን በሚጭኑበት ጊዜ የ Espressif ማውረጃ አገልጋይን ለመምረጥ install.sh ን ሲያሄዱ የሚከተሉትን የትዕዛዝ ቅደም ተከተል ይጠቀሙ።
Espressif ስርዓቶች
37 የሰነድ አስተያየት አስገባ
የተለቀቀው v5.0.9
ምዕራፍ 1. ጀምር
cd ~/esp/esp-idf ወደ ውጪ መላክ IDF_GITHUB_ASSETS=”dl.espressif.com/github_assets” ./install.sh
የመሳሪያዎችን የመጫኛ መንገድ ማበጀት በዚህ ደረጃ የተዋወቁት ስክሪፕቶች በESP-IDF የሚፈለጉትን የማጠናቀሪያ መሳሪያዎችን በተጠቃሚ የቤት ማውጫ ውስጥ ይጫኑ፡$HOME/.espressif on Linux. መሳሪያዎቹን ወደ ሌላ ማውጫ ውስጥ መጫን ከፈለጉ የመጫኛ ስክሪፕቶችን ከማሄድዎ በፊት የአካባቢን ተለዋዋጭ IDF_TOOLS_PATH ያዘጋጁ። የተጠቃሚ መለያህ ይህንን ዱካ ለማንበብ እና ለመፃፍ በቂ ፍቃድ እንዳለው ያረጋግጡ። IDF_TOOLS_PATHን ከቀየሩ የመጫኛ ስክሪፕቱ (install. bat, install.ps1 ወይም install.sh) እና ወደ ውጪ መላክ ስክሪፕት (export.bat,export.ps1 ወይምexport.sh) በተፈጸሙ ቁጥር ወደ ተመሳሳይ እሴት መዋቀሩን ያረጋግጡ።
ደረጃ 4. የአካባቢ ተለዋዋጮችን ያዘጋጁ የተጫኑ መሳሪያዎች ወደ PATH አካባቢ ተለዋዋጭ ገና አልተጨመሩም። መሳሪያዎቹ ከትዕዛዝ መስመሩ ጥቅም ላይ እንዲውሉ ለማድረግ አንዳንድ የአካባቢ ተለዋዋጮች መዘጋጀት አለባቸው። ESP-IDF ያንን የሚያደርግ ሌላ ስክሪፕት ያቀርባል። ESP-IDFን በምትጠቀምበት ተርሚናል ውስጥ፣ አሂድ፡-
. $HOME/esp/esp-idf/export.sh
ወይም ለአሳ (ከዓሣ ስሪት 3.0.0 ጀምሮ ብቻ ነው የሚደገፈው)
. $HOME/esp/esp-idf/export.fish
በመሪው ነጥብ እና በመንገዱ መካከል ያለውን ቦታ ልብ ይበሉ! esp-idfን በተደጋጋሚ ለመጠቀም ካቀዱ፡export.shን ለማስፈጸም ተለዋጭ ስም መፍጠር ትችላለህ፡-
1. የሚከተለውን ትዕዛዝ ወደ shellns ፕሮዎ ይቅዱ እና ይለጥፉfile (.ፕሮfile, .bashrc, .zprofileወዘተ.)
ተለዋጭ ስም get_idf=' $HOME/esp/esp-idf/export.sh' 2. የተርሚናል ክፍለ ጊዜውን እንደገና በማስጀመር ወይም ምንጭን በማሄድ ውቅሩን ያድሱfile],
ለ example, ምንጭ ~/.bashrc. አሁን በማንኛውም ተርሚናል ክፍለ ጊዜ የesp-idf አካባቢን ለማዘጋጀት ወይም ለማደስ get_idfን ማስኬድ ይችላሉ። በቴክኒክ ወደ ሼልንስ ፕሮዎ ኤክስፖርት.ሽ ማከል ይችላሉ።file በቀጥታ; ሆኖም ግን አይመከርም. ይህንን ማድረግ በእያንዳንዱ ተርሚናል ክፍለ ጊዜ (አይዲኤፍ የማያስፈልግባቸውን ጨምሮ) የቨርቹዋል አካባቢውን ዓላማ በማሸነፍ እና በሌሎች ሶፍትዌሮች ላይ ተጽዕኖ ያሳድራል።
ደረጃ 5. በESP-IDF ላይ ያሉ የመጀመሪያ እርምጃዎች አሁን ሁሉም መስፈርቶች ስለተሟሉ የሚቀጥለው ርዕስ የመጀመሪያ ፕሮጀክትዎን እንዴት እንደሚጀምሩ ይመራዎታል። ይህ መመሪያ ESP-IDFን በመጠቀም በመጀመሪያዎቹ ደረጃዎች ይረዳዎታል። በESP32 ላይ አዲስ ፕሮጀክት ለመጀመር እና የመሣሪያውን ውፅዓት ለመገንባት፣ ለማብረቅ እና ለመቆጣጠር ይህንን መመሪያ ይከተሉ።
ማሳሰቢያ፡ እስካሁን ESP-IDFን ካልጫኑ፣ እባክዎ ይህንን መመሪያ ለመጠቀም የሚያስፈልጉትን ሶፍትዌሮች ለማግኘት ወደ መጫኛ ይሂዱ እና መመሪያውን ይከተሉ።
ፕሮጀክት ይጀምሩ አሁን ማመልከቻዎን ለESP32 ለማዘጋጀት ዝግጁ ነዎት። በጀማሪ/ሄሎ_አለም ፕሮጀክት ከቀድሞ መጀመር ትችላለህamples ማውጫ በESP-IDF።
ጠቃሚ፡ የESP-IDF ግንባታ ስርዓት ወደ ESP-IDF ወይም ወደ ፕሮጀክቶች በሚወስደው መንገድ ላይ ክፍተቶችን አይደግፍም።
የፕሮጀክቱን መጀመር/ሠላም_ዓለም ወደ ~/esp ማውጫ ይቅዱ፡-
Espressif ስርዓቶች
38 የሰነድ አስተያየት አስገባ
የተለቀቀው v5.0.9
ምዕራፍ 1. ጀምር
cd ~/esp cp -r $IDF_PATH/ለምሳሌamples/ጀምር/ሰላም_ዓለም።
ማሳሰቢያ፡- የ example ፕሮጀክቶች በ examples ማውጫ በESP-IDF። ማንኛውንም ፕሮጀክት ከላይ እንደተገለጸው በተመሳሳይ መንገድ መቅዳት እና ማስኬድ ይችላሉ። በተጨማሪም exampበመጀመሪያ እነሱን ሳይገለብጡ les ውስጥ-ቦታ.
መሳሪያዎን ያገናኙ አሁን የእርስዎን ESP32 ሰሌዳ ከኮምፒዩተር ጋር ያገናኙ እና ቦርዱ በየትኛው ተከታታይ ወደብ እንደሚታይ ያረጋግጡ። ተከታታይ ወደቦች የሚከተሉት የስያሜ ቅጦች አሏቸው።
ሊኑክስ፡ ከ/dev/tty ጀምሮ · macOS፡ ጀምሮ /dev/cu። የመለያ ወደብ ስም እንዴት እንደሚፈትሹ እርግጠኛ ካልሆኑ፣ እባክዎን ለተሟላ መረጃ ከESP32 ጋር ተከታታይ ግንኙነት ይፍጠሩ።
ማሳሰቢያ፡ በሚቀጥሉት ደረጃዎች ስለፈለጉት የወደብ ስም ምቹ ያድርጉት።
የእርስዎን ፕሮጀክት ያዋቅሩ ወደ የእርስዎ hello_world ማውጫ ይሂዱ፣ ESP32ን እንደ ዒላማ ያቀናብሩ እና የፕሮጀክት ውቅር መገልገያ ሜኑconfigን ያሂዱ። ሲዲ ~/esp/ሄሎ_አለም idf.py set- target esp32 idf.py menuconfig
አዲስ ፕሮጀክት ከከፈቱ በኋላ በመጀመሪያ ኢላማውን በ idf.py set- target esp32 ማዘጋጀት አለብዎት። በፕሮጀክቱ ውስጥ ያሉ ግንባታዎች እና አወቃቀሮች ካሉ በዚህ ሂደት ተጠርገው እንደሚጀመሩ ልብ ይበሉ። ዒላማው ይህንን ደረጃ ለመዝለል በአከባቢው ተለዋዋጭ ውስጥ ሊቀመጥ ይችላል። ለተጨማሪ መረጃ የዒላማ ቺፕ፡ set-ዒላማ የሚለውን ይምረጡ። የቀደሙት እርምጃዎች በትክክል ከተከናወኑ, የሚከተለው ምናሌ ይታያል.
ምስል 17፡ የፕሮጀክት ውቅር - የቤት መስኮት የፕሮጀክት ልዩ ተለዋዋጮችን ለማዘጋጀት ይህንን ሜኑ እየተጠቀሙ ነው ለምሳሌ፡ የዋይ ፋይ አውታረ መረብ ስም እና የይለፍ ቃል፣ የፕሮሰሰር ፍጥነት፣ ወዘተ። ፕሮጄክቱን በ menuconfig ማዋቀር forohello_worldp ሊዘለል ይችላል።ampጋር ይሮጣል
Espressif ስርዓቶች
39 የሰነድ አስተያየት አስገባ
የተለቀቀው v5.0.9
ምዕራፍ 1. ጀምር
ነባሪ ውቅር.
ትኩረት፡ ESP32-DevKitC ቦርድን ከESP32-SOLO-1 ሞጁል ወይም ESP32-DevKitM-1 ቦርድ ከESP32-MIN1-1(1U) ሞጁል ከተጠቀማችሁ፣እባክዎ የቀድሞ ብልጭ ድርግም ከማድረግዎ በፊት ነጠላ ኮር ሁነታን (CONFIG_FREERTOS_UNICORE) ያንቁ።ampሌስ.
ማሳሰቢያ፡ በተርሚናልዎ ውስጥ የማውጫው ቀለሞች ሊለያዩ ይችላሉ። ከአማራጭ - ዘይቤ ጋር መልክን መቀየር ይችላሉ. እባክዎን idf.py menuconfig -እርዳታን ለበለጠ መረጃ ያሂዱ።
ከሚደገፉት የልማት ሰሌዳዎች ውስጥ አንዱን እየተጠቀሙ ከሆነ የቦርድ ድጋፍ ጥቅልን በመጠቀም እድገትዎን ማፋጠን ይችላሉ። ለበለጠ መረጃ ተጨማሪ ምክሮችን ይመልከቱ።
ፕሮጀክቱን ይገንቡ በማሄድ ፕሮጀክቱን ይገንቡ፡-
idf.py ግንባታ
ይህ ትእዛዝ አፕሊኬሽኑን እና ሁሉንም የESP-IDF ክፍሎችን ያጠናቅራል፣ ከዚያ የቡት ጫኚውን፣ የክፋይ ሠንጠረዥን እና የመተግበሪያ ሁለትዮሾችን ያመነጫል።
$ idf.py build cmake በማውጫ / ዱካ/ወደ/ሄሎ_አለም/ግንባታ በማስኬድ ላይ “cmake -G Ninja –warn-uninitialized /path/to/hello_world”…ስለማይታወቁ እሴቶች አስጠንቅቅ። - ተገኝቷል Git: /usr/bin/git (ስሪት "2.17.0" ተገኝቷል) - በማዋቀር ምክንያት ባዶ የ aws_iot አካል መገንባት - የአካላት ስሞች: … - የአካላት ዱካዎች:…
… (የሥርዓት ውፅዓት ተጨማሪ መስመሮች)
[527/527] hello_world.bin esptool.py v2.3.1 በማመንጨት ላይ
የፕሮጀክት ግንባታ ተጠናቋል። ብልጭ ድርግም ለማድረግ ይህንን ትዕዛዝ ያሂዱ፡- .././ bin build 0x1000 build/bootloader/bootloader.bin 0x8000 build/partition_table/ partition-table.bin ወይም አሂድ 'idf.py -p PORT flash'
ምንም ስህተቶች ከሌሉ, ግንባታው የ firmware binary .bin በማመንጨት ያበቃል files.
በመሳሪያው ላይ ብልጭ ድርግም የሚሉ ሁለትዮሾች አሁን የገነቡትን (bootloader.bin, partition-table.bin እና hello_world.bin) በማሄድ ወደ ESP32 ሰሌዳዎ ላይ ያብሩት፡
idf.py -p PORT [-b BAUD] ብልጭታ
PORTን በ ESP32 boardns ተከታታይ ወደብ ስም ይተኩ። እንዲሁም BAUDን በሚፈልጉት ባውድ መጠን በመተካት የፍላሹን ባውድ መጠን መቀየር ይችላሉ። ነባሪው የ baud መጠን 460800 ነው። ስለ idf.py ክርክር የበለጠ መረጃ ለማግኘት idf.py ን ይመልከቱ።
ማሳሰቢያ፡ አማራጭ ፍላሽ ፕሮጀክቱን በራስ ሰር ይገነባል እና ያበራል፣ ስለዚህ idf.py buildን ማስኬድ አስፈላጊ አይደለም።
Espressif ስርዓቶች
40 የሰነድ አስተያየት አስገባ
የተለቀቀው v5.0.9
ምዕራፍ 1. ጀምር
ብልጭ ድርግም እያለ ችግሮች አጋጥመውታል? የተሰጠውን ትዕዛዝ ካስኬዱ እና እንደዚህ ያሉ ስህተቶችን ካዩ asoን መገናኘት አልተሳካም ፣ ለዚህ ብዙ ምክንያቶች ሊኖሩ ይችላሉ። ከምክንያቶቹ አንዱ በ esptool.py ያጋጠሙ ችግሮች፣ በግንባታ ስርዓቱ የሚጠራው ቺፑን ዳግም ለማስጀመር፣ ከሮም ቡት ጫኚው ጋር መስተጋብር እና ፍላሽ firmware ነው። ለመሞከር አንድ ቀላል መፍትሄ ከዚህ በታች የተገለፀው በእጅ ዳግም ማስጀመር ነው, እና ካልረዳዎት በመላ መፈለጊያ ውስጥ ሊሆኑ ስለሚችሉ ጉዳዮች ተጨማሪ ዝርዝሮችን ማግኘት ይችላሉ.
esptool.py የዩኤስቢ DTR እና RTS መቆጣጠሪያ መስመሮችን ወደ ተከታታይ መቀየሪያ ቺፕ ማለትም FTDI ወይም CP210x በማረጋገጥ ESP32ን በራስ ሰር ዳግም ያስጀምረዋል (ለበለጠ መረጃ ከESP32 ጋር ተከታታይ ግንኙነት መመስረትን ይመልከቱ)። የDTR እና RTS መቆጣጠሪያ መስመሮች በተራው ከ GPIO0 እና CHIP_PU (EN) የ ESP32 ፒን ጋር የተገናኙ ናቸው፣ ስለዚህም በቮል ውስጥ ይቀየራል።tagየDTR እና RTS ደረጃዎች ESP32ን ወደ Firmware ማውረድ ሁነታ ያስነሳሉ። እንደ አንድ የቀድሞampለ፣ ለESP32 DevKitC ልማት ቦርድ ንድፉን ያረጋግጡ።
በአጠቃላይ፣ ከኦፊሴላዊው የesp-idf ልማት ሰሌዳዎች ጋር ምንም አይነት ችግር ሊኖርብህ አይገባም። ሆኖም፣ esptool.py በሚከተሉት ሁኔታዎች ውስጥ የእርስዎን ሃርድዌር በራስ-ሰር ዳግም ማስጀመር አልቻለም።
· የእርስዎ ሃርድዌር ከ GPIO0 እና CHIP_PU ጋር የተገናኘ DTR እና RTS መስመሮች የሉትም · DTR እና RTS መስመሮች በተለያየ መንገድ የተዋቀሩ ናቸው · እንደዚህ አይነት ተከታታይ መቆጣጠሪያ መስመሮች በጭራሽ የሉም.
እንደ ሃርድዌር አይነት፣ የእርስዎን ESP32 ሰሌዳ በእጅ ወደ Firmware ማውረድ ሁነታ (ዳግም ማስጀመር) ማስገባትም ይቻል ይሆናል።
· በኤስፕሬሲፍ ለተዘጋጁ የልማት ሰሌዳዎች፣ ይህ መረጃ በየመጀመርያ መመሪያዎች ወይም የተጠቃሚ መመሪያዎች ውስጥ ይገኛል። ለ example፣ የESP-IDF ልማት ሰሌዳን እራስዎ እንደገና ለማስጀመር የቡት አዝራሩን (GPIO0) ተጭነው ይያዙ እና EN ቁልፍን (CHIP_PU) ይጫኑ።
· ለሌሎች የሃርድዌር አይነቶች GPIO0ን ወደ ታች ለመሳብ ይሞክሩ።
መደበኛ ክዋኔ ብልጭ ድርግም በሚሉበት ጊዜ የውጤት ምዝግብ ማስታወሻውን ከሚከተለው ጋር ይመሳሰላል ።
… esptool.py –ቺፕ esp32 -p /dev/ttyUSB0 -b 460800 –before=default_reset -after=hard_reset write_flash –flash_mode dio –flash_freq 40m –flash_size 2MB 0x8000 partition_table.0x-partition_table/partition.0x ቡት ጫኚ/ቡት ጫኚ 24:0a:c4:05:b9:14 stub በመስቀል ላይ… stub ሩጫ… ስቶብ ሩጫ… የባውድ መጠንን ወደ 460800 መለወጥ ተቀይሯል። የፍላሽ መጠንን በማዋቀር ላይ… ከ 3072 ባይት ወደ 103 ተጨምቆ… በ0x00008000 በመፃፍ ላይ… (100%) 3072 ባይት (103 የታመቀ) በ0x00008000 በ0.0 ሰከንድ (ከ 5962.8 kbit/s የተረጋገጠ)… የታመቀ 26096 ባይት ወደ 15408… በ0x00001000 መፃፍ… (100%) 26096 ባይት (15408 compressed) በ0x00001000 በ0.4 ሰከንድ ፃፈ (ከ546.7 kbit/s ውጤታማ)… Hash of data 147104 ባይት ወደ 77364 ተጨምቆ… በ0x00010000 መፃፍ… (20%) በ0x00014000… (40%) በ0x00018000 መፃፍ… (60%) (%) በ0x0001c00 መጻፍ…
(በሚቀጥለው ገጽ ይቀጥላል)
Espressif ስርዓቶች
41 የሰነድ አስተያየት አስገባ
የተለቀቀው v5.0.9
ምዕራፍ 1. ጀምር
(ከባለፈው ገጽ የቀጠለ) በ0x00020000… (100%) 147104 ባይት (77364 compressed) በ0x00010000 በ1.9 ሰከንድ (615. 5kbit/s ውጤታማ) ጻፈ… ሃሽ የተረጋገጠ መረጃ።
በመውጣት ላይ… በRTS ፒን በኩል ከባድ ዳግም ማስጀመር… ተከናውኗል
በፍላሽ ሂደቱ መጨረሻ ምንም ችግሮች ከሌሉ ቦርዱ እንደገና ይነሳና theohello_worldpapplication ይጀምራል። idf.pyን ከማሄድ ይልቅ Eclipse ወይም VS Code IDE ለመጠቀም ከፈለጉ፣ Eclipse Plugin፣ VSCcode Extensionን ይመልከቱ።
ውጤቱን ተከታተል ohello_worldpis በእርግጥ እየሰራ መሆኑን ለማረጋገጥ idf.py -p PORT ሞኒተር ይተይቡ (ፖርትን በተከታታይ ወደብ ስም መተካትን አይርሱ)። ይህ ትዕዛዝ የ IDF ሞኒተር መተግበሪያን ያስጀምራል፡-
$ idf.py -p በዳይሬክተሩ ውስጥ idf_monitorን ይቆጣጠሩ […]/esp/hello_world/build “python […]/esp-idf/tools/idf_monitor.py -b 115200 […]/esp/hello_ world/build/hello_world.elf”… — idf_monitor on 115200 —– ተወ፡ Ctrl+] | ምናሌ፡ Ctrl+T | እገዛ፡ Ctrl+T ተከትሎ Ctrl+H –ets Jun 8 2016 00:22:57
መጀመሪያ፡0x1(POWERON_RESET)፣ቡት፡0x13 (SPI_FAST_FLASH_BOOT) እና ጁን 8 2016 00፡22፡57 …
ከጅምር እና የምርመራ ምዝግብ ማስታወሻዎች ወደላይ ከተሸብልሉ በኋላ፣ oHello world!በመተግበሪያው የታተመ ማየት አለቦት።
… ሰላም አለም! በ10 ሰከንድ ውስጥ እንደገና በመጀመር ላይ… ይህ esp32 ቺፕ በ2 ሲፒዩ ኮር(ዎች)፣ ዋይፋይ/ቢቲ/ቢኤሌ፣ የሲሊኮን ክለሳ 1፣ 2ሜባ ውጫዊ ብልጭታ ዝቅተኛው ነፃ ክምር መጠን፡ 298968 ባይት በ9 ሰከንድ ውስጥ እንደገና በመጀመር ላይ… በ8 ሰከንድ ውስጥ እንደገና በመጀመር ላይ… በ7 ሰከንድ ውስጥ እንደገና በመጀመር ላይ…
ከአይዲኤፍ ሞኒተሪ ለመውጣት አቋራጩን Ctrl+ ይጠቀሙ። IDF ሞኒተሩ ከተሰቀለ በኋላ ብዙም ሳይቆይ ካልተሳካ፣ ወይም፣ ከላይ ባሉት መልዕክቶች ምትክ፣ ከዚህ በታች ካለው ጋር ተመሳሳይ የሆነ የዘፈቀደ ቆሻሻ ካዩ፣ ሰሌዳዎ ምናልባት 26 ሜኸር ክሪስታል ሊጠቀም ይችላል። አብዛኛዎቹ የልማት ቦርድ ዲዛይኖች 40 ሜኸር ይጠቀማሉ፣ ስለዚህ ESP-IDF ይህንን ድግግሞሽ እንደ ነባሪ እሴት ይጠቀማል።
እንደዚህ አይነት ችግር ካጋጠመዎት, የሚከተሉትን ያድርጉ.
1. ማሳያውን ውጣ. 2. ወደ menuconfig ተመለስ. 3. ወደ አካል ማዋቀር > የሃርድዌር መቼቶች > ዋና XTAL ውቅር > ዋና XTAL ይሂዱ
ድግግሞሽ፣ ከዚያ CONFIG_XTAL_FREQ_SEL ወደ 26 MHz ቀይር። 4. ከዚያ በኋላ, አፕሊኬሽኑን እንደገና ይገንቡ እና ያብሩት.
Espressif ስርዓቶች
42 የሰነድ አስተያየት አስገባ
የተለቀቀው v5.0.9
ምዕራፍ 1. ጀምር
አሁን ባለው የESP-IDF ስሪት፣ በESP32 የሚደገፉ ዋና የ XTAL ድግግሞሾች እንደሚከተለው ናቸው።
· 26 ሜኸ · 40 ሜኸ
ማሳሰቢያ፡ ግንባታን፣ ብልጭ ድርግም የሚል እና ክትትልን በመሮጥ ወደ አንድ ደረጃ ማጣመር ይችላሉ፡ idf.py -p PORT flash monitor
በተጨማሪ ይመልከቱ፡ · IDF ሞኒተር ለአጠቃቀም ምቹ አቋራጮች እና ተጨማሪ ዝርዝሮችን ስለ IDF ሞኒተር አጠቃቀም። · idf.py ለ idf.py ትዕዛዞች እና አማራጮች ሙሉ ማጣቀሻ።
በ ESP32 ለመጀመር የሚያስፈልግህ ያ ብቻ ነው! አሁን ሌላ የቀድሞ ሰው ለመሞከር ዝግጁ ነዎትamples፣ ወይም የራስዎን መተግበሪያዎች ለማዘጋጀት በቀጥታ ይሂዱ።
ጠቃሚ፡ አንዳንድ የቀድሞamples ESP32ን አይደግፉም ምክንያቱም የሚፈለገው ሃርድዌር በESP32 ውስጥ ስላልተጨመረ ሊደገፍ አይችልም። አንድ የቀድሞ መገንባት ከሆነampእባክህ README ን ተመልከት file ለሚደገፉ ዒላማዎች ሰንጠረዥ. ይህ ESP32 ኢላማን ጨምሮ ካለ፣ ወይም ሰንጠረዡ ጨርሶ ከሌለ፣ የቀድሞample ESP32 ላይ ይሰራል።
ተጨማሪ ጠቃሚ ምክሮች
የፈቃድ ችግሮች /dev/ttyUSB0 በአንዳንድ የሊኑክስ ስርጭቶች ESP32ን በሚያበሩበት ጊዜ ወደብ/dev/ttyUSB0 መክፈት አልተቻለም የስህተት መልእክት ሊያገኙ ይችላሉ። ይህ የአሁኑን ተጠቃሚ ወደ የንግግር ቡድን በማከል ሊፈታ ይችላል።
የ Python ተኳኋኝነት ESP-IDF Python 3.7 ወይም ከዚያ በላይ ይደግፋል። ይህን መስፈርት ወደሚያረካው ኦፐሬቲንግ ሲስተምዎን ወደ የቅርብ ጊዜው ስሪት ማሻሻል ይመከራል። ሌሎች አማራጮች ፓይዘንን ከምንጮች መጫን ወይም እንደ pyenv ያሉ የ Python ስሪት አስተዳደር ስርዓትን መጠቀም ያካትታሉ።
በቦርድ የድጋፍ ፓኬጅ ይጀምሩ በአንዳንድ የልማት ሰሌዳዎች ላይ ፕሮቶታይፕን ለማፋጠን፣የቦርድ ድጋፍ ፓኬጆችን (BSPs) መጠቀም ይችላሉ፣ ይህም የአንድ የተወሰነ ቦርድ አጀማመርን እንደ ጥቂት የተግባር ጥሪዎች ቀላል ያደርገዋል። BSP በተለምዶ በልማት ሰሌዳ ላይ የቀረቡትን ሁሉንም የሃርድዌር ክፍሎች ይደግፋል። ከፒንዮውት ፍቺ እና ጅምር ተግባራት ውጭ፣ BSP ከአሽከርካሪዎች ጋር ለውጫዊ አካላት እንደ ዳሳሾች፣ ማሳያዎች፣ ኦዲዮ ኮዴኮች ወዘተ. BSP ዎች በIDF አካል አስተዳዳሪ በኩል ይሰራጫሉ፣ ስለዚህ በ IDF ክፍል መዝገብ ውስጥ ይገኛሉ። ሄር አንድ የቀድሞampESP-WROVER-KIT BSPን ወደ ፕሮጀክትዎ እንዴት እንደሚጨምሩ፡ idf.py add-dependency esp_wrover_kit
ተጨማሪ የቀድሞampየBSP አጠቃቀም በBSP ex ውስጥ ይገኛል።amples አቃፊ.
ጠቃሚ ምክር፡ ESP-IDFን ማዘመን አዳዲስ ስሪቶች ስህተቶችን ስለሚያስተካክሉ እና/ወይም አዲስ ባህሪያትን ስለሚያቀርቡ ESP-IDFን በየጊዜው ማዘመን ይመከራል። እባክዎ እያንዳንዱ የESP-IDF ዋና እና አነስተኛ የመልቀቂያ ስሪት ተያያዥ የድጋፍ ጊዜ እንዳለው እና አንድ የመልቀቂያ ቅርንጫፍ ወደ ህይወት መጨረሻ (EOL) ሲቃረብ ሁሉም ተጠቃሚዎች ፕሮጀክቶቻቸውን ወደ የቅርብ ጊዜ የESP-IDF ልቀቶች እንዲያሳድጉ ይበረታታሉ፣ስለድጋፍ ጊዜዎች የበለጠ ለማወቅ፣ESP-IDF ስሪቶችን ይመልከቱ።
Espressif ስርዓቶች
43 የሰነድ አስተያየት አስገባ
የተለቀቀው v5.0.9
ምዕራፍ 1. ጀምር
ማሻሻያ ለማድረግ ቀላሉ መንገድ ነባሩን የ esp-idf ፎልደር መሰረዝ እና እንደገና መዝጋት ነው፣ ይህም በደረጃ 2 ላይ የተገለጸውን የመጀመሪያ ጭነት እንደሚያከናውን ያህል። ESP-IDF ያግኙ። ሌላው መፍትሔ የተለወጠውን ብቻ ማዘመን ነው። የማዘመን ሂደቱ እርስዎ በሚጠቀሙት ESP-IDF ስሪት ላይ ይወሰናል. ESP-IDFን ካዘመኑ በኋላ፣ አዲሱ የኢኤስፒ-አይዲኤፍ ስሪት የተለያዩ የመሳሪያ ስሪቶችን የሚፈልግ ከሆነ የመጫኛ ስክሪፕቱን እንደገና ያስፈጽሙ። ደረጃ 3 ላይ መመሪያዎችን ይመልከቱ። መሳሪያዎቹን ያዋቅሩ። አንዴ አዲሶቹ መሳሪያዎች ከተጫኑ በኋላ ወደ ውጪ መላክ ስክሪፕት በመጠቀም አካባቢውን ያዘምኑ። ደረጃ 4 ላይ መመሪያዎችን ይመልከቱ። የአካባቢ ተለዋዋጮችን ያዘጋጁ።
ተዛማጅ ሰነዶች · ተከታታይ ግንኙነትን ከ ESP32 ጋር ይፍጠሩ · Eclipse Plugin · VSCcode Extension · IDF Monitor
1.4 የመጀመሪያ ፕሮጀክትዎን ይገንቡ
ቀደም ሲል ESP-IDF የተጫነ እና አይዲኢን የማይጠቀሙ ከሆነ በዊንዶውስ ላይ ፕሮጄክት ጀምር ወይም በሊኑክስ እና ማክሮስ ላይ ፕሮጄክት ጀምር የሚለውን በመከተል ከትእዛዝ መስመር የመጀመሪያውን ፕሮጀክት መገንባት ይችላሉ።
1.5 ESP-IDFን ያራግፉ
ESP-IDFን ማስወገድ ከፈለጉ፣ እባክዎን ESP-IDFን ያራግፉ።
Espressif ስርዓቶች
44 የሰነድ አስተያየት አስገባ
የተለቀቀው v5.0.9
ምዕራፍ 2
የኤፒአይ ማጣቀሻ
2.1 የኤፒአይ ስምምነቶች
ይህ ሰነድ ለESP-IDF የመተግበሪያ ፕሮግራሚንግ በይነገጽ (ኤፒአይኤስ) የተለመዱ ስምምነቶችን እና ግምቶችን ይገልጻል። ESP-IDF በርካታ የፕሮግራም አወጣጥ በይነገጾችን ያቀርባል፡-
· C ተግባራት፣ አወቃቀሮች፣ ዝርዝር መግለጫዎች፣ አይነት ፍቺዎች እና ቅድመ ፕሮሰሰር ማክሮዎች በአደባባይ አርዕስት ተገልጸዋል። fileየESPIDF አካላት። በፕሮግራም አወጣጥ መመሪያው የኤፒአይ ማመሳከሪያ ክፍል ውስጥ ያሉ የተለያዩ ገፆች የእነዚህን ተግባራት፣ አወቃቀሮች እና ዓይነቶች መግለጫዎች ይይዛሉ።
· የስርዓት ተግባራትን, አስቀድሞ የተገለጹ ተለዋዋጮችን እና አማራጮችን ይገንቡ. እነዚህ በግንባታ ስርዓት መመሪያ ውስጥ ተመዝግበዋል. የKconfig አማራጮች በኮድ እና በግንባታ ስርዓት (CmakeLists.txt) ውስጥ መጠቀም ይቻላል fileኤስ. · የአስተናጋጅ መሳሪያዎች እና የትእዛዝ መስመሮቻቸው የ ESP-IDF በይነገጽ አካል ናቸው። ESP-IDF በተለይ ለESP-IDF እና ለሶስተኛ ወገን ቤተ-መጻሕፍት የተጻፉ ክፍሎችን ያቀፈ ነው። በአንዳንድ ሁኔታዎች፣ የESP-IDF ልዩ መጠቅለያ ወደ ሶስተኛ ወገን ቤተ-መጽሐፍት ተጨምሯል፣ ይህም በይነገጹ ቀለል ያለ ወይም ከሌሎች የ ESP-IDF መገልገያዎች ጋር የተዋሃደ ነው። በሌሎች ሁኔታዎች፣ የሶስተኛ ወገን ቤተ-መጽሐፍት ዋናው ኤፒአይ ለመተግበሪያው ገንቢዎች ቀርቧል። የሚቀጥሉት ክፍሎች አንዳንድ የESP-IDF APIs ገጽታዎችን እና አጠቃቀማቸውን ያብራራሉ።
2.1.1 ስህተት አያያዝ
አብዛኛዎቹ የESP-IDF ኤፒአይዎች በesp_err_t አይነት የተገለጹ የስህተት ኮዶችን ይመልሳሉ። ስለስህተት አያያዝ አቀራረቦች የበለጠ መረጃ ለማግኘት የስህተት አያያዝ ክፍልን ይመልከቱ። የስህተት ኮድ ማጣቀሻ በESP-IDF ክፍሎች የተመለሱ የስህተት ኮዶች ዝርዝር ይዟል።
2.1.2 የማዋቀር መዋቅሮች
ጠቃሚ፡ የውቅረት አወቃቀሮችን ትክክለኛ አጀማመር አፕሊኬሽኑን ከወደፊቱ የESP-IDF ስሪቶች ጋር እንዲስማማ ለማድረግ ወሳኝ አካል ነው።
በESP-IDF ውስጥ ያሉ አብዛኛዎቹ የማስጀመሪያ ወይም የማዋቀር ተግባራት የውቅር መዋቅር ጠቋሚን እንደ መከራከሪያ ይወስዳሉ። ለ exampላይ:
45
ምዕራፍ 2. API ማጣቀሻ
const esp_timer_create_args_t my_timer_args = { .callback = &my_timer_callback, .arg = callback_arg, .name = "my_timer"
}; esp_timer_handle_t my_timer; esp_err_t err = esp_timer_create (& my_timer_args, & my_timer);
የማስጀመሪያ ተግባራት ጠቋሚውን ወደ ውቅር መዋቅር በጭራሽ አያከማቹም, ስለዚህ አወቃቀሩን በቆለሉ ላይ ለመመደብ አስተማማኝ ነው.
አፕሊኬሽኑ ሁሉንም የመዋቅር መስኮች ማስጀመር አለበት። የሚከተለው ትክክል አይደለም፡-
esp_timer_args_t my_timer_args ፍጠር; my_timer_args.callback = & my_timer_መልስ; /* ትክክል አይደለም! መስኮች .arg እና .ስም አልተጀመሩም */ esp_timer_create (&my_timer_args, & my_timer);
አብዛኞቹ ESP-IDF exampለመዋቅር ማስጀመሪያ C99 የተሰየሙ ማስጀመሪያዎችን መጠቀም ይችላሉ ምክንያቱም የመስኮች ንዑስ ስብስብን ለማዘጋጀት አጭር መንገድ ስለሚሰጡ እና የተቀሩትን መስኮች ዜሮ ማስጀመር።
const esp_timer_create_args_t my_timer_args = { .callback = & my_timer_ callback, /* ትክክል፣ መስኮች .arg እና .ስም በዜሮ የተጀመሩ ናቸው */
};
C++ ቋንቋ እስከ C++20 ድረስ የተሰየሙትን የጀማሪዎች አገባብ አይደግፍም፣ ነገር ግን የጂሲሲ ማጠናቀቂያ በከፊል እንደ ቅጥያ ይደግፈዋል። በC++ ኮድ ውስጥ የESP-IDF ኤፒአይዎችን ሲጠቀሙ የሚከተለውን ስርዓተ-ጥለት መጠቀም ሊያስቡበት ይችላሉ።
esp_timer_create_args_t my_timer_args = {}; /* ሁሉም መስኮች በዜሮ የተጀመሩ ናቸው */ my_timer_args.callback = & my_timer_callback;
ነባሪ ጀማሪዎች
ለአንዳንድ የውቅር አወቃቀሮች ESP-IDF የመስኮች ነባሪ እሴቶችን ለማዘጋጀት ማክሮዎችን ያቀርባል፡
httpd_config_t ውቅር = HTTPD_DEFAULT_CONFIG (); /* HTTPD_DEFAULT_CONFIG ወደ ተዘጋጀ ማስጀመሪያ ይዘልቃል።
አሁን ሁሉም መስኮች ወደ ነባሪ እሴቶች ተቀናብረዋል። ማንኛውም መስክ አሁንም ሊሻሻል ይችላል: */ config.server_port = 8081; httpd_handle_t አገልጋይ; esp_err_t err = httpd_start (&አገልጋይ, & ውቅር);
ለተወሰነ የውቅር መዋቅር በተሰጡ ጊዜ ነባሪ ማስጀመሪያ ማክሮዎችን እንዲጠቀሙ ይመከራል።
2.1.3 የግል ኤ.ፒ.አይ.ዎች
የተወሰነ ራስጌ fileበESP-IDF ውስጥ ያሉ በESP-IDF ምንጭ ኮድ ውስጥ ብቻ ጥቅም ላይ እንዲውሉ የታቀዱ ኤፒአይዎችን ይዘዋል፣ እና በመተግበሪያዎቹ አይደሉም። እንደዚህ ያለ ርዕስ fileዎች ብዙ ጊዜ የግል ወይም esp_private በስማቸው ወይም መንገድ ይይዛሉ። እንደ hal ያሉ አንዳንድ ክፍሎች የግል ኤፒአይዎችን ብቻ ይይዛሉ። የግል ኤ.ፒ.አይ.ዎች ተኳሃኝ በሌለው መንገድ በትንሹ ወይም በ patch ልቀቶች መካከል ሊወገዱ ወይም ሊቀየሩ ይችላሉ።
2.1.4 አካላት በዘፀample ፕሮጀክቶች
ESP-IDF ለምሳሌampየESP-IDF APIs አጠቃቀምን የሚያሳዩ የተለያዩ ፕሮጀክቶችን ይዘዋል ። በቀድሞው ውስጥ የኮድ ማባዛትን ለመቀነስamples፣ ጥቂት የተለመዱ ረዳቶች በበርካታ የቀድሞ ጥቅም ላይ በሚውሉ ክፍሎች ውስጥ ተገልጸዋል።ampሌስ.
Espressif ስርዓቶች
46 የሰነድ አስተያየት አስገባ
የተለቀቀው v5.0.9
ምዕራፍ 2. API ማጣቀሻ
ይህ የሚገኙትን አካላት ያካትታል
ሰነዶች / መርጃዎች
![]() |
Espressif ሲስተምስ ESP32 Dev Kitc ልማት ቦርድ [pdf] የተጠቃሚ መመሪያ ESP32 Dev Kitc Development Board፣ ESP32፣ Dev Kitc Development Board፣ Kitc Development Board፣ Development Board፣ Board |