ESP32 Dev Kitc ڊولپمينٽ بورڊ

پيداوار جي ڄاڻ

وضاحتون

  • پيداوار: ESP32
  • پروگرامنگ گائيڊ: ESP-IDF
  • رليز ورجن: v5.0.9
  • ٺاھيندڙ: Espressif Systems
  • ڇڏڻ جي تاريخ: مئي 16، 2025

پيداوار جي استعمال جون هدايتون

1. شروع ڪريو

ESP32 سان شروع ڪرڻ کان اڳ، پاڻ کي واقف ڪريو
هيٺين:

1.1 تعارف

جي بنيادي ڪارڪردگي ۽ صلاحيتن بابت سکو
اي ايس پي 32.

1.2 توهان کي ڇا گهرجي

پڪ ڪريو ته توهان وٽ ضروري هارڊويئر ۽ سافٽ ويئر آهي:

  • هارڊويئر: گهربل هارڊويئر جي فهرست چيڪ ڪريو
    اجزاء.
  • سافٽ ويئر: گهربل سافٽ ويئر انسٽال ڪريو
    اجزاء.

1.3 تنصيب

IDE انسٽال ڪرڻ ۽ سيٽ اپ ڪرڻ لاءِ انهن قدمن تي عمل ڪريو
ماحول:

  • IDE: لاءِ تجويز ڪيل IDE انسٽال ڪريو
    ESP32 جي پروگرامنگ.
  • دستي تنصيب: دستي طور تي سيٽ اپ ڪريو
    جيڪڏهن ضرورت هجي ته ماحول.

1.4 پنهنجو پهريون منصوبو ٺاهيو

ESP32 استعمال ڪندي پنهنجو شروعاتي منصوبو ٺاهيو ۽ ٺاهيو.

1.5 ESP-IDF انسٽال ڪريو

جيڪڏهن ضرورت هجي ته، سکو ته ڪيئن ESP-IDF کي پنهنجي ڪمپيوٽر تان انسٽال ڪجي.
سسٽم.

2. API حوالو

تفصيلي ڄاڻ لاءِ API دستاويزن جو حوالو ڏيو
ايپليڪيشن پروٽوڪول، غلطي سنڀالڻ، ۽ ترتيب
اڏاوتون.

اڪثر پڇيا ويندڙ سوال (FAQ)

سوال: مان ESP32 سان عام مسئلن کي ڪيئن حل ڪري سگهان ٿو؟

الف: پروگرامنگ گائيڊ ۾ مسئلو حل ڪرڻ واري حصي جو حوالو ڏيو.
يا ٺاهيندڙن جو دورو ڪريو webسپورٽ وسيلن لاء سائيٽ.

سوال: ڇا مان ٻين مائڪرو ڪنٽرولرز سان ESP-IDF استعمال ڪري سگهان ٿو؟

الف: ESP-IDF خاص طور تي ESP32 لاءِ ٺهيل آهي، پر توهان ڳولي سگهو ٿا
ٻين ايسپريسف مائڪرو ڪنٽرولرز سان مطابقت.

اي ايسڪسڪسينڪس
ESP-IDF پروگرامنگ گائيڊ
رليز v5.0.9 ايسپريسف سسٽم 16 مئي 2025

مواد جي جدول

مواد جي جدول

i

1 شروع ڪريو

3

1.1 تعارف . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

1.2 توهان کي ڇا گهرجي .

1.2.1 هارڊويئر .

1.2.2 سافٽ ويئر .

1.3 انسٽاليشن . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

1.3.1 IDE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

1.3.2 دستي تنصيب . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

1.4 پنهنجو پهريون منصوبو ٺاهيو .

1.5 ESP-IDF کي انسٽال ڪريو .44

2 API حوالو

45

2.1 API ڪنوينشنز .

2.1.1 غلطي سنڀالڻ ۾ .

2.1.2 ترتيب جون جوڙجڪون .

2.1.3 خانگي APIs .

2.1.4 اڳوڻي ۾ جزاampلي منصوبا .

2.1.5 API استحڪام .

2.2 ايپليڪيشن پروٽوڪول .

2.2.1 ASIO پورٽ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48

2.2.2 اي ايس پي-موڊبس .

2.2.3 اي ايس پي-ايم ڪيو ٽي ٽي .

2.2.4 ESP-TLS .

2.2.5 ESP HTTP ڪلائنٽ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80

2.2.6 اي ايس پي لوڪل ڪنٽرول . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95

2.2.7 ESP سيريل غلام لنڪ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104

2.2.8 ESP x509 سرٽيفڪيٽ بنڊل . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121

2.2.9 HTTP سرور . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123

2.2.10 HTTPS سرور .

2.2.11 ICMP گونج .

2.2.12 ايم ڊي اين ايس سروس .

2.2.13 ايم بيڊ ٽي ايل ايس .

2.2.14 IP نيٽ ورڪ پرت .

2.3 بلوٽوٿ API .

2.3.1 بلوٽوٿ® عام .

2.3.2 بلوٽوٿ® گھٽ توانائي .

2.3.3 بلوٽوٿ® ڪلاسڪ .

2.3.4 ڪنٽرولر ۽ ايڇ سي آءِ .

2.3.5 اي ايس پي-بلي-ميش .

2.3.6 NimBLE تي ٻڌل هوسٽ APIs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 767

2.4 غلطي ڪوڊ جو حوالو . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 769

2.5 نيٽ ورڪنگ APIs .

2.5.1 وائي فائي . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 776

2.5.2 ايٿرنيٽ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 899

2.5.3 موضوع . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 936

i

2.5.4 اي ايس پي-نيٽف. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 942 2.5.5 IP نيٽ ورڪ ليئر. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 974 2.5.6 ايپليڪيشن ليئر. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 976 2.6 پيري فيرلز API. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 977 2.6.1 اينالاگ کان ڊجيٽل ڪنورٽر (ADC) ون شاٽ موڊ ڊرائيور. . . . . . . . . . . . . . . . . 977 2.6.2 اينالاگ کان ڊجيٽل ڪنورٽر (ADC) ڪنٽينيوس موڊ ڊرائيور. . . . . . . . . . . . . . . 986 2.6.3 اينالاگ کان ڊجيٽل ڪنورٽر (ADC) ڪيليبريشن ڊرائيور. . . . . . . . . . . . . . . . . . . 993 2.6.4 ڪلاڪ ٽري. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 997 2.6.5 ڊجيٽل کان اينالاگ ڪنورٽر (ڊي اي سي). . . . . . . . . . . . . . . . . . . . . . . . . . . . 1004 2.6.6 GPIO ۽ RTC GPIO. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1008 2.6.7 جنرل پرپز ٽائمر (GPTimer). . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1027 2.6.8 انٽر-انٽيگريٽيڊ سرڪٽ (I2C). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1039 2.6.9 انٽر-آئي سي آواز (I2S). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1056 2.6.10 ايل سي ڊي. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1090 2.6.11 ايل اي ڊي ڪنٽرول (ايل اي ڊي سي). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1107 2.6.12 موٽر ڪنٽرول پلس ويڊٿ ماڊيوليٽر (MCPWM). . . . . . . . . . . . . . . . . . . . . 1126 2.6.13 پلس ڪائونٽر (PCNT). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1178 2.6.14 ريموٽ ڪنٽرول ٽرانسيور (RMT). . . . . . . . . . . . . . . . . . . . . . . . . . . . 1193 2.6.15 ايس ڊي پل اپ گهرجون. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1220 2.6.16 SDMMC هوسٽ ڊرائيور. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1223 2.6.17 ايس ڊي ايس پي آءِ هوسٽ ڊرائيور. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1229 2.6.18 SDIO ڪارڊ غلام ڊرائيور. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1234 2.6.19 سگما-ڊيلٽا ماڊوليشن (SDM). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1244 2.6.20 ايس پي آءِ ماسٽر ڊرائيور. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1249 2.6.21 ايس پي آءِ غلام ڊرائيور. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 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 ڪي ڪنفگ فارميٽنگ رولز. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1343 2.7.5 ڪي ڪنفگ آپشنز جي پسمانده مطابقت. . . . . . . . . . . . . . . . . . . . . . . . 1343 2.7.6 ترتيب جا آپشن حوالو. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1343 2.8 پروويزننگ API. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1647 2.8.1 پروٽوڪول ڪميونيڪيشن. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1647 2.8.2 گڏيل فراهمي. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1665 2.8.3 وائي فائي جي فراهمي. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1669 2.9 اسٽوريج API. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Fileسسٽم سپورٽ . . . 1703 2.9.4 NVS پارٽيشن جنريٽر يوٽيلٽي . . . . . . . . . . . . . . . . 1744 2.9.7 اسپيفس Fileسسٽم . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1780 2.9.8 ورچوئل fileسسٽم جو جزو . . . . . . . . . . . . . . 1803 2.10.1 ايپ تصويري فارميٽ . . . . . . . . . . . . . . . . . . . . . . 1813 2.10.4 چپ نظرثاني . 1817 2.10.6 اي فيوز مئنيجر .
ii

2.10.8 ESP HTTPS OTA .view) . . . . . . 1988 2.10.13 هيپ ميموري مختص ڪرڻ . . . . . . . . . . . . . . . 2032 2.10.16 اندروني ۽ غير مستحڪم APIs . . 2058 2.10.21 اوور دي ايئر اپڊيٽس (OTA) . . . . . . . . . . . . . 2087 2.10.24 پوزيڪس ٿريڊز سپورٽ . . 2121 2.10.29 هيم مختص API . . . . . . . . . . . . . . . 2161

3 هارڊويئر ريفرنس

2167

3.1 چپ سيريز جو مقابلو .

3.1.1 لاڳاپيل دستاويز . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2170

4 API گائيڊ

2171

4.1 ايپليڪيشن ليول ٽريڪنگ لائبريري .

4.1.1 اوورview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2171

4.1.2 آپريشن جا طريقا .

4.1.3 ترتيب جا اختيار ۽ انحصار . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2172

4.1.4 هي لائبريري ڪيئن استعمال ڪجي. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2173

4.2 ايپليڪيشن اسٽارٽ اپ فلو .

4.2.1 پهريون ايسtagاي بوٽ لوڊر . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2182

4.2.2 سيڪنڊ ايسtagاي بوٽ لوڊر . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2182

4.2.3 ايپليڪيشن جي شروعات .

4.3 بلوٽوٿ® ڪلاسڪ .

4.3.1 اوورview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2184

4.4 بلوٽوٿ® گھٽ توانائي .

4.4.1 اوورview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2186

4.4.2 شروع ڪريو . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2191

4.4.3 پروfile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2240

4.5 بوٽ لوڊر .

4.5.1 بوٽ لوڊر مطابقت .

4.5.2 لاگ ليول .

4.5.3 فيڪٽري ري سيٽ .

4.5.4 ٽيسٽ فرم ويئر مان بوٽ ڪريو . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2286

4.5.5 واپسي .

4.5.6 واچ ڊاگ .

4.5.7 بوٽ لوڊر سائيز .

4.5.8 ڊيپ سليپ مان تيز بوٽ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2287

4.5.9 ڪسٽم بوٽ لوڊر .

4.6 بلڊ سسٽم .

4.6.1 اوورview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2288

4.6.2 بلڊ سسٽم استعمال ڪندي . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2289

iii

4.6.3 سابقampلي پروجيڪٽ . File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2291 4.6.5 جزو CMakeLists Files . 2295 4.6.8 جزو جون گهرجون . 2300 4.6.11 ڊيبگنگ CMake . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2300 4.6.12 مثالampڪمپونينٽ سي ميڪ لسٽس . . . . . . 2305 4.6.15 بوٽ لوڊر ٺاهڻ . 2306 4.6.18 اجزاء سان گڏ اڳ ۾ ٺهيل لائبريريون استعمال ڪرڻ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2307 4.6.19 ڪسٽم CMake منصوبن ۾ ESP-IDF استعمال ڪرڻ . File گلوبنگ ۽ انڪريمينٽل بلڊز . . . 2313 4.6.24 ESP-IDF GNU Make System مان لڏپلاڻ .view . . . . . . . . . . . . . . . . . . . 2317 4.7.4 ڪور ڊمپ کي UART تي پرنٽ ڪريو . . . . . . . . . . . . . . . . . . . . . 2318 4.7.7 espcoredump.py هلائڻ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2322 4.8.2 اسٽب لاڳو ڪرڻ . 2322 4.8.4 ڊيٽا کي آر ٽي سي ميموري ۾ لوڊ ڪرڻ .ampلي .view . . . . . . . . 2324 4.9.4 ESP_ERROR_CHECK ميڪرو . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2325 4.9.5 ESP_ERROR_CHECK_WITHOUT_ABORT ميڪرو . . . . . . 2325 4.9.7 ESP_GOTO_ON_ERROR ميڪرو . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2325 4.9.8 ESP_RETURN_ON_FALSE ميڪرو . . . . . . . . . . 2325 4.9.10 چيڪ ڪريو ميڪروس ايڪسampگهٽ . . . . . 2327 4.10 اي ايس پي-وائي فائي-ميش .view . . . . . . . . . . . . . . . . . . 2329 4.10.4 نيٽ ورڪ ٺاهڻ . .
iv

4.10.8 ڪارڪردگي . . 2349 4.11.3 بلوٽوٿ واقعا .view . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2350 4.12.2 پينڪ هينڊلر. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2350 4.12.3 رجسٽر ڊمپ ۽ بيڪ ٽريڪ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2351 4.12.4 GDB اسٽب. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2353 4.12.5 آر ٽي سي واچ ڊاگ ٽائم آئوٽ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2354 4.12.6 گرو مراقبي جون غلطيون. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2354 4.12.7 ٻيون موتمار غلطيون. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2356 4.13 فليش انڪرپشن. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2358 4.13.1 تعارف. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2359 4.13.2 لاڳاپيل اي فيوز. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 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 (هارڊويئر خلاصو پرت). . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2376 4.15 اعليٰ سطحي رڪاوٽون. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2377 4.15.1 مداخلت جي سطح. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2377 4.15.2 نوٽس. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . TAG ڊيبگنگ . . . . . . . . . . . . . . . . . . . . . . . . . 2379 4.16.3 J چونڊڻTAG اڊاپٽر . . . . . . . . . 2380 4.16.6 ڊيبگر لانچ ڪرڻ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2386 4.16.7 ڊيبگنگ ايڪسamples . . . . . . . 2391 4.16.10 لاڳاپيل دستاويز .view . . . . . . . . . . . . . . 2424 4.18 lwIP . 2430 4.18.2 BSD ساکٽ API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2435 4.18.5 IPv6 سپورٽ .
v

4.18.7 ڪارڪردگي جي اصلاح .
4.19.1 DRAM (ڊيٽا ريم) . . . . . . . . . . . 2441 4.19.4 DROM (فليش ۾ محفوظ ٿيل ڊيٽا) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2441 4.19.8 اسٽيڪ ۾ ڊي ايم اي بفر . . 2443 4.20.3 اوپن ٿريڊ بارڊر روٽر .view . . . . . . . . . . . . . . 2445 4.21.4 بائنري پارٽيشن ٽيبل ٺاهڻ . . . . . . . . . . . . . . . . . . . 2449 4.21.7 ورهاڱي وارو اوزار (parttool.py) . . . . . . . . . . 2468 4.23.1 جزوي ڪيليبريشن . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2469 4.23.4 PHY شروعاتي ڊيٽا . 2469 4.24 محفوظ بوٽ .view . . . . . . . . . . . . . . 2474 4.24.5 محفوظ بوٽ کي ڪيئن فعال ڪجي . . . . . . . . . . . 2475 4.24.8 تصويرن جي ريموٽ سائننگ . . . . . . . . . . . . . . . . . . . . . . 2476 4.24.11 محفوظ بوٽ ۽ فليش انڪرپشن . . . . . . . . . . . 2478 4.25 محفوظ بوٽ V2 .tages . . . . . . . . . . . . 2480 4.25.5 محفوظ پيڊنگ . . 2481 4.25.10 سيڪيور بوٽ V2 کي ڪيئن فعال ڪجي . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2481 4.25.11 سيڪيور بوٽ کي فعال ڪرڻ کان پوءِ پابنديون .
vi

4.25.13 تصويرن جي ريموٽ سائننگ . . . . . . . . . . . 2484 4.25.16 محفوظ بوٽ ۽ فليش انڪرپشن . . 2485 4.26 ٻاهرين ريم لاءِ سپورٽ . . 2487 4.26.5 شروع ڪرڻ ۾ ناڪامي . . . . . . . . . . . . . . . . . . . . . . . . 2488 4.27.1 کان مٿيview . . . . . . . . . . . . . . . . . . . . 2489 4.27.4 C11 معياري . 2489 4.28.1 IDF فرنٽ اينڊ – idf.py . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2489 4.28.2 IDF ڊوڪر تصوير . . . . . . . . . . . . . . . . . . . 2495 4.28.4 IDF ڪمپونينٽ مئنيجر . . . . 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 وائي فائي فيچر لسٽ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2521 4.31.2 وائي فائي ايپليڪيشن ڪيئن لکجي. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2521 4.31.3 ESP32 وائي فائي API غلطي ڪوڊ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2522 4.31.4 ESP32 وائي فائي API پيرا ميٽر شروعات. . . . . . . . . . . . . . . . . . . . . . . . . 2522 4.31.5 ESP32 وائي فائي پروگرامنگ ماڊل. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2522 4.31.6 ESP32 وائي فائي واقعي جي وضاحت. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2523 4.31.7 ESP32 وائي فائي اسٽيشن جنرل منظرنامو. . . . . . . . . . . . . . . . . . . . . . . . . . . 2526 4.31.8 ESP32 وائي فائي اي پي جنرل سيناريو. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2529 4.31.9 ESP32 وائي فائي اسڪين. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2529 4.31.10 ESP32 وائي فائي اسٽيشن ڪنيڪٽنگ منظرنامو. . . . . . . . . . . . . . . . . . . . . . . . . 2536 4.31.11 ESP32 وائي فائي اسٽيشن ڪنيڪٽ ٿي رهيو آهي جڏهن ڪيترائي AP مليا آهن. . . . . . . . . . . . . 2543 4.31.12 وائي فائي ٻيهر ڪنيڪٽ ڪريو. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2543 4.31.13 وائي فائي بيڪن ٽائم آئوٽ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2543 4.31.14 ESP32 وائي فائي ترتيب. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2543 4.31.15 وائي فائي ايزي ڪنيڪٽ ™ (ڊي پي پي). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 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 پيڪٽ موڪليو . . . . . . . . . . . . . . . . . . . . . . . 2554 4.31.24 وائي فائي چينل اسٽيٽ انفارميشن . . . . . . . . . . . . . . . . . . . . . . . 2557 4.31.27 وائي فائي QoS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2557 4.31.28 وائي فائي AMSDU . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2558 4.31.29 وائي فائي ٽڪرو . . . . . . . . . . . . . . 2568 4.32.2 محفوظ انتظام فريم (PMF) . . . . . . . . . . . . . . . . . . . . . . . . . . . 2572 4.32.5 وائي فائي بهتر ٿيل اوپن ٽي ايم .view . 2574 4.33.4 گڏ رهڻ جي خصوصيت کي ڪيئن استعمال ڪجي . . . . . . . . . . . . . . . . . . 2577 4.34.2 غير ٻيهر پيدا ٿيندڙ تعميرات جا سبب . . . . . . . . . . 2578 4.34.5 ٻيهر پيدا ٿيندڙ بلڊز ۽ ڊيبگنگ . . . . . . . 2578

5 لڏپلاڻ جا رهنما

2579

5.1 ESP-IDF 5.x لڏپلاڻ جي گائيڊ .

5.1.1 4.4 کان 5.0 تائين منتقلي .

6 لائبريريون ۽ فريم ورڪ

2611

6.1 ڪلائوڊ فريم ورڪ .

6.1.1 اي ايس پي رين ميڪر .

6.1.2 AWS IoT .

6.1.3 ايزور آئي او ٽي .

6.1.4 گوگل آئي او ٽي ڪور .

6.1.5 عليون آئي او ٽي . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2611

6.1.6 جوائي لنڪ آئي او ٽي .

6.1.7 ٽينسينٽ آئي او ٽي .

6.1.8 ٽينسينٽيون آئي او ٽي .

6.1.9 بيدو آئي او ٽي .

6.2 ايسپريسن فريم ورڪ .

6.2.1 ايسپريسف آڊيو ڊولپمينٽ فريم ورڪ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2612

6.2.2 اي ايس پي-سي ايس آءِ .

6.2.3 ايسپريسف ڊي ايس پي لائبريري .

6.2.4 ESP-WIFI-MESH ڊولپمينٽ فريم ورڪ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2613

6.2.5 اي ايس پي-ڊبليو ايڇ او .

6.2.6 اي ايس پي رين ميڪر .

6.2.7 ESP-IoT-حل .

6.2.8 اي ايس پي-پروٽوڪول .

viii

6.2.9 اي ايس پي-بي ايس پي .

7 تعاون جي رهنمائي

2615

7.1 ڪيئن حصو وٺجي .

7.2 حصو ڏيڻ کان اڳ .

7.3 پل درخواست جو عمل .

7.4 قانوني حصو .

7.5 لاڳاپيل دستاويز .

7.5.1 ايسپريسف آئي او ٽي ڊولپمينٽ فريم ورڪ اسٽائل گائيڊ . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2616

7.5.2 ESP-IDF پروجيڪٽ لاءِ پري ڪمٽ ٿلهو انسٽال ڪريو . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2623

7.5.3 دستاويزي ڪوڊ .

7.5.4 ايڪس ٺاهڻampليس . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2629

7.5.5 API دستاويزي ٽيمپليٽ .

7.5.6 حصو وٺندڙ معاهدو .

7.5.7 ڪاپي رائيٽ هيڊر گائيڊ .

7.5.8 پائي ٽيسٽ گائيڊ سان ESP-IDF ٽيسٽ .

8 ESP-IDF ورجن

2645

8.1 رليز .

8.2 مون کي ڪهڙي نسخي سان شروع ڪرڻ گهرجي؟ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2645

8.3 ورزننگ اسڪيم .

8.4 سپورٽ پيريڊز .

8.5 موجوده نسخي جي جانچ ڪرڻ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2647

8.6 گٽ ورڪ فلو .

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 پليٽ فارم آئي او .

9.1.1 پليٽ فارم آئي او ڇا آهي؟ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2651

9.1.2 انسٽاليشن .

9.1.3 ترتيب .

9.1.4 سبق .

9.1.5 پروجيڪٽ ايڪسampليس . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2652

9.1.6 ايندڙ قدم .

9.2 مفيد لنڪس .

10 ڪاپي رائيٽ ۽ لائسنس

2653

10.1 سافٽ ويئر ڪاپي رائيٽ .

10.1.1 فرم ويئر جزا . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2653

10.1.2 دستاويزي .

10.2 ROM سورس ڪوڊ ڪاپي رائيٽس .

10.3 Xtensa libhal MIT لائسنس. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2655

10.4 TinyBasic Plus MIT لائسنس. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2655

10.5 TJpgDec لائسنس .

11 بابت

2657

12 ٻولين جي وچ ۾ مٽايو

2659

انڊيڪس

2661

انڊيڪس

2661

ix

x

مواد جي جدول
هي ايسپريسف آئي او ٽي ڊولپمينٽ فريم ورڪ (esp-idf) لاءِ دستاويز آهي. ESP-IDF ESP32، ESP32-S ۽ ESP32-C سيريز SoCs لاءِ سرڪاري ڊولپمينٽ فريم ورڪ آهي. هي دستاويز ESP32 SoC سان ESP-IDF جي استعمال جي وضاحت ڪري ٿو.

شروع ڪريو

API حوالو

API گائيڊ

ايسپريسف سسٽم

1 دستاويز جي راءِ جمع ڪرايو

رليز v5.0.9

مواد جي جدول

ايسپريسف سسٽم

2 دستاويز جي راءِ جمع ڪرايو

رليز v5.0.9

باب 1
شروع ڪريو
هي دستاويز ايسپريسف پاران ESP32 چپ تي ٻڌل هارڊويئر لاءِ سافٽ ويئر ڊولپمينٽ ماحول قائم ڪرڻ ۾ توهان جي مدد ڪرڻ لاءِ آهي. ان کان پوءِ، هڪ سادي مثالampهي توهان کي ڏيکاريندو ته مينيو ترتيب ڏيڻ لاءِ ESP-IDF (Espressif IoT ڊولپمينٽ فريم ورڪ) ڪيئن استعمال ڪجي، پوءِ ESP32 بورڊ تي فرم ويئر ٺاهڻ ۽ چمڪائڻ لاءِ.
نوٽ: هي ESP-IDF جي مستحڪم ورجن v5.0.9 لاءِ دستاويز آهي. ٻيا ESP-IDF ورجن پڻ موجود آهن.
1.1 تعارف
ESP32 هڪ چپ تي ٻڌل سسٽم آهي جيڪو هيٺ ڏنل خاصيتن کي ضم ڪري ٿو: · وائي فائي (2.4 GHz بينڊ) · بلوٽوٿ · ڊبل هاءِ پرفارمنس Xtensa® 32-bit LX6 CPU ڪور · الٽرا لو پاور ڪو پروسيسر · ڪيترائي پيري فيرلز
40 nm ٽيڪنالاجي سان هلندڙ، ESP32 هڪ مضبوط، انتهائي مربوط پليٽ فارم فراهم ڪري ٿو، جيڪو موثر بجلي جي استعمال، ڪمپيڪٽ ڊيزائن، سيڪيورٽي، اعليٰ ڪارڪردگي، ۽ اعتبار جي مسلسل مطالبن کي پورو ڪرڻ ۾ مدد ڪري ٿو. Espressif بنيادي هارڊويئر ۽ سافٽ ويئر وسيلا فراهم ڪري ٿو ته جيئن ايپليڪيشن ڊولپرز کي ESP32 سيريز هارڊويئر استعمال ڪندي پنهنجن خيالن کي محسوس ڪرڻ ۾ مدد ملي سگهي. Espressif پاران سافٽ ويئر ڊولپمينٽ فريم ورڪ جو مقصد وائي فائي، بلوٽوٿ، پاور مئنيجمينٽ ۽ ڪيترن ئي ٻين سسٽم خاصيتن سان انٽرنيٽ آف ٿنگس (IoT) ايپليڪيشنن جي ترقي لاءِ آهي.
1.2 توهان کي ڇا گهرجي
1.2.1 هارڊويئر
· هڪ ESP32 بورڊ. · USB ڪيبل - USB A / مائڪرو USB B. · ونڊوز، لينڪس، يا macOS هلائيندڙ ڪمپيوٽر.
نوٽ: هن وقت، ڪجهه ڊولپمينٽ بورڊ USB ٽائيپ سي ڪنيڪٽرز استعمال ڪري رهيا آهن. پڪ ڪريو ته توهان وٽ پنهنجي بورڊ کي ڳنڍڻ لاءِ صحيح ڪيبل آهي!
جيڪڏهن توهان وٽ هيٺ ڏنل فهرست ڏنل ESP32 سرڪاري ڊولپمينٽ بورڊن مان هڪ آهي، ته توهان هارڊويئر بابت وڌيڪ ڄاڻڻ لاءِ لنڪ تي ڪلڪ ڪري سگهو ٿا.
3

باب 1. شروع ڪريو
ESP32-DevKitS(-R)
هي صارف گائيڊ ESP32-DevKitS(-R) بابت معلومات فراهم ڪري ٿو، جيڪو Espressif پاران تيار ڪيل ESP32 تي ٻڌل فليشنگ بورڊ آهي. ESP32-DevKitS(-R) ٻن بورڊ نالن جو مجموعو آهي: ESP32-DevKitS ۽ ESP32-DevKitS-R. S جو مطلب آهي اسپرنگس، ۽ 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 لاءِ ٺاهيو ويو آهي. ان کي پاور سپلائي ۽ سگنل لائينن تي ماڊيول کي سولڊر ڪرڻ کان سواءِ 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 سيريز ماڊلز جو حوالو ڏيو.

اجزاء جي وضاحت

ايسپريسف سسٽم

4 دستاويز جي راءِ جمع ڪرايو

رليز v5.0.9

باب 1. شروع ڪريو

شڪل 1: ESP32-DevKitS - اڳيان

ايسپريسف سسٽم

شڪل 2: ESP32-DevKitS-R – اڳيان 5
دستاويز راءِ جمع ڪريو

رليز v5.0.9

باب 1. شروع ڪريو

اهم ڪمپونينٽ اسپرنگ پن 2.54 ملي ميٽر عورت هيڊر
USB-کان-UART برج LDO مائڪرو-USB ڪنيڪٽر/مائڪرو USB پورٽ EN بٽڻ بوٽ بٽڻ
پاور لائيٽ تي

وضاحت ماڊيول تي ڪلڪ ڪريو. پن ماڊيولن جي ڪيسٽيل ٿيل سوراخن ۾ فٽ ٿيندا. اهي عورت هيڊر هن بورڊ تي لڳل ماڊيول جي پنن سان ڳنڍيل آهن. عورت هيڊرن جي وضاحت لاءِ، مهرباني ڪري هيڊر بلاڪ جو حوالو ڏيو. سنگل چپ USB کان UART پل 3 Mbps تائين جي منتقلي جي شرح فراهم ڪري ٿو.
5V کان 3.3V گھٽ ڊراپ آئوٽ وولٽtagاي ريگيوليٽر (LDO).
USB انٽرفيس. بورڊ لاءِ پاور سپلاءِ ۽ گڏوگڏ ڪمپيوٽر ۽ بورڊ جي وچ ۾ ڪميونيڪيشن انٽرفيس.
ري سيٽ بٽڻ.
ڊائون لوڊ بٽڻ. بوٽ کي دٻايو رکڻ ۽ پوءِ EN کي دٻائڻ سان سيريل پورٽ ذريعي فرم ويئر ڊائون لوڊ ڪرڻ لاءِ فرم ويئر ڊائون لوڊ موڊ شروع ٿئي ٿو.
جڏهن USB يا پاور سپلائي بورڊ سان ڳنڍيل هجي ته آن ٿئي ٿو.

بورڊ کي ڪيئن فليش ڪجي پنهنجي ESP32-DevKitS(-R) کي پاور اپ ڪرڻ کان اڳ، مهرباني ڪري پڪ ڪريو ته اهو سٺي حالت ۾ آهي ۽ نقصان جي ڪا به واضح نشاني ناهي.
گهربل هارڊويئر · توهان جي پسند جو هڪ ESP32 ماڊيول · USB 2.0 ڪيبل (معياري-A کان مائڪرو-B تائين) · ونڊوز، لينڪس، يا macOS تي هلندڙ ڪمپيوٽر
هارڊويئر سيٽ اپ مھرباني ڪري ھيٺ ڏنل قدمن مطابق پنھنجي پسند جو ماڊيول پنھنجي ESP32-DevKitS(-R) تي لڳايو:
· پنهنجي ماڊيول کي ESP32-DevKitS(-R) بورڊ تي نرميءَ سان لڳايو. پڪ ڪريو ته توهان جي ماڊيول تي ڪيسٽيل ٿيل سوراخ بورڊ تي اسپرنگ پنن سان ترتيب ڏنل آهن.
· پنهنجي ماڊيول کي بورڊ ۾ دٻايو جيستائين اهو ڪلڪ نه ڪري. · چيڪ ڪريو ته ڇا سڀئي اسپرنگ پن ڪيسٽيل ٿيل سوراخن ۾ داخل ڪيا ويا آهن. جيڪڏهن ڪجهه غلط ترتيب ڏنل اسپرنگ پن آهن،
انهن کي ٽوئيزر سان ڪيسٽيل ٿيل سوراخن ۾ رکو.
سافٽ ويئر سٽا
ترجيحي طريقو ESP-IDF ڊولپمينٽ فريم ورڪ ESP32-DevKitS(-R) تي بائنريز کي چمڪائڻ جو هڪ ترجيحي طريقو مهيا ڪري ٿو. مھرباني ڪري شروع ڪريو، جتي سيڪشن انسٽاليشن جلدي توهان کي ترقي جي ماحول کي سيٽ ڪرڻ ۾ مدد ڪندي ۽ پوءِ ايپليڪيشن کي فليش ڪندي.ampپنهنجي ESP32-DevKitS(-R) تي.
متبادل طريقو متبادل طور تي، ونڊوز استعمال ڪندڙ فليش ڊائون لوڊ ٽول استعمال ڪندي بائنري فليش ڪري سگهن ٿا. بس ان کي ڊائون لوڊ ڪريو، ان کي ان زپ ڪريو، ۽ ڊاڪ فولڊر اندر ڏنل هدايتن تي عمل ڪريو.
نوٽ: 1. بائنري کي چمڪائڻ لاءِ files، ESP32 کي فرم ويئر ڊائون لوڊ موڊ تي سيٽ ڪيو وڃي. اهو يا ته فليش ٽول ذريعي خودڪار طريقي سان ڪري سگهجي ٿو، يا بوٽ بٽڻ کي دٻائي رکڻ ۽ EN بٽڻ کي ٽيپ ڪندي. 2. بائنري کي چمڪائڻ کان پوءِ files، فليش ڊائون لوڊ ٽول توهان جي ESP32 ماڊيول کي ٻيهر شروع ڪري ٿو ۽ فليش ٿيل ايپليڪيشن کي ڊفالٽ طور بوٽ ڪري ٿو.

بورڊ جي طول و عرض جو مواد ۽ پيڪنگنگ

ايسپريسف سسٽم

6 دستاويز جي راءِ جمع ڪرايو

رليز v5.0.9

باب 1. شروع ڪريو شڪل 3: ESP32-DevKitS بورڊ جا طول و عرض - پوئتي

ايسپريسف سسٽم

شڪل 4: ESP32-DevKitS-R بورڊ جا طول و عرض - پوئتي 7
دستاويز راءِ جمع ڪريو

رليز v5.0.9

باب 1. شروع ڪريو
پرچون آرڊر جيڪڏهن توهان ڪجهه آرڊر ڪريو ٿاampگهٽ ۾ گهٽ، هر ESP32-DevKitS(-R) هڪ انفرادي پيڪيج ۾ يا ته اينٽي اسٽيٽڪ بيگ ۾ يا ڪنهن به پيڪنگ ۾ اچي ٿو جيڪو پرچون ڪندڙ تي منحصر آهي. پرچون آرڊر لاءِ، مهرباني ڪري https://www.espressif.com/en/contact-us/get-s تي وڃو.amples.
ٿوڪ آرڊر جيڪڏهن توهان وڏي مقدار ۾ آرڊر ڪندا آهيو، ته بورڊ وڏن ڪارڊ بورڊ باڪس ۾ ايندا آهن. ٿوڪ آرڊر لاءِ، مهرباني ڪري https://www.espressif.com/en/contact-us/sales-questions تي وڃو.
هارڊويئر ريفرنس
بلاڪ ڊاگرام هيٺ ڏنل بلاڪ ڊاگرام ESP32-DevKitS(-R) جي حصن ۽ انهن جي وچ ۾ رابطن کي ڏيکاري ٿو.

شڪل 5: ESP32-DevKitS(-R) (وڌائڻ لاءِ ڪلڪ ڪريو)
پاور سپلاءِ آپشن بورڊ کي پاور فراهم ڪرڻ جا ٽي باهمي طور تي الڳ الڳ طريقا آهن: · مائڪرو USB پورٽ، ڊفالٽ پاور سپلاءِ · 5V ۽ GND هيڊر پن · 3V3 ۽ GND هيڊر پن
پهرين آپشن استعمال ڪرڻ جي صلاح ڏني وئي آهي: مائڪرو USB پورٽ.

ايسپريسف سسٽم

.

ليبل سگنل

ايل 1 3 وي 3 وي ڊي ڊي 3 وي 3

L2 اين چِپ_پي يو

L3 وي پي سينسر_وي پي

L4 وي اين سينسر_وي اين

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

ايل 14 جي اين ڊي جي اين ڊي

L15 13

جي پي او 13

L16 D2 SD_DATA2

L17 D3 SD_DATA3

L18 سي ايم ڊي ايس ڊي_سي ايم ڊي

L19 5V

خارجي 5V

آر 1 جي اين ڊي جي اين ڊي

R2 23

جي پي او 23

R3 22

جي پي او 22

آر 4 ٽيڪس يو0 ٽيڪس ڊي

آر 5 آر ايڪس يو0 آر ايڪس ڊي

R6 21

جي پي او 21

آر 7 جي اين ڊي جي اين ڊي

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

آر 17 ڊي 1 ايس ڊي_ڊيٽا 1

آر 18 ڊي 0 ايس ڊي_ڊيٽا 0

R19 CLK SD_CLK

هيڊر بلاڪ هيڊر بلاڪ جي تصوير لاءِ، مھرباني ڪري اجزاء جي وضاحت ڏسو.

لاڳاپيل دستاويز
· ESP32-DevKitS(-R) اسڪيميٽڪس (PDF) · ESP32 ڊيٽا شيٽ (PDF) · ESP32-WROOM-32 ڊيٽا شيٽ (PDF) · ESP32-WROOM-32D ۽ ESP32-WROOM-32U ڊيٽا شيٽ (PDF) · ESP32-SOLO-1 ڊيٽا شيٽ (PDF) · ESP32-WROVER ڊيٽا شيٽ (PDF) · ESP32-WROVER-B ڊيٽا شيٽ (PDF) · ESP پراڊڪٽ چونڊيندڙ

ESP32-DevKitM-1

هي صارف گائيڊ توهان کي ESP32-DevKitM-1 سان شروع ڪرڻ ۾ مدد ڪندو ۽ وڌيڪ تفصيلي معلومات پڻ فراهم ڪندو.
ESP32-DevKitM-1 هڪ ESP32-MINI-1(1U)-بنياد تي ترقي ڪندڙ بورڊ آهي جيڪو ايسپريسف پاران تيار ڪيو ويو آهي. گھڻا I/O پن آسان انٽرفيسنگ لاءِ ٻنهي پاسن تي پن هيڊرز ۾ ٽوڙيا ويا آهن. استعمال ڪندڙ يا ته پيري فيرلز کي جمپر تارن سان ڳنڍي سگهن ٿا يا ESP32-DevKitM-1 کي بريڊ بورڊ تي لڳائي سگهن ٿا.

ايسپريسف سسٽم

9 دستاويز جي راءِ جمع ڪرايو

رليز v5.0.9

باب 1. شروع ڪريو

ESP32-DevKitM-1 - سامهون

ESP32-DevKitM-1 - آئسوميٽرڪ

دستاويز ۾ هيٺيان اهم حصا شامل آهن: · شروعات ڪرڻ: هڪ اوور مهيا ڪري ٿوview شروع ڪرڻ لاءِ ESP32-DevKitM-1 ۽ هارڊويئر/سافٽ ويئر سيٽ اپ هدايتون. · هارڊويئر حوالو: ESP32-DevKitM-1ns هارڊويئر بابت وڌيڪ تفصيلي معلومات فراهم ڪري ٿو. · لاڳاپيل دستاويز: لاڳاپيل دستاويزن جا لنڪ ڏئي ٿو.

شروعات ڪرڻ هي سيڪشن بيان ڪري ٿو ته ESP32-DevKitM-1 سان ڪيئن شروعات ڪجي. اهو ESP32-DevKitM-1 بابت ڪجهه تعارفي حصن سان شروع ٿئي ٿو، پوءِ سيڪشن اسٽارٽ ايپليڪيشن ڊولپمينٽ هدايتون مهيا ڪري ٿو ته شروعاتي هارڊويئر سيٽ اپ ڪيئن ڪجي ۽ پوءِ ESP32-DevKitM-1 تي فرم ويئر ڪيئن فليش ڪجي.

مٿانview هي هڪ ننڍڙو ۽ آسان ترقياتي بورڊ آهي جنهن ۾ خاصيتون آهن:
· ESP32-MINI-1، يا ESP32-MINI-1U ماڊيول · USB-to-serial پروگرامنگ انٽرفيس جيڪو بورڊ لاءِ پاور سپلاءِ پڻ فراهم ڪري ٿو · پن هيڊرز · فرم ويئر ڊائون لوڊ موڊ کي ري سيٽ ڪرڻ ۽ چالو ڪرڻ لاءِ پش بٽڻ · ڪجھ ٻيا جزا

مواد ۽ پيڪنگنگ

پرچون آرڊر جيڪڏهن توهان ڪجهه آرڊر ڪريو ٿاampگهٽ ۾ گهٽ، هر ESP32-DevKitM-1 هڪ انفرادي پيڪيج ۾ يا ته اينٽي اسٽيٽڪ بيگ ۾ يا ڪنهن به پيڪنگنگ ۾ اچي ٿو جيڪو توهان جي پرچون ڪندڙ تي منحصر آهي.
پرچون آرڊر لاءِ، مھرباني ڪري https://www.espressif.com/en/contact-us/get-s تي وڃو.amples.

ٿوڪ آرڊر جيڪڏهن توهان وڏي مقدار ۾ آرڊر ڪندا آهيو، ته بورڊ وڏن ڪارڊ بورڊ باڪس ۾ ايندا آهن. ٿوڪ آرڊر لاءِ، مهرباني ڪري https://www.espressif.com/en/contact-us/sales-questions تي وڃو.

اجزاء جي وضاحت هيٺ ڏنل شڪل ۽ هيٺ ڏنل جدول ESP32-DevKitM-1 بورڊ جي اهم حصن، انٽرفيس ۽ ڪنٽرول کي بيان ڪري ٿو. اسان ESP32-MINI-1 ماڊيول سان بورڊ کي هڪ اڳوڻي طور تي وٺون ٿا.ampهيٺ ڏنل حصن ۾.

ايسپريسف سسٽم

10 دستاويز جي راءِ جمع ڪرايو

رليز v5.0.9

باب 1. شروع ڪريو

شڪل 6: ESP32-DevKitM-1 – اڳيان

اهم جزو آن بورڊ ماڊل
5 V کان 3.3 V LDO بوٽ بٽڻ
بٽڻ مائڪرو-USB پورٽ ري سيٽ ڪريو
USB-کان-UART برج 3.3 V پاور آن LED
I/O ڪنيڪٽر

وصف
ESP32-MINI-1 ماڊيول يا ESP32-MINI-1U ماڊيول. ESP32-MINI-1 هڪ آن بورڊ PCB اينٽينا سان گڏ اچي ٿو. ESP32-MINI-1U هڪ ٻاهرين اينٽينا ڪنيڪٽر سان گڏ اچي ٿو. ٻنهي ماڊيولن ۾ 4 MB فليش ان چپ پيڪيج آهي. تفصيل لاءِ، مهرباني ڪري ESP32-MINI-1 ۽ ESP32-MINI-1U ڊيٽا شيٽ ڏسو.
پاور ريگيوليٽر 5 V کي 3.3 V ۾ تبديل ڪري ٿو.
ڊائون لوڊ بٽڻ. بوٽ کي دٻائڻ ۽ پوءِ ري سيٽ کي دٻائڻ سان سيريل پورٽ ذريعي فرم ويئر ڊائون لوڊ ڪرڻ لاءِ فرم ويئر ڊائون لوڊ موڊ شروع ٿئي ٿو.
ري سيٽ بٽڻ
USB انٽرفيس. بورڊ لاء بجلي جي فراهمي سان گڏو گڏ ڪمپيوٽر ۽ ESP32 چپ جي وچ ۾ ڪميونيڪيشن انٽرفيس.
سنگل USB-UART پل چپ 3 Mbps تائين منتقلي جي شرح مهيا ڪري ٿي.
جڏهن USB بورڊ سان ڳنڍيل هوندو آهي ته آن ٿيندو آهي. تفصيل لاءِ، مهرباني ڪري لاڳاپيل دستاويزن ۾ اسڪيميٽڪس ڏسو. سڀئي موجود GPIO پن (فليش لاءِ SPI بس کانسواءِ) بورڊ تي پن هيڊرز ۾ ورهايل آهن. استعمال ڪندڙ ESP32 چپ کي ڪيترن ئي ڪمن کي فعال ڪرڻ لاءِ پروگرام ڪري سگهن ٿا.

ايپليڪيشن ڊولپمينٽ شروع ڪريو پنھنجي ESP32-DevKitM-1 کي پاور اپ ڪرڻ کان پھريائين، مھرباني ڪري پڪ ڪريو ته اھو سٺي حالت ۾ آھي ۽ نقصان جي ڪا به واضح نشاني نه آھي.
گهربل هارڊويئر · ESP32-DevKitM-1 · USB 2.0 ڪيبل (معياري-A کان مائڪرو-B تائين) · ونڊوز، لينڪس، يا macOS تي هلندڙ ڪمپيوٽر
سافٽ ويئر سيٽ اپ مھرباني ڪري شروع ڪريو ڏانھن اڳتي وڌو، جتي سيڪشن انسٽاليشن جلدي توھان کي ڊولپمينٽ ماحول سيٽ اپ ڪرڻ ۾ مدد ڪندو ۽ پوءِ ايپليڪيشن کي فليش ڪندو.ampتوهان جي ESP32-DevKitM-1 تي وڃو.

ايسپريسف سسٽم

11 دستاويز جي راءِ جمع ڪرايو

رليز v5.0.9

باب 1. شروع ڪريو
ڌيان: 2 ڊسمبر 2021 کان اڳ ٺاهيل ESP32-DevKitM-1 بورڊن ۾ هڪ سنگل ڪور ماڊيول نصب ٿيل آهي. توهان وٽ ڪهڙو ماڊيول آهي ان جي تصديق ڪرڻ لاءِ، مهرباني ڪري PCN-2021-021 ۾ ماڊيول مارڪنگ جي معلومات چيڪ ڪريو. جيڪڏهن توهان جي بورڊ ۾ هڪ سنگل ڪور ماڊيول نصب ٿيل آهي، ته مهرباني ڪري پنهنجي ايپليڪيشنن کي چمڪائڻ کان اڳ مينيو ڪنفيگ ۾ سنگل ڪور موڊ (CONFIG_FREERTOS_UNICORE) کي فعال ڪريو.
هارڊويئر ريفرنس بلاڪ ڊاگرام هيٺ ڏنل بلاڪ ڊاگرام ESP32-DevKitM-1 جي حصن ۽ انهن جي وچ ۾ رابطن کي ڏيکاري ٿو.

شڪل 7: ESP32-DevKitM-1
پاور سورس چونڊيو بورڊ کي پاور فراهم ڪرڻ جا ٽي باهمي طور تي الڳ الڳ طريقا آهن: · مائڪرو USB پورٽ، ڊفالٽ پاور سپلائي · 5V ۽ GND هيڊر پن · 3V3 ۽ GND هيڊر پن
خبردار: · مٿي ڏنل اختيارن مان صرف هڪ استعمال ڪندي بجلي جي فراهمي فراهم ڪرڻ گهرجي، ٻي صورت ۾ بورڊ ۽/يا بجلي جي فراهمي جو ذريعو خراب ٿي سگهي ٿو. · مائڪرو USB پورٽ ذريعي بجلي جي فراهمي جي سفارش ڪئي وئي آهي.

پن جي وضاحت هيٺ ڏنل جدول بورڊ جي ٻنهي پاسن تي پنن جو نالو ۽ ڪم مهيا ڪري ٿو. پردي پن جي ترتيبن لاءِ، مهرباني ڪري ESP32 ڊيٽا شيٽ جو حوالو ڏيو.

نه.

نالو

قسم

1

جي اين ڊي

P

2

3V3

P

فنڪشن گرائونڊ 3.3 وي پاور سپلائي

ايندڙ صفحي تي جاري آهي

ايسپريسف سسٽم

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

آر ايس ٽي

I

ري سيٽ ڪريو؛ هاء: فعال؛ گھٽ: طاقت بند

8

I34

I

GPIO34، ADC1_CH6، RTC_GPIO4

9

I35

I

GPIO35، ADC1_CH7، RTC_GPIO5

10

IO32

I/O

GPIO32، XTAL_32K_P (32.768 kHz ڪرسٽل آسيليٽر ان پٽ)،

ADC1_CH4، TOUCH9، RTC_GPIO9

11

IO33

I/O

GPIO33, XTAL_32K_N (32.768 kHz ڪرسٽل اوسيليٽر آئوٽ)،

ADC1_CH5، TOUCH8، RTC_GPIO8

12

IO25

I/O

GPIO25، DAC_1، ADC2_CH8، RTC_GPIO6، EMAC_RXD0

13

IO26

I/O

GPIO26، DAC_2، ADC2_CH9، RTC_GPIO7، EMAC_RXD1

14

IO27

I/O

GPIO27، ADC2_CH7، TOUCH7، RTC_GPIO17، EMAC_RX_DV

15

IO14

I/O

GPIO14، ADC2_CH6، TOUCH6، RTC_GPIO16، MTMS، HSPICLK،

HS2_CLK، SD_CLK، EMAC_TXD2

16

5V

P

5V پاور سپلائي

17

IO12

I/O

GPIO12، ADC2_CH5، TOUCH5، RTC_GPIO15، MTDI، HSPIQ،

HS2_DATA2، SD_DATA2، EMAC_TXD3

18

IO13

I/O

GPIO13، ADC2_CH4، TOUCH4، RTC_GPIO14، MTCK، HSPID،

HS2_DATA3، SD_DATA3، EMAC_RX_ER

19

IO15

I/O

GPIO15، ADC2_CH3، ٽچ 3، RTC_GPIO13، MTDO، HSPICS0،

HS2_CMD، SD_CMD، EMAC_RXD3

20

IO2

I/O

جي پي آءِ او 2، اي ڊي سي 2_سي ايڇ 2، ٽچ 2، آر ٽي سي_جي پي آءِ او 12، ايڇ ايس پي آءِ ڊبليو پي،

ايڇ ايس 2_ڊيٽا 0، ايس ڊي_ڊيٽا 0

21

IO0

I/O

GPIO0، ADC2_CH1، TOUCH1، RTC_GPIO11، CLK_OUT1،

EMAC_TX_CLK

22

IO4

I/O

GPIO4، ADC2_CH0، TOUCH0، RTC_GPIO10، HSPIHD،

HS2_DATA1، SD_DATA1، EMAC_TX_ER

23

IO9

I/O

GPIO9، HS1_DATA2، U1RXD، SD_DATA2

24

IO10

I/O

GPIO10، HS1_DATA3، U1TXD، SD_DATA3

25

IO5

I/O

GPIO5، HS1_DATA6، VSPICS0، EMAC_RX_CLK

26

IO18

I/O

GPIO18، HS1_DATA7، VSPICLK

27

IO23

I/O

GPIO23، HS1_STROBE، VSPID

28

IO19

I/O

GPIO19، VSPIQ، U0CTS، EMAC_TXD0

29

IO22

I/O

GPIO22، VSPIWP، U0RTS، EMAC_TXD1

30

IO21

I/O

GPIO21، VSPIHD، EMAC_TX_EN

31

TXD0

I/O

GPIO1، U0TXD، CLK_OUT3، EMAC_RXD2

32

RXD0

I/O

GPIO3، U0RXD، CLK_OUT2

هارڊويئر جي نظرثاني جي تفصيل ڪو به اڳوڻو نسخو موجود ناهي.
لاڳاپيل دستاويز
· ESP32-MINI-1 ۽ ESP32-MINI-1U ڊيٽا شيٽ (PDF) · ESP32-DevKitM-1 اسڪيميٽڪس (PDF) · ESP32-DevKitM-1 PCB لي آئوٽ (PDF) · ESP32-DevKitM-1 لي آئوٽ (DXF) - توهان ڪري سگهو ٿا view اهو آٽو ڊيسڪ سان Viewآن لائن · ESP32 ڊيٽا شيٽ (PDF) · ESP پراڊڪٽ چونڊيندڙ
بورڊ جي ٻين ڊيزائن دستاويزن لاءِ، مهرباني ڪري اسان سان sales@espressif.com تي رابطو ڪريو.

ايسپريسف سسٽم

13 دستاويز جي راءِ جمع ڪرايو

رليز v5.0.9

باب 1. شروع ڪريو
1.2.2 سافٽ ويئر
ESP32 تي ESP-IDF استعمال ڪرڻ شروع ڪرڻ لاءِ، هيٺ ڏنل سافٽ ويئر انسٽال ڪريو: · ESP32 لاءِ ڪوڊ مرتب ڪرڻ لاءِ ٽول چين · ٽولز ٺاهيو - ESP32 لاءِ مڪمل ايپليڪيشن ٺاهڻ لاءِ CMake ۽ Ninja · ESP-IDF جنهن ۾ بنيادي طور تي ESP32 لاءِ API (سافٽ ويئر لائبريريون ۽ سورس ڪوڊ) ۽ ٽول چين کي هلائڻ لاءِ اسڪرپٽ شامل آهن.

1.3 تنصيب
سڀني گهربل سافٽ ويئر کي انسٽال ڪرڻ لاءِ، اسان هن ڪم کي آسان بڻائڻ لاءِ ڪجهه مختلف طريقا پيش ڪريون ٿا. موجود اختيارن مان هڪ چونڊيو.
1.3.1 آئي ڊي اي

نوٽ: اسان توهان جي پسنديده IDE ذريعي ESP-IDF انسٽال ڪرڻ جي سختي سان صلاح ڏيون ٿا.
· ايڪليپس پلگ ان · وي ايس ڪوڊ ايڪسٽينشن

1.3.2 دستي تنصيب
دستي طريقيڪار لاءِ، مھرباني ڪري پنھنجي آپريٽنگ سسٽم جي مطابق چونڊيو.

ايسپريسف سسٽم

14 دستاويز جي راءِ جمع ڪرايو

رليز v5.0.9

باب 1. شروع ڪريو
ونڊوز لاءِ Toolchain جو معياري سيٽ اپ
تعارف ESP-IDF کي ڪجهه ضروري اوزارن کي انسٽال ڪرڻ جي ضرورت آهي ته جيئن توهان سپورٽ ٿيل چپس لاءِ فرم ويئر ٺاهي سگهو. ضروري اوزارن ۾ پٿون، گٽ، ڪراس ڪمپائلر، CMake ۽ ننجا بلڊ ٽولز شامل آهن. ان لاءِ شروعات ڪرڻ لاءِ ڪمانڊ پرامپٽ استعمال ڪرڻ وارا آهيون، پر ESP-IDF انسٽال ٿيڻ کان پوءِ توهان ان جي بدران CMake سپورٽ سان Eclipse پلگ ان يا ٻيو گرافيڪل IDE استعمال ڪري سگهو ٿا. نوٽ: حدون: - ESP-IDF ۽ ESP-IDF ٽولز جو انسٽاليشن رستو 90 اکرن کان وڌيڪ نه هجڻ گهرجي. تمام ڊگهو انسٽاليشن رستو ناڪام بلڊ جو سبب بڻجي سگهي ٿو. - پٿون يا ESP-IDF جي انسٽاليشن رستي ۾ سفيد جاءِ يا قوسين نه هجڻ گهرجن. - پٿون يا ESP-IDF جي انسٽاليشن رستي ۾ خاص اکر (غير ASCII) نه هجڻ گهرجن جيستائين آپريٽنگ سسٽم oUnicode UTF-8psupport سان ترتيب نه ڏنو ويو هجي. سسٽم ايڊمنسٽريٽر ڪنٽرول پينل ذريعي سپورٽ کي فعال ڪري سگھي ٿو - تاريخ، وقت، يا نمبر فارميٽ تبديل ڪريو - انتظامي ٽيب - سسٽم لوڪل تبديل ڪريو - آپشن چيڪ ڪريو oBeta: عالمي ٻولي جي سپورٽ لاءِ يونيڪوڊ UTF-8 استعمال ڪريو p - ٺيڪ آهي ۽ ڪمپيوٽر کي ريبوٽ ڪريو.
ESP-IDF ٽولز انسٽالر ESP-IDFns جي اڳڀرائي کي انسٽال ڪرڻ جو آسان طريقو ESP-IDF ٽولز انسٽالرز مان هڪ ڊائون لوڊ ڪرڻ آهي.

ونڊوز انسٽالر ڊائون لوڊ ڪريو
آن لائن ۽ آف لائن انسٽالر لاءِ استعمال ڪيس ڇا آهي آن لائن انسٽالر تمام ننڍو آهي ۽ ESP-IDF جي سڀني دستياب رليز جي انسٽاليشن جي اجازت ڏئي ٿو. انسٽالر انسٽاليشن جي عمل دوران صرف ضروري انحصارن کي ڊائون لوڊ ڪندو جنهن ۾ Git For Windows شامل آهي. انسٽالر ڊائون لوڊ ٿيل اسٽور ڪري ٿو. fileڪيش ڊاريڪٽري %userpro ۾ sfile٪ ايسپريسف
آف لائن انسٽالر کي ڪنهن به نيٽ ورڪ ڪنيڪشن جي ضرورت ناهي. انسٽالر ۾ سڀئي گهربل انحصار شامل آهن جن ۾ Git For Windows شامل آهن.
انسٽاليشن جا جزا انسٽالر ھيٺ ڏنل جزا استعمال ڪندو آھي:
· ايمبيڊڊ پٿون · ڪراس ڪمپائلر · اوپن او سي ڊي · سي ميڪ ۽ ننجا بلڊ ٽولز · اي ايس پي-آئي ڊي ايف
انسٽالر ESP-IDF سان موجوده ڊاريڪٽري کي ٻيهر استعمال ڪرڻ جي اجازت پڻ ڏئي ٿو. تجويز ڪيل ڊاريڪٽري %userpro آهي.file%Desktopesp-idf جتي %userprofile% توهان جي هوم ڊاريڪٽري آهي.

ايسپريسف سسٽم

15 دستاويز جي راءِ جمع ڪرايو

رليز v5.0.9

باب 1. شروع ڪريو
ESP-IDF ماحول شروع ڪرڻ انسٽاليشن جي عمل جي آخر ۾ توهان آپشن Run ESP-IDF PowerShell Environment يا Run ESP-IDF Command Prompt (cmd.exe) چيڪ ڪري سگهو ٿا. انسٽالر چونڊيل پرامپٽ ۾ ESP-IDF ماحول شروع ڪندو. ESP-IDF PowerShell ماحول هلايو:

شڪل 8: ESP-IDF پاور شيل ماحول کي هلائڻ سان ESP-IDF ٽولز سيٽ اپ مددگار مڪمل ڪرڻ.
ESP-IDF ڪمانڊ پرامپٽ (cmd.exe) هلايو:
ڪمانڊ پرامپٽ استعمال ڪرڻ باقي شروعات جي مرحلن لاءِ، اسان ونڊوز ڪمانڊ پرامپٽ استعمال ڪرڻ وارا آهيون. ESP-IDF ٽولز انسٽالر ESP-IDF ڪمانڊ پرامپٽ لانچ ڪرڻ لاءِ اسٽارٽ مينيو ۾ هڪ شارٽ ڪٽ پڻ ٺاهيندو آهي. هي شارٽ ڪٽ ڪمانڊ پرامپٽ (cmd.exe) لانچ ڪندو آهي ۽ ماحولياتي متغيرن (PATH، IDF_PATH ۽ ٻيا) کي سيٽ اپ ڪرڻ لاءِ export.bat اسڪرپٽ هلائيندو آهي. هن ڪمانڊ پرامپٽ اندر، سڀئي انسٽال ٿيل اوزار موجود آهن. نوٽ ڪريو ته هي شارٽ ڪٽ ESP-IDF ٽولز انسٽالر ۾ چونڊيل ESP-IDF ڊاريڪٽري لاءِ مخصوص آهي. جيڪڏهن توهان وٽ ڪمپيوٽر تي ڪيتريون ئي ESP-IDF ڊاريڪٽريون آهن (مثال طورampلي، ESP-IDF جي مختلف نسخن سان ڪم ڪرڻ لاءِ)، توهان وٽ انهن کي استعمال ڪرڻ جا ٻه آپشن آهن:
1. ESP-IDF ٽولز انسٽالر پاران ٺاهيل شارٽ ڪٽ جي ڪاپي ٺاهيو، ۽ نئين شارٽ ڪٽ جي ڪم ڪندڙ ڊاريڪٽري کي ESP-IDF ڊاريڪٽري ۾ تبديل ڪريو جيڪا توهان استعمال ڪرڻ چاهيو ٿا.
2. متبادل طور تي، cmd.exe هلايو، پوءِ ESP-IDF ڊاريڪٽري ۾ تبديل ڪريو جيڪا توهان استعمال ڪرڻ چاهيو ٿا، ۽ export.bat هلايو. نوٽ ڪريو ته پوئين آپشن جي برعڪس، هن طريقي سان پٿون ۽ گٽ کي PATH ۾ موجود هجڻ جي ضرورت آهي. جيڪڏهن توهان کي پٿون سان لاڳاپيل غلطيون ملن ٿيون يا گٽ نه ملي رهيو آهي، ته پهرين آپشن استعمال ڪريو.
ESP-IDF تي پھريون قدم هاڻي جڏهن ته سڀ ضرورتون پوريون ٿي چڪيون آهن، ايندڙ موضوع توهان جي رهنمائي ڪندو ته توهان جو پهريون منصوبو ڪيئن شروع ڪجي.

ايسپريسف سسٽم

16 دستاويز جي راءِ جمع ڪرايو

رليز v5.0.9

باب 1. شروع ڪريو شڪل 9: ESP-IDF پاور شيل

شڪل 10: ESP-IDF ڪمانڊ پرامپٽ (cmd.exe) هلائڻ سان ESP-IDF ٽولز سيٽ اپ مددگار مڪمل ڪرڻ.

ايسپريسف سسٽم

17 دستاويز جي راءِ جمع ڪرايو

رليز v5.0.9

باب 1. شروع ڪريو

شڪل 11: ESP-IDF ڪمانڊ پرامپٽ

ايسپريسف سسٽم

18 دستاويز جي راءِ جمع ڪرايو

رليز v5.0.9

باب 1. شروع ڪريو
هي گائيڊ ESP-IDF استعمال ڪرڻ جي پهرين مرحلن ۾ توهان جي مدد ڪندو. ESP32 تي هڪ نئون منصوبو شروع ڪرڻ ۽ ڊوائيس آئوٽ پُٽ ٺاهڻ، فليش ڪرڻ ۽ مانيٽر ڪرڻ لاءِ هن گائيڊ تي عمل ڪريو. نوٽ: جيڪڏهن توهان اڃا تائين ESP-IDF انسٽال نه ڪيو آهي، ته مهرباني ڪري انسٽاليشن ڏانهن وڃو ۽ هدايتن تي عمل ڪريو ته جيئن هن گائيڊ کي استعمال ڪرڻ لاءِ گهربل سڀ سافٽ ويئر حاصل ڪري سگهجن.

هڪ پروجيڪٽ شروع ڪريو هاڻي توهان ESP32 لاءِ پنهنجي درخواست تيار ڪرڻ لاءِ تيار آهيو. توهان getstarted/hello_world پروجيڪٽ سان شروع ڪري سگهو ٿا ex کانamples ڊاريڪٽري ESP-IDF ۾.
اهم: ESP-IDF بلڊ سسٽم ESP-IDF يا منصوبن جي رستن ۾ جڳهن کي سپورٽ نٿو ڪري.
پروجيڪٽ get-started/hello_world کي ~/esp ڊاريڪٽري ۾ ڪاپي ڪريو: cd %userprofile٪ ايس پي ايڪس ڪاپي / اي / آءِ ٪ آئي ڊي ايف_پاٿ ٪ ايڪسamplesget-startedhello_world هيلو_دنيا
نوٽ: اڳوڻي جي هڪ حد آهيampاڳ ۾ منصوباamples ڊاريڪٽري ESP-IDF ۾. توهان ڪنهن به منصوبي کي نقل ڪري سگهو ٿا ساڳئي طريقي سان مٿي پيش ڪيل ۽ ان کي هلائي سگهو ٿا. اهو پڻ ممڪن آهي ته اڳوڻي تعمير ڪرڻampپهرين انهن کي نقل ڪرڻ کان سواءِ جاءِ تي.

هاڻي پنهنجي ڊوائيس کي ڪمپيوٽر سان ڳنڍيو ۽ چيڪ ڪريو ته بورڊ ڪهڙي سيريل پورٽ هيٺ نظر اچي رهيو آهي. ونڊوز ۾ سيريل پورٽ جا نالا COM سان شروع ٿين ٿا. جيڪڏهن توهان کي پڪ ناهي ته سيريل پورٽ جو نالو ڪيئن چيڪ ڪجي، مهرباني ڪري مڪمل تفصيل لاءِ ESP32 سان سيريل ڪنيڪشن قائم ڪريو ڏسو.
نوٽ: بندرگاهه جو نالو هٿ ۾ رکو جيئن توهان کي ايندڙ مرحلن ۾ ان جي ضرورت پوندي.

پنھنجي پروجيڪٽ کي ترتيب ڏيو پنھنجي hello_world ڊاريڪٽري ڏانھن وڃو، ESP32 کي ھدف طور مقرر ڪريو، ۽ پروجيڪٽ ڪنفيگريشن يوٽيلٽي مينو ڪنفيگ کي ھلايو.
ونڊوز سي ڊي٪ يوزر پروfile%esphello_world idf.py سيٽ-ٽارگيٽ esp32 idf.py مينيو ڪنفيگ
نئين منصوبي کي کولڻ کان پوءِ، توهان کي پهريان idf.py set-target esp32 سان ٽارگيٽ مقرر ڪرڻ گهرجي. نوٽ ڪريو ته منصوبي ۾ موجوده تعميرات ۽ ترتيبون، جيڪڏهن ڪو آهن، هن عمل ۾ صاف ۽ شروع ڪيون وينديون. هن قدم کي ڇڏڻ لاءِ ٽارگيٽ کي ماحولياتي متغير ۾ محفوظ ڪري سگهجي ٿو. اضافي معلومات لاءِ ٽارگيٽ چپ چونڊيو: سيٽ-ٽارگيٽ ڏسو. جيڪڏهن پوئين قدم صحيح طريقي سان ڪيا ويا آهن، ته هيٺ ڏنل مينيو ظاهر ٿيندو: توهان هن مينيو کي پروجيڪٽ جي مخصوص متغيرن کي سيٽ ڪرڻ لاءِ استعمال ڪري رهيا آهيو، مثال طور، وائي فائي نيٽ ورڪ جو نالو ۽ پاسورڊ، پروسيسر جي رفتار، وغيره. مينو ڪنفيگ سان پروجيڪٽ کي سيٽ ڪرڻ ohello_wordp لاءِ ڇڏي سگهجي ٿو، ڇاڪاڻ ته هي اڳوڻيample ڊفالٽ ترتيب سان هلندو آهي.
ڌيان: جيڪڏهن توهان ESP32-SOLO-1 ماڊيول سان ESP32-DevKitC بورڊ استعمال ڪندا آهيو، يا ESP32-MIN1-1(1U) ماڊيول سان ESP32-DevKitM-1 بورڊ استعمال ڪندا آهيو، ته پوءِ مهرباني ڪري فليش ڪرڻ کان اڳ مينيو ڪنفيگ ۾ سنگل ڪور موڊ (CONFIG_FREERTOS_UNICORE) کي فعال ڪريو.amples.

ايسپريسف سسٽم

19 دستاويز جي راءِ جمع ڪرايو

رليز v5.0.9

باب 1. شروع ڪريو

شڪل 12: پروجيڪٽ جي ترتيب - هوم ونڊو
نوٽ: مينيو جا رنگ توهان جي ٽرمينل ۾ مختلف ٿي سگهن ٿا. توهان -style آپشن سان ظاهر تبديل ڪري سگهو ٿا. وڌيڪ معلومات لاءِ مهرباني ڪري idf.py menuconfig -help هلايو.
جيڪڏهن توهان سپورٽ ٿيل ڊولپمينٽ بورڊن مان هڪ استعمال ڪري رهيا آهيو، ته پوءِ توهان بورڊ سپورٽ پيڪيج استعمال ڪندي پنهنجي ڊولپمينٽ کي تيز ڪري سگهو ٿا. وڌيڪ معلومات لاءِ اضافي صلاحون ڏسو.
پروجيڪٽ ٺاهيو: هلائي پروجيڪٽ ٺاهيو:
idf.py تعمير
هي حڪم ايپليڪيشن ۽ سڀني ESP-IDF اجزاء کي گڏ ڪندو، پوء اهو بوٽ لوڊر، ورهاڱي جي ٽيبل، ۽ ايپليڪيشن بائنري ٺاهيندو.
$ idf.py build ڊاريڪٽري /path/to/hello_world/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 پيدا ڪرڻ
پروجيڪٽ بلڊ مڪمل ٿيو. فليش ڪرڻ لاءِ، هي حڪم هلايو: ../../../components/esptool_py/esptool/esptool.py -p (PORT) -b 921600 write_flash -flash_mode dio –flash_size detect –flash_freq 40m 0x10000 build/hello_world. bin build 0x1000 build/bootloader/bootloader.bin 0x8000 build/partition_table/ partition-table.bin يا 'idf.py -p PORT flash' هلايو
جيڪڏهن ڪو نقص نه آهي، ته تعمير ختم ٿي ويندي فرم ویئر بائنري .bin ٺاهي files.

ايسپريسف سسٽم

20 دستاويز جي راءِ جمع ڪرايو

رليز v5.0.9

باب 1. شروع ڪريو
ڊوائيس تي فليش ڪريو جيڪي بائنري توهان هاڻي ٺاهيا آهن (bootloader.bin، partition-table.bin ۽ hello_world.bin) کي پنهنجي ESP32 بورڊ تي هلائي فليش ڪريو: idf.py -p PORT [-b BAUD] فليش
PORT کي پنھنجي ESP32 بورڊن سيريل پورٽ نالي سان تبديل ڪريو. توھان BAUD کي پنھنجي ضرورت مطابق baud ريٽ سان تبديل ڪري فليشر baud ريٽ پڻ تبديل ڪري سگھو ٿا. ڊفالٽ baud ريٽ 460800 آھي. idf.py دليلن بابت وڌيڪ معلومات لاءِ، idf.py ڏسو.
نوٽ: آپشن فليش پاڻمرادو پروجيڪٽ ٺاهيندو ۽ چمڪائيندو آهي، تنهن ڪري idf.py بلڊ هلائڻ ضروري ناهي.

ڇا فليش ڪرڻ دوران مسئلا پيش آيا؟ جيڪڏهن توهان ڏنل حڪم هلائيندا آهيو ۽ oFailed to connectp غلطيون ڏسندا آهيو، ته ان جا ڪيترائي سبب ٿي سگهن ٿا. هڪ سبب esptool.py پاران پيش ايندڙ مسئلا ٿي سگهن ٿا، اهو يوٽيلٽي جيڪو بلڊ سسٽم پاران چپ کي ري سيٽ ڪرڻ، ROM بوٽ لوڊر سان رابطو ڪرڻ، ۽ فليش فرم ويئر کي فليش ڪرڻ لاءِ سڏيو ويندو آهي. ڪوشش ڪرڻ لاءِ هڪ سادو حل هيٺ ڏنل بيان ڪيل مينوئل ري سيٽ آهي، ۽ جيڪڏهن اهو مدد نٿو ڪري ته توهان ٽربل شوٽنگ ۾ ممڪن مسئلن بابت وڌيڪ تفصيل ڳولي سگهو ٿا.
esptool.py USB جي DTR ۽ RTS ڪنٽرول لائينن کي سيريل ڪنورٽر چپ ڏانهن، يعني FTDI يا CP210x تي زور ڏيندي ESP32 کي خودڪار طريقي سان ري سيٽ ڪري ٿو (وڌيڪ معلومات لاءِ، ESP32 سان سيريل ڪنيڪشن قائم ڪريو ڏسو). DTR ۽ RTS ڪنٽرول لائينون موڙ ۾ ESP32 جي GPIO0 ۽ CHIP_PU (EN) پنن سان ڳنڍيل آهن، اهڙي طرح وول ۾ تبديليون اچن ٿيون.tagDTR ۽ RTS جا اي ليول ESP32 کي فرم ويئر ڊائون لوڊ موڊ ۾ بوٽ ڪندا. هڪ اڳوڻي طور تيampلي، ESP32 DevKitC ڊولپمينٽ بورڊ لاءِ اسڪيميٽ چيڪ ڪريو.
عام طور تي، توهان کي سرڪاري esp-idf ڊولپمينٽ بورڊن سان ڪا به پريشاني نه هجڻ گهرجي. جڏهن ته، esptool.py هيٺين حالتن ۾ توهان جي هارڊويئر کي خودڪار طريقي سان ري سيٽ ڪرڻ جي قابل ناهي:
· توهان جي هارڊويئر ۾ DTR ۽ RTS لائينون GPIO0 ۽ CHIP_PU سان ڳنڍيل نه آهن · DTR ۽ RTS لائينون مختلف طرح سان ترتيب ڏنل آهن · اهڙيون ڪا به سيريل ڪنٽرول لائينون بلڪل نه آهن.
توهان جي هارڊويئر جي قسم تي منحصر ڪري، اهو پڻ ممڪن ٿي سگهي ٿو ته توهان جي ESP32 بورڊ کي دستي طور تي فرم ويئر ڊائون لوڊ موڊ (ري سيٽ) ۾ رکيو وڃي.
· ايسپريسف پاران تيار ڪيل ڊولپمينٽ بورڊن لاءِ، هي معلومات لاڳاپيل شروعاتي گائيڊن يا استعمال ڪندڙ گائيڊن ۾ ملي سگهي ٿي. مثال طورample، دستي طور تي ESP-IDF ڊولپمينٽ بورڊ کي ري سيٽ ڪرڻ لاءِ، بوٽ بٽڻ (GPIO0) کي دٻايو ۽ EN بٽڻ (CHIP_PU) کي دٻايو.
· ٻين قسمن جي هارڊويئر لاءِ، GPIO0 کي هيٺ ڇڪڻ جي ڪوشش ڪريو.

عام آپريشن جڏهن چمڪندي، توهان کي هيٺ ڏنل وانگر آئوٽ پُٽ لاگ نظر ايندو:
… esptool.py –chip 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/partition-table.bin 0x1000 bootloader/bootloader.bin 0x10000 hello_world.bin esptool.py v3.0-dev سيريل پورٽ /dev/ttyUSB0 ڪنيڪٽنگ…….._ چپ ESP32D0WDQ6 آهي (نظرثاني 0) خاصيتون: وائي فائي، بي ٽي، ڊول ڪور، ڪوڊنگ اسڪيم ڪو به نه ڪرسٽل 40MHz آهي MAC: 24:0a:c4:05:b9:14 اسٽب اپ لوڊ ڪري رهيو آهي… اسٽب هلائي رهيو آهي… اسٽب هلائي رهيو آهي… باڊ ريٽ کي 460800 ۾ تبديل ڪيو ويو.
(ايندڙ صفحي تي جاري آهي)

ايسپريسف سسٽم

21 دستاويز جي راءِ جمع ڪرايو

رليز v5.0.9

باب 1. شروع ڪريو
(پوئين صفحي کان جاري) فليش سائيز کي ترتيب ڏيڻ… 3072 بائيٽس کي 103 تائين دٻايو ويو… 0x00008000 تي لکڻ… (100٪) 0.0 سيڪنڊن ۾ 0x00008000 تي 3072 بائيٽس (103 ڪمپريسڊ) لکيو (مؤثر 5962.8 kbit/s)… ڊيٽا جو هيش تصديق ٿيل. 26096 بائيٽس کي 15408 تائين دٻايو ويو… 0x00001000 تي لکڻ… (100٪) 0.4 سيڪنڊن ۾ 0x00001000 تي 26096 بائيٽس (15408 ڪمپريسڊ) لکيو (مؤثر 546.7 kbit/s)… ڊيٽا جو هيش تصديق ٿيل. 147104 بائيٽس کي 77364 تائين دٻايو ويو… 0x00010000 تي لکڻ… (20%) 0x00014000 تي لکڻ… (40%) 0x00018000 تي لکڻ… (60%) 0x0001c000 تي لکڻ… (80%) 0x00020000 تي لکڻ… (100%) 1.9 سيڪنڊن ۾ 0x00010000 تي 147104 بائيٽس (77364 ڪمپريسڊ) لکيو ويو (مؤثر 615. 5 kbit/s)… ڊيٽا جي هيش تصديق ٿيل.
ڇڏڻ... RTS پن ذريعي هارڊ ري سيٽ ڪرڻ... ٿي ويو
جيڪڏهن فليش جي عمل جي آخر تائين ڪو مسئلو نه آهي، ته بورڊ ريبوٽ ٿيندو ۽ theohello_worldp ايپليڪيشن شروع ڪندو. جيڪڏهن توهان idf.py هلائڻ جي بدران Eclipse يا VS Code IDE استعمال ڪرڻ چاهيو ٿا، ته Eclipse Plugin، VSCode Extension چيڪ ڪريو.
آئوٽ پُٽ جي نگراني ڪريو. اهو چيڪ ڪرڻ لاءِ ته ohello_worldpis واقعي هلي رهيو آهي، idf.py -p PORT monitor ٽائيپ ڪريو (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 آن 115200 —– ڇڏڻ: Ctrl+] | مينيو: Ctrl+T | مدد: Ctrl+T کان پوءِ Ctrl+H –ets جون 8 2016 00:22:57
پهريون: 0x1 (POWERON_RESET)، بوٽ: 0x13 (SPI_FAST_FLASH_BOOT) ets 8 جون 2016 00:22:57 …
شروعاتي ۽ تشخيصي لاگ مٿي اسڪرول ڪرڻ کان پوءِ، توهان کي ايپليڪيشن پاران oHello world! ڇپيل ڏسڻ گهرجي.
... هيلو دنيا! 10 سيڪنڊن ۾ ٻيهر شروع ٿي رهيو آهي ... هي esp32 چپ آهي جنهن ۾ 2 CPU ڪور (ڪور)، وائي فائي/بي ٽي/بي ايل اي، سلڪون ريويزن 1، 2 ايم بي خارجي فليش آهي گهٽ ۾ گهٽ مفت هيپ سائيز: 298968 بائيٽ 9 سيڪنڊن ۾ ٻيهر شروع ٿي رهيو آهي ... 8 سيڪنڊن ۾ ٻيهر شروع ٿي رهيو آهي ... 7 سيڪنڊن ۾ ٻيهر شروع ٿي رهيو آهي ...
IDF مانيٽر مان نڪرڻ لاءِ شارٽ ڪٽ استعمال ڪريو Ctrl+].

ايسپريسف سسٽم

22 دستاويز جي راءِ جمع ڪرايو

رليز v5.0.9

باب 1. شروع ڪريو
جيڪڏهن IDF مانيٽر اپلوڊ ٿيڻ کان ٿوري دير بعد ناڪام ٿئي ٿو، يا، جيڪڏهن مٿي ڏنل پيغامن جي بدران، توهان کي هيٺ ڏنل بي ترتيب گندگي نظر اچي ٿي، ته پوءِ توهان جو بورڊ ممڪن طور تي 26 MHz ڪرسٽل استعمال ڪري رهيو آهي. گھڻا ڊولپمينٽ بورڊ ڊيزائن 40 MHz استعمال ڪندا آهن، تنهن ڪري ESP-IDF هن فريڪوئنسي کي ڊفالٽ ويليو طور استعمال ڪندو آهي.

جيڪڏهن توهان کي اهڙو مسئلو آهي، ته هيٺ ڏنل ڪم ڪريو: 1. مانيٽر کان ٻاهر نڪرو. 2. مينيو ڪنفيگ ڏانهن واپس وڃو. 3. ڪمپونينٽ ڪنفيگ > هارڊويئر سيٽنگون > مين XTAL ڪنفيگ > مين XTAL فريڪوئنسي ڏانهن وڃو، پوءِ CONFIG_XTAL_FREQ_SEL کي 26 MHz تي تبديل ڪريو. 4. ان کان پوءِ، ايپليڪيشن کي ٻيهر ٺاهيو ۽ فليش ڪريو.
ESP-IDF جي موجوده ورزن ۾، ESP32 پاران سپورٽ ڪيل مکيه XTAL فريڪوئنسيون هن ريت آهن:
· 26 ميگا هرٽز · 40 ميگا هرٽز
نوٽ: توهان idf.py -p PORT فليش مانيٽر هلائي هڪ قدم ۾ بلڊنگ، فليشنگ ۽ مانيٽرنگ کي گڏ ڪري سگهو ٿا.
پڻ ڏسو: · IDF مانيٽر آسان شارٽ ڪٽس ۽ IDF مانيٽر استعمال ڪرڻ بابت وڌيڪ تفصيل لاءِ. · idf.py ڪمانڊ ۽ اختيارن جي مڪمل حوالي لاءِ.
ESP32 سان شروع ڪرڻ لاءِ توهان کي بس اهو ئي گهرجي! هاڻي توهان ڪجهه ٻيو اڳوڻو آزمائڻ لاءِ تيار آهيو.ampيا سڌو سنئون پنهنجون ايپليڪيشنون ٺاهڻ لاءِ وڃو.
اهم: ڪجھ اڳوڻيampاهي ESP32 کي سپورٽ نٿا ڪن ڇاڪاڻ ته گهربل هارڊويئر ESP32 ۾ شامل نه آهي تنهن ڪري ان کي سپورٽ نٿو ڪري سگهجي. جيڪڏهن هڪ ايڪس ٺاهي رهيا آهيوampلي، مھرباني ڪري README چيڪ ڪريو file سپورٽ ٿيل ٽارگيٽ ٽيبل لاءِ. جيڪڏهن هي ESP32 ٽارگيٽ سميت موجود آهي، يا ٽيبل بلڪل موجود ناهي، ته پوءِ اڳوڻيample ESP32 تي ڪم ڪندو.
اضافي تجويزون
اجازت جا مسئلا /dev/ttyUSB0 ڪجھ لينڪس ڊسٽريبيوشنز سان، توهان کي ESP32 کي فليش ڪرڻ وقت پورٽ /dev/ttyUSB0 کولڻ ۾ ناڪامي جو پيغام ملي سگهي ٿو. اهو موجوده صارف کي ڊائل آئوٽ گروپ ۾ شامل ڪندي حل ڪري سگهجي ٿو.
پٿون مطابقت ESP-IDF پٿون 3.7 يا ان کان پوءِ جي سپورٽ ڪري ٿو. اهو سفارش ڪئي وئي آهي ته توهان پنهنجي آپريٽنگ سسٽم کي تازي ورزن ۾ اپ گريڊ ڪريو جيڪو هن ضرورت کي پورو ڪري. ٻين اختيارن ۾ ذريعن کان پٿون جي انسٽاليشن يا پٿون ورزن مئنيجمينٽ سسٽم جهڙوڪ pyenv جو استعمال شامل آهي.
بورڊ سپورٽ پيڪيج سان شروع ڪريو ڪجهه ڊولپمينٽ بورڊن تي پروٽوٽائپنگ کي تيز ڪرڻ لاءِ، توهان بورڊ سپورٽ پيڪيجز (BSPs) استعمال ڪري سگهو ٿا، جيڪو ڪنهن خاص بورڊ جي شروعات کي ڪجهه فنڪشن ڪالن جيترو آسان بڻائي ٿو.

ايسپريسف سسٽم

23 دستاويز جي راءِ جمع ڪرايو

رليز v5.0.9

باب 1. شروع ڪريو

هڪ BSP عام طور تي ڊولپمينٽ بورڊ تي مهيا ڪيل سڀني هارڊويئر حصن کي سپورٽ ڪندو آهي. پن آئوٽ تعريف ۽ شروعاتي ڪمن کان علاوه، هڪ BSP ٻاهرين حصن جهڙوڪ سينسر، ڊسپلي، آڊيو ڪوڊيڪس وغيره لاءِ ڊرائيورن سان گڏ موڪليندو آهي. BSPs IDF ڪمپونينٽ مئنيجر ذريعي ورهايا ويندا آهن، تنهن ڪري اهي IDF ڪمپونينٽ رجسٽري ۾ ڳولي سگهجن ٿا. هتي هڪ مثال آهيampتوهان جي پروجيڪٽ ۾ ESP-WROVER-KIT BSP ڪيئن شامل ڪجي، ان بابت ڄاڻ: idf.py add-dependency esp_wrover_kit
وڌيڪ exampBSP جي استعمال جا تفصيل BSP ex ۾ ملي سگهن ٿاamples فولڊر.
لاڳاپيل دستاويز ترقي يافته استعمال ڪندڙن لاءِ جيڪي انسٽاليشن جي عمل کي ترتيب ڏيڻ چاهين ٿا: · ونڊوز تي ESP-IDF ٽولز کي اپڊيٽ ڪرڻ · ESP32 سان سيريل ڪنيڪشن قائم ڪرڻ · ايڪليپس پلگ ان · VSCode ايڪسٽينشن · IDF مانيٽر
ونڊوز تي ESP-IDF ٽولز کي اپڊيٽ ڪرڻ
اسڪرپٽ استعمال ڪندي ESP-IDF ٽولز انسٽال ڪريو ونڊوز ڪمانڊ پرامپٽ مان، ڊاريڪٽري ڏانهن وڃو جتي ESPIDF انسٽال ٿيل آهي. پوءِ هلايو:
install.bat
پاور شيل لاءِ، ڊاريڪٽري ڏانهن وڃو جتي ESP-IDF انسٽال ٿيل آهي. پوءِ هلايو:
انسٽال ڪريو.ps1
هي ESP-IDF استعمال ڪرڻ لاءِ ضروري اوزارن کي ڊائون لوڊ ۽ انسٽال ڪندو. جيڪڏهن اوزار جو مخصوص نسخو اڳ ۾ ئي انسٽال ٿيل آهي، ته ڪا به ڪارروائي نه ڪئي ويندي. اوزار ESP-IDF اوزار انسٽالر جي عمل دوران مخصوص ڊاريڪٽري ۾ ڊائون لوڊ ۽ انسٽال ڪيا ويندا آهن. ڊفالٽ طور، هي C:Usersusername.espressif آهي.
ايڪسپورٽ اسڪرپٽ استعمال ڪندي ESP-IDF ٽولز کي PATH ۾ شامل ڪريو ESP-IDF ٽولز انسٽالر oESP-IDF ڪمانڊ پرامپٽ لاءِ اسٽارٽ مينيو شارٽ ڪٽ ٺاهي ٿو. هي شارٽ ڪٽ هڪ ڪمانڊ پرامپٽ ونڊو کوليندو آهي جتي سڀئي ٽولز اڳ ۾ ئي موجود آهن.
دستياب. ڪجهه حالتن ۾، توهان شايد ESP-IDF سان ڪمانڊ پرامپٽ ونڊو ۾ ڪم ڪرڻ چاهيندا جيڪو انهي شارٽ ڪٽ استعمال ڪندي شروع نه ڪيو ويو هو. جيڪڏهن اهو معاملو آهي، ته هيٺ ڏنل هدايتن تي عمل ڪريو PATH ۾ ESP-IDF ٽولز شامل ڪرڻ لاءِ. ڪمانڊ پرامپٽ ۾ جتي توهان کي ESP-IDF استعمال ڪرڻ جي ضرورت آهي، ڊاريڪٽري ۾ تبديل ڪريو جتي ESP-IDF انسٽال ٿيل آهي، پوءِ export.bat تي عمل ڪريو:
سي ڊي٪ يوزر پروfile%espesp-idf ايڪسپورٽ.بيٽ
متبادل طور تي پاور شيل ۾ جتي توهان کي ESP-IDF استعمال ڪرڻ جي ضرورت آهي، ڊاريڪٽري ۾ تبديل ڪريو جتي ESP-IDF انسٽال ٿيل آهي، پوءِ export.ps1 تي عمل ڪريو:
سي ڊي ~/esp/esp-idf ايڪسپورٽ.ps1
جڏهن هي ٿي ويندو، ته اوزار هن ڪمانڊ پرامپٽ ۾ موجود هوندا.
ESP32 سان سيريل ڪنيڪشن قائم ڪريو. هي سيڪشن ESP32 ۽ PC جي وچ ۾ سيريل ڪنيڪشن ڪيئن قائم ڪجي ان بابت هدايت فراهم ڪري ٿو.

ايسپريسف سسٽم

24 دستاويز جي راءِ جمع ڪرايو

رليز v5.0.9

باب 1. شروع ڪريو
ESP32 کي پي سي سان ڳنڍيو. USB ڪيبل استعمال ڪندي ESP32 بورڊ کي پي سي سان ڳنڍيو. جيڪڏهن ڊوائيس ڊرائيور خودڪار طريقي سان انسٽال نه ٿئي، ته پوءِ پنهنجي ESP32 بورڊ (يا ٻاهرين ڪنورٽر ڊونگل) تي USB کان سيريل ڪنورٽر چپ جي سڃاڻپ ڪريو، انٽرنيٽ تي ڊرائيور ڳوليو ۽ انهن کي انسٽال ڪريو. هيٺ Espressif پاران تيار ڪيل گھڻن ESP32 بورڊن تي نصب ٿيل USB کان سيريل ڪنورٽر چپس جي فهرست آهي، ڊرائيورن جي لنڪ سان گڏ:
· CP210x: CP210x USB کان UART برج VCP ڊرائيور · FTDI: FTDI ورچوئل COM پورٽ ڊرائيور مهرباني ڪري استعمال ٿيل مخصوص USB کان سيريل ڪنورٽر چپ لاءِ بورڊ يوزر گائيڊ چيڪ ڪريو. مٿي ڏنل ڊرائيور بنيادي طور تي حوالي لاءِ آهن. عام حالتن ۾، ڊرائيورن کي آپريٽنگ سسٽم سان گڏ ڪيو وڃي ۽ بورڊ کي پي سي سان ڳنڍڻ تي خودڪار طريقي سان انسٽال ڪيو وڃي.
ونڊوز تي پورٽ چيڪ ڪريو ونڊوز ڊيوائس مئنيجر ۾ سڃاڻپ ٿيل COM پورٽس جي فهرست چيڪ ڪريو. ESP32 کي ڊسڪنيڪٽ ڪريو ۽ ان کي واپس ڪنيڪٽ ڪريو، تصديق ڪرڻ لاءِ ته ڪهڙو پورٽ لسٽ مان غائب ٿي وڃي ٿو ۽ پوءِ ٻيهر ڏيکاري ٿو. هيٺ ڏنل شڪلون ESP32 DevKitC ۽ ESP32 WROVER KIT لاءِ سيريل پورٽ ڏيکارين ٿيون.

شڪل 13: ونڊوز ڊيوائس مئنيجر ۾ ESP32-DevKitC جو USB کان UART پل

لينڪس ۽ ميڪ او ايس تي پورٽ چيڪ ڪريو پنهنجي ESP32 بورڊ (يا ٻاهرين ڪنورٽر ڊونگل) جي سيريل پورٽ لاءِ ڊوائيس جو نالو چيڪ ڪرڻ لاءِ، هي ڪمانڊ ٻه ڀيرا هلايو، پهرين بورڊ / ڊونگل کي ان پلگ ٿيل سان، پوءِ پلگ ان سان. جيڪو پورٽ ٻئي ڀيري ظاهر ٿئي ٿو اهو اهو آهي جيڪو توهان کي گهربل آهي: لينڪس
ls/dev/tty*
macOS

ايسپريسف سسٽم

25 دستاويز جي راءِ جمع ڪرايو

رليز v5.0.9

باب 1. شروع ڪريو

شڪل 14: ونڊوز ڊيوائس مئنيجر ۾ ESP-WROVER-KIT جا ٻه USB سيريل پورٽ

ايسپريسف سسٽم

26 دستاويز جي راءِ جمع ڪرايو

رليز v5.0.9

باب 1. شروع ڪريو

ls /dev/cu.* نوٽ: macOS استعمال ڪندڙ: جيڪڏهن توهان کي سيريل پورٽ نظر نه ٿو اچي ته پوءِ چيڪ ڪريو ته توهان وٽ USB/سيريل ڊرائيور انسٽال ٿيل آهن. ڊرائيورن جي لنڪ لاءِ سيڪشن ڏسو ESP32 کي PC سان ڳنڍيو. macOS High Sierra (10.13) لاءِ، توهان کي شايد ڊرائيورن کي لوڊ ڪرڻ جي اجازت ڏيڻي پوندي. سسٽم ترجيحات -> سيڪيورٽي ۽ رازداري -> جنرل کوليو ۽ چيڪ ڪريو ته ڇا هتي ڊولپر lp کان oSystem Software بابت ڪو پيغام ڏيکاريل آهي جتي ڊولپر جو نالو Silicon Labs يا FTDI آهي.

لينڪس تي ڊائل آئوٽ ۾ يوزر شامل ڪرڻ هن وقت لاگ ان ٿيل يوزر کي USB ذريعي سيريل پورٽ تائين رسائي پڙهڻ ۽ لکڻ گهرجي ها. گهڻن لينڪس ڊسٽريبيوشن تي، اهو هيٺ ڏنل حڪم سان يوزر کي ڊائل آئوٽ گروپ ۾ شامل ڪندي ڪيو ويندو آهي:
sudo usermod -a -G ڊائل آئوٽ $USER
آرڪ لينڪس تي اهو ڪيو ويو آهي صارف کي شامل ڪندي uucp گروپ ۾ هيٺين حڪم سان:
sudo usermod -a -G uucp $USER
پڪ ڪريو ته توهان سيريل پورٽ لاءِ پڙهڻ ۽ لکڻ جي اجازت کي فعال ڪرڻ لاءِ ٻيهر لاگ ان ٿيو.
سيريل ڪنيڪشن جي تصديق ڪريو هاڻي تصديق ڪريو ته سيريل ڪنيڪشن ڪم ڪري رهيو آهي. توهان اهو سيريل ٽرمينل پروگرام استعمال ڪندي ڪري سگهو ٿا اهو چيڪ ڪندي ته ڇا توهان ESP32 کي ري سيٽ ڪرڻ کان پوءِ ٽرمينل تي ڪو آئوٽ پُٽ حاصل ڪيو آهي. ESP32 تي ڊفالٽ ڪنسول باڊ ريٽ 115200 آهي.
ونڊوز ۽ لينڪس هن اڳوڻي ۾ampاسان PuTTY SSH ڪلائنٽ استعمال ڪنداسين جيڪو ونڊوز ۽ لينڪس ٻنهي لاءِ موجود آهي. توهان ٻيا سيريل پروگرام استعمال ڪري سگهو ٿا ۽ هيٺ ڏنل ڪميونيڪيشن پيرا ميٽر سيٽ ڪري سگهو ٿا. ٽرمينل هلايو ۽ سڃاڻپ ٿيل سيريل پورٽ سيٽ ڪريو. باڊ ريٽ = 115200 (جيڪڏهن ضرورت هجي، ته ان کي استعمال ۾ چپ جي ڊفالٽ باڊ ريٽ ۾ تبديل ڪريو)، ڊيٽا بٽس = 8، اسٽاپ بٽس = 1، ۽ برابري = N. هيٺ ڏنل آهن مثالampونڊوز ۽ لينڪس تي پورٽ ۽ اهڙن ٽرانسميشن پيرا ميٽرز (مختصر ۾ 115200-8-1-N جي طور تي بيان ڪيل) کي سيٽ ڪرڻ جا اسڪرين شاٽ. ياد رکو ته بلڪل ساڳيو سيريل پورٽ چونڊيو جيڪو توهان مٿي ڏنل مرحلن ۾ سڃاڻپ ڪيو آهي. پوءِ ٽرمينل ۾ سيريل پورٽ کوليو ۽ چيڪ ڪريو، جيڪڏهن توهان ESP32 پاران ڪو لاگ پرنٽ ٿيل ڏسو ٿا. لاگ مواد ESP32 تي لوڊ ٿيل ايپليڪيشن تي منحصر هوندو، ڏسو Example آئوٽ پُٽ.
نوٽ: ڪميونيڪيشن جي ڪم ڪرڻ جي تصديق ڪرڻ کان پوءِ سيريل ٽرمينل بند ڪريو. جيڪڏهن توهان ٽرمينل سيشن کليل رکو ٿا، ته سيريل پورٽ بعد ۾ فرم ويئر اپلوڊ ڪرڻ لاءِ دستياب نه هوندو.

macOS توهان کي سيريل ٽرمينل پروگرام انسٽال ڪرڻ جي تڪليف کان بچائڻ لاءِ، macOS اسڪرين ڪمانڊ پيش ڪري ٿو. · جيئن لينڪس ۽ macOS تي چيڪ پورٽ ۾ بحث ڪيو ويو آهي، هلايو:

ls /dev/cu.* · توهان کي ساڳيو آئوٽ پُٽ ڏسڻ گهرجي:

/dev/cu.Bluetooth-انڪمنگ-پورٽ /dev/cu.SLAB_USBtoUART USBtoUART7

/dev/cu.SLAB_

· آئوٽ پُٽ توهان جي پي سي سان ڳنڍيل بورڊن جي قسم ۽ تعداد جي لحاظ کان مختلف هوندو. پوءِ پنهنجي بورڊ جو ڊوائيس نالو چونڊيو ۽ هلايو (جيڪڏهن ضرورت هجي ته، استعمال ۾ چپ جي ڊفالٽ باڊ ريٽ تي o115200p تبديل ڪريو):

اسڪرين /dev/cu.device_name 115200 device_name کي ls /dev/cu.* هلائيندڙ نالي سان تبديل ڪريو.

ايسپريسف سسٽم

27 دستاويز جي راءِ جمع ڪرايو

رليز v5.0.9

باب 1. شروع ڪريو

شڪل 15: ونڊوز تي PuTTY ۾ سيريل ڪميونيڪيشن سيٽنگ ڪرڻ

ايسپريسف سسٽم

28 دستاويز جي راءِ جمع ڪرايو

رليز v5.0.9

باب 1. شروع ڪريو

شڪل 16: لينڪس تي PuTTY ۾ سيريل ڪميونيڪيشن سيٽنگ ڪرڻ

ايسپريسف سسٽم

29 دستاويز جي راءِ جمع ڪرايو

رليز v5.0.9

باب 1. شروع ڪريو
· جيڪو توهان ڳولي رهيا آهيو اهو اسڪرين تي ڏيکاريل ڪجهه لاگ آهي. لاگ جو مواد ESP32 تي لوڊ ٿيل ايپليڪيشن تي منحصر هوندو، ڏسو Example Output. To exit the screen session type Ctrl-A + .
نوٽ: رابطي جي ڪم ڪرڻ جي تصديق ڪرڻ کان پوءِ اسڪرين سيشن مان نڪرڻ نه وساريو. جيڪڏهن توهان اهو ڪرڻ ۾ ناڪام ٿيو ۽ صرف ٽرمينل ونڊو بند ڪيو، ته سيريل پورٽ بعد ۾ فرم ويئر اپلوڊ ڪرڻ لاءِ دستياب نه هوندو.
Exampلي آئوٽ پُٽ هڪ exampهيٺ ڏنل لاگ ڏيکاريل آهي. جيڪڏهن توهان کي ڪجهه به نظر نه اچي ته بورڊ کي ري سيٽ ڪريو. ets جون 8 2016 00:22:57
پهريون: 0x5 (DEEPSLEEP_RESET)، بوٽ: 0x13 (SPI_FAST_FLASH_BOOT) ets 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 پنن کي غير فعال ڪرڻ جي ضرورت آهي. اهو هارڊويئر تي منحصر آهي، گھڻا ڊولپمينٽ بورڊ (سڀني ايسپريسف بورڊن سميت) ۾ هي مسئلو ناهي. مسئلو موجود آهي جيڪڏهن RTS ۽ DTR سڌو سنئون EN ۽ GPIO0 پنن سان وائر ٿيل آهن. وڌيڪ تفصيل لاءِ esptool دستاويز ڏسو.
جيڪڏهن توهان هتي قدم 5 کان آيا آهيو. ESP32 ڊولپمينٽ لاءِ s/w انسٽال ڪرڻ وقت ESP-IDF تي پهريون قدم، ته پوءِ توهان قدم 5 سان جاري رکي سگهو ٿا. ESP-IDF تي پهريون قدم.
IDF مانيٽر IDF مانيٽر بنيادي طور تي هڪ سيريل ٽرمينل پروگرام آهي جيڪو سيريل ڊيٽا کي ٽارگيٽ ڊوائيسز سيريل پورٽ ڏانهن ۽ ان کان رلي ڪري ٿو. اهو ڪجهه IDF-مخصوص خاصيتون پڻ فراهم ڪري ٿو. IDF مانيٽر کي IDF پروجيڪٽ مان idf.py مانيٽر هلائي لانچ ڪري سگهجي ٿو.
ڪي بورڊ شارٽ ڪٽ IDF مانيٽر سان آسان رابطي لاءِ، ٽيبل ۾ ڏنل ڪي بورڊ شارٽ ڪٽ استعمال ڪريو.

ايسپريسف سسٽم

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

عمل

وصف

پروگرام مان نڪرڻ مينيو اسڪيپ ڪي مينيو ڪردار کي پاڻ ريموٽ تي موڪليو
ايگزٽ ڪردار کي پاڻ ريموٽ ڏانهن موڪليو
آر ٽي ايس لائن ذريعي ايپ کي روڪڻ لاءِ ٽارگيٽ کي بوٽ لوڊر ۾ ري سيٽ ڪريو.
آر ٽي ايس ذريعي ٽارگيٽ بورڊ کي ري سيٽ ڪريو
پروجيڪٽ ٺاهيو ۽ فليش ڪريو

صرف ايپ ٺاهيو ۽ فليش ڪريو

اسڪرين تي لاگ آئوٽ پُٽ پرنٽنگ کي روڪيو/ٻيهر شروع ڪريو

لاگ آئوٽ پُٽ کي روڪيو/ٻيهر شروع ڪيو ويو محفوظ ڪيو ويو file

اسٽاپ/ٻيهر شروع ڪرڻ جو وقتamps

ڇپائي

سڀ ڪيبورڊ شارٽ ڪٽ ڏيکاريو

هيٺ ڏنل ڪنجين مان هڪ کي دٻايو ۽ ان جي پٺيان هلو.
ٽارگيٽ کي، RTS لائن ذريعي بوٽ لوڊر ۾ ري سيٽ ڪري ٿو (جيڪڏهن ڳنڍيل هجي)، ته جيئن بورڊ ڪجهه به نه هلي. مفيد جڏهن توهان کي ٻئي ڊوائيس جي شروع ٿيڻ جو انتظار ڪرڻ جي ضرورت هجي. ٽارگيٽ بورڊ کي ري سيٽ ڪري ٿو ۽ RTS لائن ذريعي ايپليڪيشن کي ٻيهر شروع ڪري ٿو (جيڪڏهن ڳنڍيل هجي).
پروجيڪٽ فليش ٽارگيٽ هلائڻ لاءِ idf_monitor کي روڪي ٿو، پوءِ idf_monitor کي ٻيهر شروع ڪري ٿو. ڪو به تبديل ٿيل ذريعو files کي ٻيهر مرتب ڪيو ويندو آهي ۽ پوءِ ٻيهر فليش ڪيو ويندو آهي. جيڪڏهن idf_monitor کي دليل -E سان شروع ڪيو ويو هجي ته Target encrypted-flash هلايو ويندو آهي. ايپ-فليش ٽارگيٽ کي هلائڻ لاءِ idf_monitor کي روڪي ٿو، پوءِ idf_monitor کي ٻيهر شروع ڪري ٿو. فليش ٽارگيٽ وانگر، پر صرف مکيه ايپ ٺاهي وئي آهي ۽ ٻيهر فليش ڪئي وئي آهي. جيڪڏهن idf_monitor کي دليل -E سان شروع ڪيو ويو هجي ته Target encrypted-app-flash هلايو ويندو آهي. چالو ٿيڻ دوران سڀني ايندڙ سيريل ڊيٽا کي رد ڪري ٿو. مانيٽر کي ڇڏڻ کان سواءِ لاگ آئوٽ پُٽ کي جلدي روڪڻ ۽ جانچڻ جي اجازت ڏئي ٿو. هڪ ٺاهي ٿو file پروجيڪٽ ڊاريڪٽري ۾ ۽ آئوٽ پُٽ ان ڏانهن لکيو ويندو آهي file جيستائين اهو ساڳئي ڪيبورڊ شارٽ ڪٽ سان غير فعال نه ٿئي (يا IDF مانيٽر نڪرندو آهي). IDF مانيٽر هڪ ٽائمسٽ پرنٽ ڪري سگهي ٿوamp هر لڪير جي شروعات ۾. ٽائيمسٽamp فارميٽ کي -timest ذريعي تبديل ڪري سگھجي ٿوamp-فارميٽ ڪمانڊ لائن دليل.

پروگرام مان نڪرڻ

هلندڙ ايپليڪيشن ۾ خلل وجهو

IDF مانيٽر کي روڪي ٿو ۽ رن ٽائم تي ايپليڪيشن کي ڊيبگ ڪرڻ لاءِ GDB پروجيڪٽ ڊيبگر هلائي ٿو. ان لاءِ :ref:CONFIG_ESP_SYSTEM_GDBSTUB_RUNTIME آپشن کي فعال ڪرڻ جي ضرورت آهي.

Ctrl-] ۽ Ctrl-T کان سواءِ، ڪنهن به ڪي کي دٻايو ويندو، سيريل پورٽ ذريعي موڪليو ويندو.

IDF جون خاصيتون

خودڪار ايڊريس ڊيڪوڊنگ جڏهن به ESP-IDF 0x4_______ فارم جو هيڪساڊيسيمل ڪوڊ ايڊريس آئوٽ پُٽ ڪندو آهي، IDF مانيٽر سورس ڪوڊ ۾ جڳھ ڳولڻ ۽ فنڪشن جو نالو ڳولڻ لاءِ addr2line_ استعمال ڪندو آهي.
جيڪڏهن هڪ ESP-IDF ايپ ڪريش ٿئي ٿي ۽ گھبراهٽ ٿئي ٿي، ته هڪ رجسٽر ڊمپ ۽ بيڪ ٽريڪ پيدا ٿئي ٿو، جيئن هيٺ ڏنل:

ايسپريسف سسٽم

31 دستاويز جي راءِ جمع ڪرايو

رليز v5.0.9

باب 1. شروع ڪريو

گرو ميڊيٽيشن غلطي قسم StoreProhibited ڪور 0 تي ٿي. استثنا هو

بي ترتيب.

رجسٽر ڊمپ:

PC

: 0x400f360d پي ايس

: 0x00060330 A0

: 0x800dbf56 A1

:

0x3ffb7e00

A2

: 0x3ffb136c A3

: 0x00000005 A4

: 0x00000000 A5

:

0x00000000

A6

: 0x00000000 A7

: 0x00000080 A8

: 0x00000000 A9

:

0x3ffb7dd0

A10

: 0x00000003 A11

: 0x00060f23 A12

: 0x00060f20 A13

:

0x3ffba6d0

A14

: 0x00000047 A15

: 0x0000000f سعودي عرب

: 0x00000019 عذر:

0x0000001d

EXCVADDR: 0x00000000 LBEG: 0x4000c46c قرض: 0x4000c477 LCOUNT:

0x00000000

Backtrace: 0x400f360d:0x3ffb7e00 0x400dbf56:0x3ffb7e20 0x400dbf5e:0x3ffb7e40 0x400dbf82:0x3ffb7e60 0x400d071d:0x3ffb7e90

IDF مانيٽر ڊمپ ۾ وڌيڪ تفصيل شامل ڪري ٿو:

گرو ميڊيٽيشن غلطي قسم StoreProhibited ڪور 0 تي ٿي. استثنا هو

بي ترتيب.

رجسٽر ڊمپ:

PC

: 0x400f360d پي ايس

: 0x00060330 A0

: 0x800dbf56 A1

:

0x3ffb7e00

0x400f360d: /home/gus/esp/32/idf/ex تي ڪجهه ڪرڻ_ڪرڻ_لاءِ_ڪرڻampگهٽ/شروع ڪريو/

هيلو_ورلڊ/مين/./هيلو_ورلڊ_مين.سي:57

(ان لائن ٿيل) انر_ڊونٽ_ڪراش /home/gus/esp/32/idf/ex تيampشروع ڪريو/هيلو_

دنيا/مکيه/./هيلو_ورلڊ_مائين.سي:52

A2

: 0x3ffb136c A3

: 0x00000005 A4

: 0x00000000 A5

:

0x00000000

A6

: 0x00000000 A7

: 0x00000080 A8

: 0x00000000 A9

:

0x3ffb7dd0

A10

: 0x00000003 A11

: 0x00060f23 A12

: 0x00060f20 A13

:

0x3ffba6d0

A14

: 0x00000047 A15

: 0x0000000f سعودي عرب

: 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/get-started/ hello_world/main/./hello_world_main.c:57 (ان لائن ٿيل) inner_dont_crash at /home/gus/esp/32/idf/examples/get-started/hello_ world/main/./hello_world_main.c:52 0x400dbf56: /home/gus/esp/32/idf/ex تي اڃا تائين_ڪرش_نه_ٿيوamples/get-started/hello_ world/main/./hello_world_main.c:47 0x400dbf5e: /home/gus/esp/32/idf/ex تي ڪرش نه ڪريوamples/get-started/hello_world/ main/./hello_world_main.c:42 0x400dbf82: ايپ_مين /home/gus/esp/32/idf/ex تيamples/get-started/hello_world/main/ ./hello_world_main.c:33 0x400d071d: /home/gus/esp/32/idf/components/esp32/./cpu_start.c:254 تي مکيه ڪم

هر ايڊريس کي ڊيڪوڊ ڪرڻ لاءِ، IDF مانيٽر پس منظر ۾ هيٺ ڏنل حڪم هلائي ٿو: xtensa-esp32-elf-addr2line -pfiaC -e build/PROJECT.elf ADDRESS

نوٽ: ماحولياتي متغير ESP_MONITOR_DECODE کي 0 تي سيٽ ڪريو يا مخصوص ڪمانڊ لائن سان idf_monitor.py کي ڪال ڪريو.

ايسپريسف سسٽم

32 دستاويز جي راءِ جمع ڪرايو

رليز v5.0.9

باب 1. شروع ڪريو
آپشن: idf_monitor.py –disable-address-decoding ايڊريس ڊيڪوڊنگ کي غير فعال ڪرڻ لاءِ.
ڪنيڪشن تي ٽارگيٽ ري سيٽ ڊفالٽ طور تي، IDF مانيٽر ٽارگيٽ کي ري سيٽ ڪندو جڏهن ان سان ڳنڍيندو آهي. ٽارگيٽ چپ جو ري سيٽ DTR ۽ RTS سيريل لائينن کي استعمال ڪندي ڪيو ويندو آهي. IDF مانيٽر کي ڪنيڪشن تي ٽارگيٽ کي خودڪار طريقي سان ري سيٽ ڪرڻ کان روڪڻ لاءِ، IDF مانيٽر کي –no-reset آپشن سان ڪال ڪريو (مثال طور، idf_monitor.py –no-reset).
نوٽ: –no-reset آپشن ساڳيو رويو لاڳو ڪندو آهي جيتوڻيڪ IDF مانيٽر کي ڪنهن خاص پورٽ سان ڳنڍيندي هجي (مثال طور، idf.py مانيٽر –no-reset -p [PORT]).
GDBStub سان GDB لانچ ڪرڻ GDBStub هڪ ڪارآمد رن ٽائم ڊيبگنگ فيچر آهي جيڪو ٽارگيٽ تي هلندو آهي ۽ ڊيبگنگ ڪمانڊ حاصل ڪرڻ لاءِ سيريل پورٽ تي هوسٽ سان ڳنڍيندو آهي. GDBStub ڪمانڊ کي سپورٽ ڪري ٿو جهڙوڪ ميموري ۽ متغير پڙهڻ، ڪال اسٽيڪ فريم جي جانچ ڪرڻ وغيره. جيتوڻيڪ GDBStub J کان گهٽ ورسٽائل آهي.TAG ڊيبگنگ، ان کي ڪنهن خاص هارڊويئر جي ضرورت ناهي (جهڙوڪ JTAG USB برج تائين) جيئن ته ڪميونيڪيشن مڪمل طور تي سيريل پورٽ تي ڪيو ويندو آهي. رن ٽائم تي CONFIG_ESP_SYSTEM_PANIC کي GDBStub تي سيٽ ڪري پس منظر ۾ GDBStub هلائڻ لاءِ ٽارگيٽ کي ترتيب ڏئي سگهجي ٿو. GDBStub پس منظر ۾ هلندو جيستائين سيريل پورٽ تي Ctrl+C پيغام نه موڪليو وڃي ۽ GDBStub کي پروگرام کي ٽوڙڻ (يعني، عمل درآمد کي روڪڻ) جو سبب بڻجندو، اهڙي طرح GDBStub کي ڊيبگنگ ڪمانڊز کي سنڀالڻ جي اجازت ڏيندو. ان کان علاوه، پينڪ هينڊلر کي CONFIG_ESP_SYSTEM_PANIC کي پينڪ تي GDBStub تي سيٽ ڪري حادثي تي GDBStub هلائڻ لاءِ ترتيب ڏئي سگهجي ٿو. جڏهن ڪو حادثو ٿئي ٿو، ته GDBStub سيريل پورٽ تي هڪ خاص اسٽرنگ پيٽرن آئوٽ ڪندو ته جيئن اهو ظاهر ٿئي ته اهو هلي رهيو آهي. ٻنهي صورتن ۾ (يعني، Ctrl+C پيغام موڪلڻ، يا خاص اسٽرنگ پيٽرن حاصل ڪرڻ)، IDF مانيٽر خودڪار طريقي سان GDB لانچ ڪندو ته جيئن صارف کي ڊيبگنگ ڪمانڊ موڪلڻ جي اجازت ملي سگهي. GDB نڪرڻ کان پوءِ، ٽارگيٽ RTS سيريل لائن ذريعي ري سيٽ ڪيو ويندو آهي. جيڪڏهن هي لائن ڳنڍيل نه آهي، ته صارف پنهنجو ٽارگيٽ ري سيٽ ڪري سگهن ٿا (بورڊن ري سيٽ بٽڻ کي دٻائڻ سان).
نوٽ: پس منظر ۾، IDF مانيٽر GDB لانچ ڪرڻ لاءِ هيٺ ڏنل حڪم هلائي ٿو:
xtensa-esp32-elf-gdb -ex "سيريل باڊ سيٽ ڪريو BAUD" -ex "ٽارگيٽ ريموٽ پورٽ" -ex انٽرپٽ بلڊ/PROJECT.elf :idf_target: `هيلو نالو چپ`

آئوٽ پُٽ فلٽرنگ IDF مانيٽر کي idf.py مانيٽر –print-filter=”xyz” جي طور تي سڏائي سگهجي ٿو، جتي –print-filter آئوٽ پُٽ فلٽرنگ لاءِ پيرا ميٽر آهي. ڊفالٽ ويليو هڪ خالي اسٽرنگ آهي، جنهن جو مطلب آهي ته هر شيءِ پرنٽ ٿيل آهي.
ڇا پرنٽ ڪجي ان تي پابنديون هڪ سلسلي جي طور تي بيان ڪري سگهجن ٿيونtag>: شيون جتيtag> آهي tag تار ۽ سيٽ {N, E, W, I, D, V, *} مان هڪ ڪردار آهي جيڪو لاگنگ لاءِ هڪ سطح جو حوالو ڏئي ٿو.
مثال طورampلي، پرنٽ_فلٽر=”tag1:W” صرف ESP_LOGW(“ سان لکيل آئوٽ پُٽ سان ملندو ۽ پرنٽ ڪندو آهي.tag1”، …) يا گهٽ لفظي سطح تي، يعني ESP_LOGE(“tag1″، …). وضاحت نه ڪندي a يا وربوس ليول تائين * ڊفالٽ استعمال ڪندي.
نوٽ: لاگنگ لائبريري ذريعي غير ضروري آئوٽ پُٽ کي ڪمپليشن ڪرڻ وقت غير فعال ڪرڻ لاءِ پرائمري لاگنگ استعمال ڪريو. IDF مانيٽر سان آئوٽ پُٽ فلٽرنگ هڪ ثانوي حل آهي جيڪو ايپليڪيشن کي ٻيهر ڪمپل ڪرڻ کان سواءِ فلٽرنگ آپشنز کي ترتيب ڏيڻ لاءِ ڪارآمد ٿي سگهي ٿو.
توهان جي ايپ tags آئوٽ پُٽ فلٽرنگ فيچر سان مطابقت رکڻ لاءِ اسپيس، اسٽرِسڪ *، يا ڪولون : نه هجڻ گهرجن.
جيڪڏهن توهان جي ايپ ۾ آئوٽ پُٽ جي آخري لائن ڪيريج ريٽرن سان نه ملي ته آئوٽ پُٽ فلٽرنگ مونجهارو پيدا ڪري سگهي ٿي، يعني، مانيٽر لائن کي پرنٽ ڪرڻ شروع ڪري ٿو ۽ بعد ۾ اهو معلوم ڪري ٿو ته لائن نه لکڻ گهرجي ها. هي هڪ ڄاتل سڃاتل مسئلو آهي ۽ هميشه ڪيريج ريٽرن شامل ڪرڻ سان ان کان بچي سگهجي ٿو (خاص طور تي جڏهن ڪو به آئوٽ پُٽ فوري طور تي بعد ۾ نه اچي).

ايسپريسف سسٽم

33 دستاويز جي راءِ جمع ڪرايو

رليز v5.0.9

باب 1. شروع ڪريو
Exampفلٽرنگ جي ضابطن جا اصول:
· * ڪنهن به سان ملائڻ لاءِ استعمال ڪري سگهجي ٿو tags. تاهم، اسٽرنگ PRINT_FILTER=”*:I tag1:E" جي حوالي سان tag1 صرف غلطيون پرنٽ ڪري ٿو، ڇاڪاڻ ته قاعدو tag1 کي * جي قاعدي کان وڌيڪ ترجيح آهي.
· ڊفالٽ (خالي) قاعدو *:V جي برابر آهي ڇاڪاڻ ته هر هڪ سان ملندڙ tag وربوس سطح تي يا ان کان گهٽ مطلب هر شيءِ کي ملائڻ.
· “*:N” نه رڳو لاگنگ فنڪشن مان نڪرندڙ آئوٽ پُٽ کي دٻائي ٿو، پر پرنٽ ايف وغيره پاران ٺاهيل پرنٽ کي به. ان کان بچڻ لاءِ، *:E يا وڌيڪ وربوسٽي ليول استعمال ڪريو.
· ضابطا “tag1:V"، "tag1:v"، "tag1:"، "tag1:*"، ۽ "tag1" برابر آهن. · قاعدو "tag1: پ tag1:E" جي برابر آهي "tag1:E" ڇاڪاڻ ته ساڳئي قسم جي ڪنهن به نتيجي ۾ واقع ٿيڻ tag
نالو پوئين کي اوور رائٽ ڪري ٿو. · قاعدو “tag1: آء tag2:W” صرف پرنٽ ڪري ٿو tag1 معلومات جي لفظي سطح تي يا گهٽ ۽ tag2 ڊيڄاريندڙ تي
لفظي سطح يا گهٽ. · قاعدو “tag1: آء tag2: پ tag3:N” بنيادي طور تي پوئين هڪ جي برابر آهي ڇاڪاڻ ته tag3:N بيان ڪري ٿو
اهو tag3 پرنٽ نه ٿيڻ گهرجي. · tag3:N قاعدي ۾ “tag1: آء tag2: پ tag3:N *:V” وڌيڪ معنيٰ خيز آهي ڇاڪاڻ ته بغير tag3: ن
tag3 پيغام ڇپجي سگهيا هئا؛ لاءِ غلطيون tag1 ۽ tag2 کي مخصوص (يا گهٽ) وربوسٽي ليول تي پرنٽ ڪيو ويندو ۽ باقي سڀ ڪجهه ڊفالٽ طور تي پرنٽ ڪيو ويندو.
هڪ وڌيڪ پيچيده فلٽرنگ مثالample هيٺ ڏنل لاگ سنيپٽ بغير ڪنهن فلٽرنگ آپشن جي حاصل ڪيو ويو:
لوڊ: 0x40078000، len: 13564 داخلا 0x40078d4c E (31) esp_image: 0x30000 تي تصوير ۾ غلط جادو بائيٽ آهي W (31) esp_image: 0x30000 تي تصوير ۾ غلط SPI موڊ آهي 255 E (39) بوٽ: فيڪٽري ايپ ورهاڱي بوٽ ڪرڻ جي قابل ناهي I (568) cpu_start: Pro cpu up. I (569) heap_init: شروعات ڪري رهيو آهي. متحرڪ مختص ڪرڻ لاءِ رام موجود آهي: I (603) cpu_start: Pro cpu start يوزر ڪوڊ D (309) light_driver: [light_init، 74]: حيثيت: 1، موڊ: 2 D (318) vfs: esp_vfs_register_fd_range <54 رينج لاءِ ڪامياب آهي؛ 64) ۽ VFS ID 1 I (328) وائي فائي: وائي فائي ڊرائيور ٽاسڪ: 3ffdbf84، prio:23، اسٽيڪ:4096، ڪور=0
فلٽرنگ آپشنز PRINT_FILTER=”wifi esp_image:E light_driver:I” لاءِ قبضو ڪيل آئوٽ پُٽ هيٺ ڏنل آهي:
اي (31) esp_image: 0x30000 تي تصوير ۾ غلط جادو بائيٽ آهي I (328) وائي فائي: وائي فائي ڊرائيور ٽاسڪ: 3ffdbf84، پريو: 23، اسٽيڪ: 4096، ڪور = 0
"PRINT_FILTER="light_driver:D esp_image:N boot:N cpu_start:N vfs:N wifi:N *:V" آپشن هيٺ ڏنل آئوٽ پُٽ ڏيکارين ٿا:
لوڊ: 0x40078000، len: 13564 داخلا 0x40078d4c I (569) heap_init: شروعات ڪري رهيو آهي. متحرڪ مختص ڪرڻ لاءِ رام موجود آهي: D (309) light_driver: [light_init، 74]: حيثيت: 1، موڊ: 2
IDF مانيٽر سان ڄاتل سڃاتل مسئلا
ونڊوز تي مشاهدو ڪيل مسئلا
· ونڊوز ڪنسول جي حدن جي ڪري تير واريون چاٻيون، ۽ ڪجهه ٻيون چاٻيون، GDB ۾ ڪم نه ٿيون ڪن. · ڪڏهن ڪڏهن، جڏهن oidf.pypexits، اهو IDF مانيٽر جي ٻيهر شروع ٿيڻ کان اڳ 30 سيڪنڊن تائين روڪي سگهي ٿو. · جڏهن ogdbpis هلندو آهي، اهو GDBStub سان رابطو ڪرڻ شروع ڪرڻ کان اڳ ٿوري وقت لاءِ روڪي سگهي ٿو.

ايسپريسف سسٽم

34 دستاويز جي راءِ جمع ڪرايو

رليز v5.0.9

باب 1. لينڪس ۽ ميڪ او ايس لاءِ معياري ٽول چين سيٽ اپ شروع ڪريو

انسٽاليشن قدم بہ قدم هي هڪ تفصيلي روڊ ميپ آهي جيڪو توهان کي انسٽاليشن جي عمل مان گذرڻ ۾ مدد ڪندو.
ڊولپمينٽ ماحول کي سيٽ ڪرڻ توهان جي ESP32 لاءِ ESP-IDF سيٽ ڪرڻ لاءِ اهي قدم آهن. · قدم 1. ضروري شيون انسٽال ڪريو · قدم 2. ESP-IDF حاصل ڪريو · قدم 3. اوزار سيٽ اپ ڪريو · قدم 4. ماحولياتي متغير سيٽ اپ ڪريو · قدم 5. ESP-IDF تي پهريون قدم
قدم 1. ضروري شيون انسٽال ڪريو ESP32 سان ESP-IDF استعمال ڪرڻ لاءِ، توهان کي پنهنجي آپريٽنگ سسٽم جي بنياد تي ڪجهه سافٽ ويئر پيڪيجز انسٽال ڪرڻ جي ضرورت آهي. هي سيٽ اپ گائيڊ توهان کي لينڪس ۽ macOS تي ٻڌل سسٽم تي هر شي انسٽال ڪرڻ ۾ مدد ڪندو.
لينڪس استعمال ڪندڙن لاءِ ESP-IDF استعمال ڪندي ڪمپائل ڪرڻ لاءِ توهان کي هيٺيان پيڪيجز حاصل ڪرڻ جي ضرورت پوندي. هلائڻ لاءِ ڪمانڊ ان تي منحصر آهي ته توهان لينڪس جي ڪهڙي ورڇ استعمال ڪري رهيا آهيو:
· اوبنٽو ۽ ڊيبين: sudo apt-get انسٽال ڪريو 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 اپڊيٽ && sudo yum انسٽال ڪريو git wget flex bison gperf python3 cmake ninja-build ccache dfu-util libusbx
CentOS 7 اڃا تائين سپورٽ ٿيل آهي پر CentOS ورجن 8 بهتر استعمال ڪندڙ تجربي لاءِ سفارش ڪئي وئي آهي. · آرڪ: sudo pacman -S –needed gcc git make flex bison gperf python cmake ninja ccache dfu-util libusb
نوٽ: · ESP-IDF سان استعمال لاءِ CMake ورجن 3.16 يا نئون گهربل آهي. جيڪڏهن توهان جي OS ورجن ۾ ڪو مناسب ورجن نه آهي ته هڪ مناسب ورجن انسٽال ڪرڻ لاءِ otools/idf_tools.py انسٽال cmakep هلايو. · جيڪڏهن توهان کي مٿي ڏنل فهرست ۾ پنهنجو لينڪس ڊسٽريبيوشن نظر نه ٿو اچي ته مهرباني ڪري ان جي دستاويزن کي چيڪ ڪريو ته پيڪيج انسٽاليشن لاءِ ڪهڙي ڪمانڊ استعمال ڪجي.
macOS استعمال ڪندڙن لاءِ ESP-IDF macOS تي ڊفالٽ طور تي نصب ٿيل Python جو نسخو استعمال ڪندو. · CMake ۽ Ninja بلڊ انسٽال ڪريو: جيڪڏهن توهان وٽ HomeBrew آهي، ته توهان هلائي سگهو ٿا: brew install cmake ninja dfu-util جيڪڏهن توهان وٽ MacPorts آهي، ته توهان هلائي سگهو ٿا: sudo port install cmake ninja dfu-util ٻي صورت ۾، macOS انسٽاليشن ڊائون لوڊ لاءِ CMake ۽ Ninja هوم پيجز سان صلاح ڪريو.

ايسپريسف سسٽم

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
پوءِ توهان کي جاري رکڻ لاءِ ايڪس ڪوڊ ڪمانڊ لائن ٽولز انسٽال ڪرڻ جي ضرورت پوندي. توهان انهن کي ايڪس ڪوڊ-سيليڪٽ -انسٽال هلائي انسٽال ڪري سگهو ٿا.
ايپل ايم 1 استعمال ڪندڙ جيڪڏهن توهان ايپل ايم 1 پليٽ فارم استعمال ڪندا آهيو ۽ هن طرح جي غلطي ڏسو ٿا: خبردار: ٽول xtensa-esp32-elf ورجن esp-2021r2-patch3-8.4.0 لاءِ ڊاريڪٽري موجود آهي، پر ٽول نه مليو غلطي: ٽول xtensa-esp32-elf وٽ ڪو به انسٽال ٿيل ورجن ناهي. مهرباني ڪري ان کي انسٽال ڪرڻ لاءِ 'install.sh' هلايو.
يا: zsh: ايگزيڪيوٽو ۾ خراب سي پي يو قسم: ~/.espressif/tools/xtensa-esp32-elf/esp-2021r2patch3-8.4.0/xtensa-esp32-elf/bin/xtensa-esp32-elf-gcc
پوءِ توهان کي /usr/sbin/softwareupdate –install-rosetta –agree-to-license هلائي ايپل روزيٽا 2 انسٽال ڪرڻ جي ضرورت پوندي.
پٿون 3 انسٽال ڪرڻ macOS Catalina 10.15 رليز نوٽس جي بنياد تي، پٿون 2.7 جي استعمال جي سفارش نه ڪئي وئي آهي ۽ پٿون 2.7 کي ڊفالٽ طور تي macOS جي مستقبل جي ورزن ۾ شامل نه ڪيو ويندو. چيڪ ڪريو ته توهان وٽ هن وقت ڪهڙو پٿون آهي: پٿون – ورجن
جيڪڏهن آئوٽ پُٽ پٿون 2.7.17 جهڙو آهي، ته پوءِ توهان جو ڊفالٽ انٽرپريٽر پٿون 2.7 آهي. جيڪڏهن ائين آهي، ته اهو پڻ چيڪ ڪريو ته پٿون 3 توهان جي ڪمپيوٽر تي اڳ ۾ ئي انسٽال ٿيل ناهي: پٿون 3 – ورجن
جيڪڏهن مٿيون حڪم غلطي ڏئي ٿو، ته ان جو مطلب آهي ته پٿون 3 انسٽال ٿيل ناهي. هيٺ هڪ اوور آهيview پٿون 3 انسٽال ڪرڻ جا مرحلا.
· هوم بريو سان انسٽال ڪرڻ هن ريت ڪري سگهجي ٿو: brew install python3
· جيڪڏهن توهان وٽ ميڪ پورٽس آهن، ته توهان هلائي سگهو ٿا: sudo port install python38
قدم 2. ESP-IDF حاصل ڪريو ESP32 لاءِ ايپليڪيشن ٺاهڻ لاءِ، توهان کي ESP-IDF ريپوزٽري ۾ Espressif پاران مهيا ڪيل سافٽ ويئر لائبريرين جي ضرورت پوندي. ESP-IDF حاصل ڪرڻ لاءِ، پنهنجي انسٽاليشن ڊاريڪٽري ڏانهن وڃو ۽ گٽ ڪلون سان ريپوزٽري کي ڪلون ڪريو، هيٺ ڏنل هدايتن تي عمل ڪندي، پنهنجي آپريٽنگ سسٽم لاءِ مخصوص. ٽرمينل کوليو، ۽ هيٺيان حڪم هلايو:

ايسپريسف سسٽم

36 دستاويز جي راءِ جمع ڪرايو

رليز v5.0.9

باب 1. شروع ڪريو

mkdir -p ~/esp cd ~/esp git ڪلون -b v5.0.9 – ورجائيندڙ https://github.com/espressif/esp-idf.git
ESP-IDF ڊائون لوڊ ڪيو ويندو ~/esp/esp-idf. ڄاڻ حاصل ڪريو ESP-IDF ورجن بابت ڄاڻ لاءِ ڪھڙو ESP-IDF ورزن ڏنل صورتحال ۾ استعمال ڪرڻ لاءِ.
قدم 3. اوزار سيٽ اپ ڪريو ESP-IDF کان علاوه، توهان کي ESP-IDF پاران استعمال ٿيندڙ اوزارن کي پڻ انسٽال ڪرڻ جي ضرورت آهي، جهڙوڪ ڪمپائلر، ڊيبگر، پٿون پيڪيجز، وغيره، ESP32 کي سپورٽ ڪندڙ منصوبن لاءِ. cd ~/esp/esp-idf ./install.sh esp32
يا فش شيل سي ڊي سان ~/esp/esp-idf ./install.fish esp32
مٿي ڏنل حڪم صرف ESP32 لاءِ اوزار انسٽال ڪن ٿا. جيڪڏهن توهان وڌيڪ چپ ٽارگيٽ لاءِ منصوبا ٺاهڻ جو ارادو رکو ٿا ته پوءِ توهان کي انهن سڀني کي لسٽ ڪرڻ گهرجي ۽ اڳوڻي لاءِ هلائڻ گهرجي.ampلي: سي ڊي ~/esp/esp-idf ./install.sh esp32,esp32s2
يا فش شيل سي ڊي سان ~/esp/esp-idf ./install.fish esp32,esp32s2
سڀني سپورٽ ٿيل ٽارگيٽس لاءِ ٽولز انسٽال ڪرڻ لاءِ مھرباني ڪري ھيٺ ڏنل حڪم ھلايو: cd ~/esp/esp-idf ./install.sh all
يا فش شيل سي ڊي سان ~/esp/esp-idf ./install.fish سڀ
نوٽ: macOS استعمال ڪندڙن لاءِ، جيڪڏهن ڪنهن به قدم دوران اهڙي غلطي ڏيکاري وڃي ٿي:urlکليل غلطي [SSL: CERTIFICATE_VERIFY_FAILED] سرٽيفڪيٽ جي تصديق ناڪام ٿي: مقامي جاري ڪندڙ سرٽيفڪيٽ حاصل ڪرڻ ۾ ناڪام (_ssl.c:xxx)
توهان سرٽيفڪيٽ انسٽال ڪرڻ لاءِ پنهنجي ڪمپيوٽر جي پٿون فولڊر ۾ Install Certificates.command هلائي سگهو ٿا. تفصيل لاءِ، ESP-IDF ٽولز انسٽال ڪرڻ دوران ڊائون لوڊ غلطي ڏسو.

متبادل File ڊائون لوڊ اوزار انسٽالر ڪيترن ئي کي ڊائون لوڊ ڪري ٿو files GitHub Releases سان ڳنڍيل آهن. جيڪڏهن GitHub تائين رسائي سست آهي ته پوءِ GitHub اثاثن جي ڊائون لوڊ لاءِ Espressifns ڊائون لوڊ سرور کي ترجيح ڏيڻ لاءِ هڪ ماحولياتي متغير سيٽ ڪرڻ ممڪن آهي.

نوٽ: هي سيٽنگ صرف GitHub رليز مان ڊائون لوڊ ڪيل انفرادي اوزارن کي ڪنٽرول ڪري ٿي، اهو تبديل نٿو ڪري URLڪنهن به Git ريپوزٽري تائين رسائي حاصل ڪرڻ لاءِ استعمال ڪيو ويندو آهي.

ٽولز انسٽال ڪرڻ وقت ايسپريسف ڊائون لوڊ سرور کي ترجيح ڏيڻ لاءِ، install.sh هلائڻ وقت هيٺ ڏنل حڪمن جي ترتيب استعمال ڪريو:

ايسپريسف سسٽم

37 دستاويز جي راءِ جمع ڪرايو

رليز v5.0.9

باب 1. شروع ڪريو

سي ڊي ~/esp/esp-idf ايڪسپورٽ IDF_GITHUB_ASSETS=”dl.espressif.com/github_assets” ./install.sh
ٽولز جي انسٽاليشن جي رستي کي ترتيب ڏيڻ هن مرحلي ۾ متعارف ڪرايل اسڪرپٽ ESP-IDF پاران گهربل ڪمپائليشن ٽولز کي انسٽال ڪن ٿا جيڪي لينڪس تي يوزر هوم ڊاريڪٽري: $HOME/.espressif اندر آهن. جيڪڏهن توهان ٽولز کي ڪنهن ٻئي ڊاريڪٽري ۾ انسٽال ڪرڻ چاهيو ٿا، ته انسٽاليشن اسڪرپٽ هلائڻ کان اڳ ماحولياتي متغير 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. هيٺ ڏنل حڪم کي ڪاپي ڪري پنهنجي شيلنس پرو ۾ پيسٽ ڪريو.file (.پروfile، .بشرڪ، .زپروfileوغيره)
عرف get_idf='. $HOME/esp/esp-idf/export.sh' 2. ٽرمينل سيشن کي ٻيهر شروع ڪندي يا سورس هلائي ترتيب کي تازو ڪريو [پرو ڏانهن رستوfile],
مثال لاءِample، source ~/.bashrc. هاڻي توهان ڪنهن به ٽرمينل سيشن ۾ esp-idf ماحول کي سيٽ اپ ڪرڻ يا ريفريش ڪرڻ لاءِ get_idf هلائي سگهو ٿا. ٽيڪنيڪل طور تي، توهان پنهنجي شيلن پرو ۾ export.sh شامل ڪري سگهو ٿا.file سڌو سنئون؛ جڏهن ته، ان جي سفارش نه ڪئي وئي آهي. ائين ڪرڻ سان هر ٽرمينل سيشن ۾ IDF ورچوئل ماحول چالو ٿئي ٿو (انهن سميت جتي IDF جي ضرورت ناهي)، ورچوئل ماحول جي مقصد کي شڪست ڏئي ٿو ۽ ممڪن طور تي ٻين سافٽ ويئر کي متاثر ڪري ٿو.
قدم 5. ESP-IDF تي پھريون قدم هاڻي جڏهن ته سڀ ضرورتون پوريون ٿي چڪيون آهن، ايندڙ موضوع توهان جي رهنمائي ڪندو ته توهان جو پهريون منصوبو ڪيئن شروع ڪجي. هي گائيڊ ESP-IDF استعمال ڪندي پهرين قدمن تي توهان جي مدد ڪندو. ESP32 تي هڪ نئون منصوبو شروع ڪرڻ ۽ ڊوائيس آئوٽ پُٽ ٺاهڻ، فليش ڪرڻ ۽ مانيٽر ڪرڻ لاءِ هن گائيڊ تي عمل ڪريو.
نوٽ: جيڪڏهن توهان اڃا تائين ESP-IDF انسٽال نه ڪيو آهي، ته مهرباني ڪري انسٽاليشن ڏانهن وڃو ۽ هدايتن تي عمل ڪريو ته جيئن هن گائيڊ کي استعمال ڪرڻ لاءِ گهربل سڀ سافٽ ويئر حاصل ڪري سگهو.

هڪ پروجيڪٽ شروع ڪريو هاڻي توهان ESP32 لاءِ پنهنجي درخواست تيار ڪرڻ لاءِ تيار آهيو. توهان getstarted/hello_world پروجيڪٽ سان شروع ڪري سگهو ٿا ex کانamples ڊاريڪٽري ESP-IDF ۾.

اهم: ESP-IDF بلڊ سسٽم ESP-IDF يا منصوبن جي رستن ۾ جڳهن کي سپورٽ نٿو ڪري.

پروجيڪٽ get-started/hello_world کي ~/esp ڊاريڪٽري ۾ ڪاپي ڪريو:

ايسپريسف سسٽم

38 دستاويز جي راءِ جمع ڪرايو

رليز v5.0.9

باب 1. شروع ڪريو
cd ~/esp cp -r $IDF_PATH/examples/get-started/hello_world .
نوٽ: اڳوڻي جي هڪ حد آهيampاڳ ۾ منصوباamples ڊاريڪٽري ESP-IDF ۾. توهان ڪنهن به منصوبي کي نقل ڪري سگهو ٿا ساڳئي طريقي سان مٿي پيش ڪيل ۽ ان کي هلائي سگهو ٿا. اهو پڻ ممڪن آهي ته اڳوڻي تعمير ڪرڻampپهرين انهن کي نقل ڪرڻ کان سواءِ جاءِ تي.
پنهنجي ڊوائيس کي ڳنڍيو هاڻي پنهنجي ESP32 بورڊ کي ڪمپيوٽر سان ڳنڍيو ۽ چيڪ ڪريو ته بورڊ ڪهڙي سيريل پورٽ هيٺ نظر اچي رهيو آهي. سيريل پورٽن ۾ هيٺيان نالا ڏيڻ جا نمونا آهن:
· لينڪس: /dev/tty سان شروع ٿيندڙ · macOS: /dev/cu سان شروع ٿيندڙ. جيڪڏهن توهان کي پڪ ناهي ته سيريل پورٽ جو نالو ڪيئن چيڪ ڪجي، مهرباني ڪري مڪمل تفصيل لاءِ ESP32 سان سيريل ڪنيڪشن قائم ڪريو ڏسو.
نوٽ: بندرگاهه جو نالو هٿ ۾ رکو جيئن توهان کي ايندڙ مرحلن ۾ ان جي ضرورت پوندي.
پنھنجي پروجيڪٽ کي ترتيب ڏيو پنھنجي hello_world ڊاريڪٽري ڏانھن وڃو، ESP32 کي ھدف طور مقرر ڪريو، ۽ پروجيڪٽ ڪنفيگريشن يوٽيلٽي مينوڪنفيگ کي ھلايو. cd ~/esp/hello_world idf.py set-target esp32 idf.py menuconfig
نئون منصوبو کولڻ کان پوءِ، توهان کي پهريان idf.py set-target esp32 سان ٽارگيٽ مقرر ڪرڻ گهرجي. نوٽ ڪريو ته منصوبي ۾ موجوده بلڊز ۽ ترتيبون، جيڪڏهن ڪو آهن، هن عمل ۾ صاف ۽ شروع ڪيون وينديون. هن قدم کي بلڪل ڇڏڻ لاءِ ٽارگيٽ کي ماحولياتي متغير ۾ محفوظ ڪري سگهجي ٿو. اضافي معلومات لاءِ ٽارگيٽ چپ چونڊيو: سيٽ-ٽارگيٽ ڏسو. جيڪڏهن پوئين قدم صحيح طريقي سان ڪيا ويا آهن، ته هيٺ ڏنل مينيو ظاهر ٿيندو:

شڪل 17: پروجيڪٽ جي ترتيب - هوم ونڊو توهان هن مينيو کي پروجيڪٽ جي مخصوص متغيرن کي سيٽ اپ ڪرڻ لاءِ استعمال ڪري رهيا آهيو، مثال طور، وائي فائي نيٽ ورڪ جو نالو ۽ پاسورڊ، پروسيسر جي رفتار، وغيره. مينيو ڪنفيگ سان پروجيڪٽ کي سيٽ اپ ڪرڻ کي forohello_worldp ڇڏي سگهجي ٿو، ڇاڪاڻ ته هي مثالampسان گڏ ڊوڙي ٿو

ايسپريسف سسٽم

39 دستاويز جي راءِ جمع ڪرايو

رليز v5.0.9

باب 1. شروع ڪريو
ڊفالٽ ٺاھ جوڙ.
ڌيان: جيڪڏهن توهان ESP32-SOLO-1 ماڊيول سان ESP32-DevKitC بورڊ استعمال ڪندا آهيو، يا ESP32-MIN1-1(1U) ماڊيول سان ESP32-DevKitM-1 بورڊ استعمال ڪندا آهيو، ته پوءِ مهرباني ڪري فليش ڪرڻ کان اڳ مينيو ڪنفيگ ۾ سنگل ڪور موڊ (CONFIG_FREERTOS_UNICORE) کي فعال ڪريو.amples.
نوٽ: مينيو جا رنگ توهان جي ٽرمينل ۾ مختلف ٿي سگهن ٿا. توهان -style آپشن سان ظاهر تبديل ڪري سگهو ٿا. وڌيڪ معلومات لاءِ مهرباني ڪري idf.py menuconfig -help هلايو.
جيڪڏهن توهان سپورٽ ٿيل ڊولپمينٽ بورڊن مان هڪ استعمال ڪري رهيا آهيو، ته پوءِ توهان بورڊ سپورٽ پيڪيج استعمال ڪندي پنهنجي ڊولپمينٽ کي تيز ڪري سگهو ٿا. وڌيڪ معلومات لاءِ اضافي صلاحون ڏسو.
پروجيڪٽ ٺاهيو: هلائي پروجيڪٽ ٺاهيو:
idf.py تعمير
هي حڪم ايپليڪيشن ۽ سڀني ESP-IDF اجزاء کي گڏ ڪندو، پوء اهو بوٽ لوڊر، ورهاڱي جي ٽيبل، ۽ ايپليڪيشن بائنري ٺاهيندو.
$ idf.py build ڊاريڪٽري /path/to/hello_world/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 پيدا ڪرڻ
پروجيڪٽ بلڊ مڪمل ٿيو. فليش ڪرڻ لاءِ، هي حڪم هلايو: ../../../components/esptool_py/esptool/esptool.py -p (PORT) -b 921600 write_flash -flash_mode dio –flash_size detect –flash_freq 40m 0x10000 build/hello_world. bin build 0x1000 build/bootloader/bootloader.bin 0x8000 build/partition_table/ partition-table.bin يا 'idf.py -p PORT flash' هلايو
جيڪڏهن ڪو نقص نه آهي، ته تعمير ختم ٿي ويندي فرم ویئر بائنري .bin ٺاهي files.
ڊوائيس تي فليش ڪريو جيڪي بائنري توهان هاڻي ٺاهيا آهن (bootloader.bin، partition-table.bin ۽ hello_world.bin) کي پنهنجي ESP32 بورڊ تي هلائي فليش ڪريو:
idf.py -p پورٽ [-b BAUD] فليش
PORT کي پنھنجي ESP32 بورڊن سيريل پورٽ نالي سان تبديل ڪريو. توھان BAUD کي پنھنجي ضرورت مطابق baud ريٽ سان تبديل ڪري فليشر baud ريٽ پڻ تبديل ڪري سگھو ٿا. ڊفالٽ baud ريٽ 460800 آھي. idf.py دليلن بابت وڌيڪ معلومات لاءِ، idf.py ڏسو.
نوٽ: آپشن فليش پاڻمرادو پروجيڪٽ ٺاهيندو ۽ چمڪائيندو آهي، تنهن ڪري idf.py بلڊ هلائڻ ضروري ناهي.

ايسپريسف سسٽم

40 دستاويز جي راءِ جمع ڪرايو

رليز v5.0.9

باب 1. شروع ڪريو

ڇا فليش ڪرڻ دوران مسئلا پيش آيا؟ جيڪڏهن توهان ڏنل حڪم هلائيندا آهيو ۽ oFailed to connectp غلطيون ڏسندا آهيو، ته ان جا ڪيترائي سبب ٿي سگهن ٿا. هڪ سبب esptool.py پاران پيش ايندڙ مسئلا ٿي سگهن ٿا، اهو يوٽيلٽي جيڪو بلڊ سسٽم پاران چپ کي ري سيٽ ڪرڻ، ROM بوٽ لوڊر سان رابطو ڪرڻ، ۽ فليش فرم ويئر کي فليش ڪرڻ لاءِ سڏيو ويندو آهي. ڪوشش ڪرڻ لاءِ هڪ سادو حل هيٺ ڏنل بيان ڪيل مينوئل ري سيٽ آهي، ۽ جيڪڏهن اهو مدد نٿو ڪري ته توهان ٽربل شوٽنگ ۾ ممڪن مسئلن بابت وڌيڪ تفصيل ڳولي سگهو ٿا.
esptool.py USB جي DTR ۽ RTS ڪنٽرول لائينن کي سيريل ڪنورٽر چپ ڏانهن، يعني FTDI يا CP210x تي زور ڏيندي ESP32 کي خودڪار طريقي سان ري سيٽ ڪري ٿو (وڌيڪ معلومات لاءِ، ESP32 سان سيريل ڪنيڪشن قائم ڪريو ڏسو). DTR ۽ RTS ڪنٽرول لائينون موڙ ۾ ESP32 جي GPIO0 ۽ CHIP_PU (EN) پنن سان ڳنڍيل آهن، اهڙي طرح وول ۾ تبديليون اچن ٿيون.tagDTR ۽ RTS جا اي ليول ESP32 کي فرم ويئر ڊائون لوڊ موڊ ۾ بوٽ ڪندا. هڪ اڳوڻي طور تيampلي، ESP32 DevKitC ڊولپمينٽ بورڊ لاءِ اسڪيميٽ چيڪ ڪريو.
عام طور تي، توهان کي سرڪاري esp-idf ڊولپمينٽ بورڊن سان ڪا به پريشاني نه هجڻ گهرجي. جڏهن ته، esptool.py هيٺين حالتن ۾ توهان جي هارڊويئر کي خودڪار طريقي سان ري سيٽ ڪرڻ جي قابل ناهي:
· توهان جي هارڊويئر ۾ DTR ۽ RTS لائينون GPIO0 ۽ CHIP_PU سان ڳنڍيل نه آهن · DTR ۽ RTS لائينون مختلف طرح سان ترتيب ڏنل آهن · اهڙيون ڪا به سيريل ڪنٽرول لائينون بلڪل نه آهن.
توهان جي هارڊويئر جي قسم تي منحصر ڪري، اهو پڻ ممڪن ٿي سگهي ٿو ته توهان جي ESP32 بورڊ کي دستي طور تي فرم ويئر ڊائون لوڊ موڊ (ري سيٽ) ۾ رکيو وڃي.
· ايسپريسف پاران تيار ڪيل ڊولپمينٽ بورڊن لاءِ، هي معلومات لاڳاپيل شروعاتي گائيڊن يا استعمال ڪندڙ گائيڊن ۾ ملي سگهي ٿي. مثال طورample، دستي طور تي ESP-IDF ڊولپمينٽ بورڊ کي ري سيٽ ڪرڻ لاءِ، بوٽ بٽڻ (GPIO0) کي دٻايو ۽ EN بٽڻ (CHIP_PU) کي دٻايو.
· ٻين قسمن جي هارڊويئر لاءِ، GPIO0 کي هيٺ ڇڪڻ جي ڪوشش ڪريو.

عام آپريشن جڏهن چمڪندي، توهان کي هيٺ ڏنل وانگر آئوٽ پُٽ لاگ نظر ايندو:
… esptool.py –chip 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/partition-table.bin 0x1000 bootloader/bootloader.bin 0x10000 hello_world.bin esptool.py v3.0-dev سيريل پورٽ /dev/ttyUSB0 ڪنيڪٽنگ…….._ چپ ESP32D0WDQ6 آهي (نظرثاني 0) خاصيتون: وائي فائي، بي ٽي، ڊول ڪور، ڪوڊنگ اسڪيم ڪو به نه ڪرسٽل 40MHz آهي MAC: 24:0a:c4:05:b9:14 اسٽب اپ لوڊ ڪري رهيو آهي… اسٽب هلائي رهيو آهي… اسٽب هلائي رهيو آهي… باڊ ريٽ کي 460800 ۾ تبديل ڪيو ويو. فليش سائيز کي ترتيب ڏيڻ… 3072 بائيٽس کي 103 تائين دٻايو ويو… 0x00008000 تي لکڻ… (100٪) 0.0 سيڪنڊن ۾ 0x00008000 تي 3072 بائيٽس (103 ڪمپريسڊ) لکيو (مؤثر 5962.8 kbit/s)… ڊيٽا جو هيش تصديق ٿيل. 26096 بائيٽس کي 15408 تائين دٻايو ويو… 0x00001000 تي لکڻ… (100٪) 0.4 سيڪنڊن ۾ 0x00001000 تي 26096 بائيٽس (15408 ڪمپريسڊ) لکيو (مؤثر 546.7 kbit/s)… ڊيٽا جو هيش تصديق ٿيل. 147104 بائيٽس کي 77364 تائين دٻايو ويو… 0x00010000 تي لکڻ… (20٪) 0x00014000 تي لکڻ… (40٪) 0x00018000 تي لکڻ… (60٪) 0x0001c000 تي لکڻ… (80٪)
(ايندڙ صفحي تي جاري آهي)

ايسپريسف سسٽم

41 دستاويز جي راءِ جمع ڪرايو

رليز v5.0.9

باب 1. شروع ڪريو
(پوئين صفحي کان جاري) 0x00020000 تي لکڻ… (100%) 1.9 سيڪنڊن ۾ 0x00010000 تي 147104 بائيٽ (77364 ڪمپريس ٿيل) لکيا (مؤثر 615. 5 kbit/s)… ڊيٽا جي هيش تصديق ٿيل.
ڇڏڻ... RTS پن ذريعي هارڊ ري سيٽ ڪرڻ... ٿي ويو
جيڪڏهن فليش جي عمل جي آخر تائين ڪو مسئلو نه آهي، ته بورڊ ريبوٽ ٿيندو ۽ theohello_worldp ايپليڪيشن شروع ڪندو. جيڪڏهن توهان idf.py هلائڻ جي بدران Eclipse يا VS Code IDE استعمال ڪرڻ چاهيو ٿا، ته Eclipse Plugin، VSCode Extension چيڪ ڪريو.
آئوٽ پُٽ جي نگراني ڪريو. اهو چيڪ ڪرڻ لاءِ ته ohello_worldpis واقعي هلي رهيو آهي، idf.py -p PORT monitor ٽائيپ ڪريو (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 آن 115200 —– ڇڏڻ: Ctrl+] | مينيو: Ctrl+T | مدد: Ctrl+T کان پوءِ Ctrl+H –ets جون 8 2016 00:22:57
پهريون: 0x1 (POWERON_RESET)، بوٽ: 0x13 (SPI_FAST_FLASH_BOOT) ets 8 جون 2016 00:22:57 …
شروعاتي ۽ تشخيصي لاگ مٿي اسڪرول ڪرڻ کان پوءِ، توهان کي ايپليڪيشن پاران oHello world! ڇپيل ڏسڻ گهرجي.
... هيلو دنيا! 10 سيڪنڊن ۾ ٻيهر شروع ٿي رهيو آهي ... هي esp32 چپ آهي جنهن ۾ 2 CPU ڪور (ڪور)، وائي فائي/بي ٽي/بي ايل اي، سلڪون ريويزن 1، 2 ايم بي خارجي فليش آهي گهٽ ۾ گهٽ مفت هيپ سائيز: 298968 بائيٽ 9 سيڪنڊن ۾ ٻيهر شروع ٿي رهيو آهي ... 8 سيڪنڊن ۾ ٻيهر شروع ٿي رهيو آهي ... 7 سيڪنڊن ۾ ٻيهر شروع ٿي رهيو آهي ...
IDF مانيٽر مان نڪرڻ لاءِ شارٽ ڪٽ Ctrl+] استعمال ڪريو. جيڪڏهن IDF مانيٽر اپلوڊ ٿيڻ کان ٿوري دير بعد ناڪام ٿئي ٿو، يا، جيڪڏهن مٿي ڏنل پيغامن جي بدران، توهان کي هيٺ ڏنل بي ترتيب گندگي نظر اچي ٿي، ته پوءِ توهان جو بورڊ ممڪن طور تي 26 MHz ڪرسٽل استعمال ڪري رهيو آهي. گھڻا ڊولپمينٽ بورڊ ڊيزائن 40 MHz استعمال ڪندا آهن، تنهن ڪري ESP-IDF هن فريڪوئنسي کي ڊفالٽ ويليو طور استعمال ڪندو آهي.

جيڪڏهن توهان کي اهڙو مسئلو آهي، ته هيٺ ڏنل ڪم ڪريو:
1. مانيٽر کان ٻاهر نڪرو. 2. مينيو ڪنفيگ ڏانهن واپس وڃو. 3. ڪمپونينٽ ڪنفيگ ڏانهن وڃو > هارڊويئر سيٽنگون > مين XTAL ڪنفيگ > مين XTAL
فريڪوئنسي، پوءِ CONFIG_XTAL_FREQ_SEL کي 26 MHz تي تبديل ڪريو. 4. ان کان پوءِ، ايپليڪيشن کي ٻيهر ٺاهيو ۽ فليش ڪريو.

ايسپريسف سسٽم

42 دستاويز جي راءِ جمع ڪرايو

رليز v5.0.9

باب 1. شروع ڪريو
ESP-IDF جي موجوده ورزن ۾، ESP32 پاران سپورٽ ڪيل مکيه XTAL فريڪوئنسيون هن ريت آهن:
· 26 ميگا هرٽز · 40 ميگا هرٽز
نوٽ: توهان idf.py -p PORT فليش مانيٽر هلائي هڪ قدم ۾ بلڊنگ، فليشنگ ۽ مانيٽرنگ کي گڏ ڪري سگهو ٿا.
پڻ ڏسو: · IDF مانيٽر آسان شارٽ ڪٽس ۽ IDF مانيٽر استعمال ڪرڻ بابت وڌيڪ تفصيل لاءِ. · idf.py ڪمانڊ ۽ اختيارن جي مڪمل حوالي لاءِ.
ESP32 سان شروع ڪرڻ لاءِ توهان کي بس اهو ئي گهرجي! هاڻي توهان ڪجهه ٻيو اڳوڻو آزمائڻ لاءِ تيار آهيو.ampيا سڌو سنئون پنهنجون ايپليڪيشنون ٺاهڻ لاءِ وڃو.
اهم: ڪجھ اڳوڻيampاهي ESP32 کي سپورٽ نٿا ڪن ڇاڪاڻ ته گهربل هارڊويئر ESP32 ۾ شامل نه آهي تنهن ڪري ان کي سپورٽ نٿو ڪري سگهجي. جيڪڏهن هڪ ايڪس ٺاهي رهيا آهيوampلي، مھرباني ڪري README چيڪ ڪريو file سپورٽ ٿيل ٽارگيٽ ٽيبل لاءِ. جيڪڏهن هي ESP32 ٽارگيٽ سميت موجود آهي، يا ٽيبل بلڪل موجود ناهي، ته پوءِ اڳوڻيample ESP32 تي ڪم ڪندو.
اضافي تجويزون
اجازت جا مسئلا /dev/ttyUSB0 ڪجھ لينڪس ڊسٽريبيوشنز سان، توهان کي ESP32 کي فليش ڪرڻ وقت پورٽ /dev/ttyUSB0 کولڻ ۾ ناڪامي جو پيغام ملي سگهي ٿو. اهو موجوده صارف کي ڊائل آئوٽ گروپ ۾ شامل ڪندي حل ڪري سگهجي ٿو.
پٿون مطابقت ESP-IDF پٿون 3.7 يا ان کان پوءِ جي سپورٽ ڪري ٿو. اهو سفارش ڪئي وئي آهي ته توهان پنهنجي آپريٽنگ سسٽم کي تازي ورزن ۾ اپ گريڊ ڪريو جيڪو هن ضرورت کي پورو ڪري. ٻين اختيارن ۾ ذريعن کان پٿون جي انسٽاليشن يا پٿون ورزن مئنيجمينٽ سسٽم جهڙوڪ pyenv جو استعمال شامل آهي.
بورڊ سپورٽ پيڪيج سان شروع ڪريو ڪجھ ڊولپمينٽ بورڊن تي پروٽوٽائپنگ کي تيز ڪرڻ لاءِ، توھان بورڊ سپورٽ پيڪيجز (BSPs) استعمال ڪري سگھو ٿا، جيڪو ڪنھن خاص بورڊ جي شروعات کي ڪجھ فنڪشن ڪالن جيترو آسان بڻائي ٿو. هڪ BSP عام طور تي ڊولپمينٽ بورڊ تي مهيا ڪيل سڀني هارڊويئر حصن کي سپورٽ ڪري ٿو. پن آئوٽ تعريف ۽ شروعاتي ڪمن کان علاوه، هڪ BSP ٻاهرين حصن جهڙوڪ سينسر، ڊسپلي، آڊيو ڪوڊيڪس وغيره لاءِ ڊرائيورن سان گڏ موڪلي ٿو. BSPs IDF ڪمپونينٽ مئنيجر ذريعي ورهايا ويندا آهن، تنهنڪري اهي IDF ڪمپونينٽ رجسٽري ۾ ڳولي سگهجن ٿا. هتي هڪ مثال آهيampتوهان جي پروجيڪٽ ۾ ESP-WROVER-KIT BSP ڪيئن شامل ڪجي، ان بابت ڄاڻ: idf.py add-dependency esp_wrover_kit
وڌيڪ exampBSP جي استعمال جا تفصيل BSP ex ۾ ملي سگهن ٿاamples فولڊر.
صلاح: ESP-IDF کي اپڊيٽ ڪرڻ وقت بوقت ESP-IDF کي اپڊيٽ ڪرڻ جي صلاح ڏني وئي آهي، ڇاڪاڻ ته نوان ورجن بگ کي درست ڪن ٿا ۽/يا نوان فيچر فراهم ڪن ٿا. مهرباني ڪري نوٽ ڪريو ته هر ESP-IDF ميجر ۽ مائنر رليز ورزن ۾ هڪ لاڳاپيل سپورٽ پيريڊ هوندو آهي، ۽ جڏهن هڪ رليز برانچ زندگي جي آخر (EOL) جي ويجهو اچي رهي آهي، ته سڀني استعمال ڪندڙن کي حوصلا افزائي ڪئي ويندي آهي ته اهي پنهنجن پروجيڪٽس کي تازين ESP-IDF رليزز ۾ اپ گريڊ ڪن، سپورٽ پيريڊز بابت وڌيڪ ڄاڻڻ لاءِ، ESP-IDF ورزن ڏسو.

ايسپريسف سسٽم

43 دستاويز جي راءِ جمع ڪرايو

رليز v5.0.9

باب 1. شروع ڪريو
اپڊيٽ ڪرڻ جو آسان طريقو اهو آهي ته موجوده esp-idf فولڊر کي ڊليٽ ڪيو وڃي ۽ ان کي ٻيهر ڪلون ڪيو وڃي، جيئن قدم 2 ۾ بيان ڪيل شروعاتي انسٽاليشن کي انجام ڏئي رهيو هجي. ESP-IDF حاصل ڪريو. ٻيو حل اهو آهي ته صرف اهو اپڊيٽ ڪيو وڃي جيڪو تبديل ٿيو آهي. اپڊيٽ جو طريقو ESP-IDF جي ورزن تي منحصر آهي جيڪو توهان استعمال ڪري رهيا آهيو. ESP-IDF کي اپڊيٽ ڪرڻ کان پوءِ، انسٽال اسڪرپٽ کي ٻيهر عمل ڪريو، جيڪڏهن نئين ESP-IDF ورزن کي ٽولز جي مختلف ورزن جي ضرورت هجي. قدم 3 تي هدايتون ڏسو. ٽولز سيٽ اپ ڪريو. هڪ ڀيرو نوان ٽولز انسٽال ٿي وڃن، ايڪسپورٽ اسڪرپٽ استعمال ڪندي ماحول کي اپڊيٽ ڪريو. قدم 4 تي هدايتون ڏسو. ماحول جي متغيرن کي سيٽ اپ ڪريو.
لاڳاپيل دستاويز · ESP32 سان سيريل ڪنيڪشن قائم ڪريو · ايڪليپس پلگ ان · وي ايس ڪوڊ ايڪسٽينشن · آئي ڊي ايف مانيٽر
1.4 پنهنجو پهريون منصوبو ٺاهيو
جيڪڏهن توهان وٽ اڳ ۾ ئي ESP-IDF انسٽال ٿيل آهي ۽ توهان IDE استعمال نه ڪري رهيا آهيو، ته پوءِ توهان پنهنجو پهريون پروجيڪٽ ڪمانڊ لائن تان ٺاهي سگهو ٿا "ونڊوز تي هڪ پروجيڪٽ شروع ڪريو" يا "لينڪس ۽ ميڪ او ايس تي هڪ پروجيڪٽ شروع ڪريو" جي پٺيان.
1.5 ESP-IDF انسٽال ڪريو
جيڪڏهن توهان ESP-IDF کي هٽائڻ چاهيو ٿا، مهرباني ڪري ESP-IDF کي انسٽال ڪريو تي عمل ڪريو.

ايسپريسف سسٽم

44 دستاويز جي راءِ جمع ڪرايو

رليز v5.0.9

باب 2
API حوالو
2.1 API ڪنوينشن
هي دستاويز ESP-IDF ايپليڪيشن پروگرامنگ انٽرفيس (APIs) ۾ عام روايتن ۽ مفروضن کي بيان ڪري ٿو. ESP-IDF ڪيترن ئي قسمن جا پروگرامنگ انٽرفيس مهيا ڪري ٿو:
· پبلڪ هيڊر ۾ اعلان ڪيل سي فنڪشن، اسٽرڪچر، اينيمز، ٽائيپ ڊيفينيشن ۽ پري پروسيسر ميڪرو fileESPIDF حصن جا حصا. پروگرامنگ گائيڊ جي API ريفرنس سيڪشن ۾ مختلف صفحا انهن ڪمن، بناوتن ۽ قسمن جي وضاحت تي مشتمل آهن.
· بلڊ سسٽم جا ڪم، اڳواٽ بيان ڪيل متغير ۽ آپشن. اهي بلڊ سسٽم گائيڊ ۾ دستاويز ٿيل آهن. · Kconfig آپشن ڪوڊ ۽ بلڊ سسٽم ۾ استعمال ڪري سگھجن ٿا (CMakeLists.txt) files. · هوسٽ ٽولز ۽ انهن جا ڪمانڊ لائن پيرا ميٽرز پڻ ESP-IDF انٽرفيس جو حصو آهن. ESP-IDF ۾ خاص طور تي ESP-IDF ۽ ٽئين پارٽي لائبريرين لاءِ لکيل جزا شامل آهن. ڪجهه حالتن ۾، هڪ ESP-IDF مخصوص ريپر ٽئين پارٽي لائبريري ۾ شامل ڪيو ويندو آهي، هڪ انٽرفيس مهيا ڪندو آهي جيڪو يا ته سادو هجي يا بهتر طور تي باقي ESP-IDF سهولتن سان ضم ٿيل هجي. ٻين حالتن ۾، ٽئين پارٽي لائبريري جو اصل API ايپليڪيشن ڊولپرز کي پيش ڪيو ويندو آهي. هيٺيان حصا ESP-IDF APIs ۽ انهن جي استعمال جي ڪجهه پهلوئن جي وضاحت ڪن ٿا.
2.1.1 غلطي ڪرڻ وارو
گھڻا ESP-IDF APIs esp_err_t قسم سان بيان ڪيل غلطي ڪوڊ واپس ڪندا آهن. غلطي سنڀالڻ جي طريقن بابت وڌيڪ معلومات لاءِ غلطي سنڀالڻ وارو سيڪشن ڏسو. غلطي ڪوڊ ريفرنس ۾ ESP-IDF حصن پاران واپس ڪيل غلطي ڪوڊن جي فهرست شامل آهي.
2.1.2 ترتيب جي جوڙجڪ
اهم: ترتيب جي جوڙجڪ جي صحيح شروعات ايپليڪيشن کي ESP-IDF جي مستقبل جي ورزن سان مطابقت ڏيڻ ۾ هڪ اهم حصو آهي.
ESP-IDF ۾ گھڻا شروعاتي يا ترتيب جا ڪم هڪ ترتيب جي جوڙجڪ ڏانهن اشارو ڪندڙ دليل طور وٺن ٿا. مثال طورampاليزي:
45

باب 2. API حوالو

ڪانسٽ esp_timer_create_args_t منهنجو_timer_args = { .ڪال بيڪ = ۽ منهنجو_ٽائمر_ڪال بيڪ، .آرگ = ڪال بيڪ_آرگ، .نالو = "منهنجو_ٽائمر"
}; esp_timer_handle_t منهنجو_ٽائمر; esp_err_t غلطي = esp_timer_create(&منهنجو_ٽائمر_آرگس، &منهنجو_ٽائمر);
شروعاتي ڪم ڪڏهن به پوائنٽر کي ترتيب جي جوڙجڪ ۾ ذخيرو نه ڪندا آهن، تنهنڪري اسٽيڪ تي ساخت کي مختص ڪرڻ محفوظ آهي.
اپليڪيشن کي ساخت جي سڀني شعبن کي شروع ڪرڻ گهرجي. هيٺ ڏنل غلط آهي:
esp_timer_create_args_t my_timer_args; my_timer_args.callback = &my_timer_callback; /* غلط! فيلڊ .arg ۽ .name شروع نه ڪيا ويا آهن */ esp_timer_create(&my_timer_args, &my_timer);
گھڻا ESP-IDF اڳوڻيamples structure initialization لاءِ C99 نامزد initializers استعمال ڪندا آهن، ڇاڪاڻ ته اهي فيلڊز جي ذيلي سيٽ کي سيٽ ڪرڻ ۽ باقي فيلڊز کي صفر-شروع ڪرڻ جو هڪ جامع طريقو مهيا ڪندا آهن:
const esp_timer_create_args_t my_timer_args = { .callback = &my_timer_callback, /* صحيح، فيلڊ .arg ۽ .name صفر-شروع ٿيل آهن */
};
C++ ٻولي C++20 تائين نامزد ٿيل شروعاتي نحو کي سپورٽ نٿي ڪري، جڏهن ته GCC ڪمپائلر جزوي طور تي ان کي ايڪسٽينشن جي طور تي سپورٽ ڪري ٿو. C++ ڪوڊ ۾ ESP-IDF API استعمال ڪندي، توهان هيٺ ڏنل نموني استعمال ڪرڻ تي غور ڪري سگهو ٿا:
esp_timer_create_args_t my_timer_args = {}; /* سڀئي فيلڊ صفر-شروع ٿيل آهن */ my_timer_args.callback = &my_timer_callback;

ڊفالٽ شروعاتي ڪندڙ
ڪجھ ترتيب جي جوڙجڪ لاءِ، ESP-IDF فيلڊز جي ڊفالٽ ويليوز کي سيٽ ڪرڻ لاءِ ميڪرو مهيا ڪري ٿو:
httpd_config_t config = HTTPD_DEFAULT_CONFIG(); /* HTTPD_DEFAULT_CONFIG هڪ مقرر ڪيل شروعاتي ڪندڙ تائين وڌندو آهي.
هاڻي سڀئي فيلڊ ڊفالٽ ويليوز تي سيٽ ٿيل آهن. ڪو به فيلڊ اڃا تائين تبديل ڪري سگهجي ٿو: */ config.server_port = 8081; httpd_handle_t server; esp_err_t err = httpd_start(&server, &config);
جڏهن به ڪنهن خاص ترتيب جي جوڙجڪ لاءِ مهيا ڪيا وڃن ته ڊفالٽ شروعاتي ميڪرو استعمال ڪرڻ جي صلاح ڏني ويندي آهي.

2.1.3 خانگي APIs
ڪجهه هيڊر fileESP-IDF ۾ s ۾ APIs شامل آهن جيڪي صرف ESP-IDF سورس ڪوڊ ۾ استعمال ڪرڻ لاءِ آهن، ۽ ايپليڪيشنن پاران نه. اهڙو هيڊر files اڪثر ڪري پنهنجي نالي يا رستي ۾ private يا esp_private شامل ڪندا آهن. ڪجهه جزا، جهڙوڪ hal ۾ صرف private API شامل هوندا آهن. private APIs کي معمولي يا پيچ رليز جي وچ ۾ غير مطابقت واري طريقي سان هٽائي يا تبديل ڪري سگهجي ٿو.

2.1.4 اڳوڻي ۾ جزاampلي منصوبا
ESP-IDF اڳوڻيamples ۾ ESP-IDF APIs جي استعمال کي ظاهر ڪندڙ مختلف منصوبا شامل آهن. اڳوڻي ۾ ڪوڊ جي نقل کي گهٽائڻ لاءِampگهٽ ۾ گهٽ، ڪجھ عام مددگار حصن جي اندر بيان ڪيا ويا آهن جيڪي ڪيترن ئي اڳوڻين پاران استعمال ڪيا ويندا آهنamples.

ايسپريسف سسٽم

46 دستاويز جي راءِ جمع ڪرايو

رليز v5.0.9

باب 2. API حوالو
ھن ۾ شامل آھن جزا جيڪي واقع آھن

دستاويز / وسيلا

ايسپريسف سسٽمز ESP32 ڊيو ڪٽ سي ڊولپمينٽ بورڊ [pdf] استعمال ڪندڙ ھدايت
ESP32 ڊيو ڪٽ سي ڊولپمينٽ بورڊ، ESP32، ڊيو ڪٽ سي ڊولپمينٽ بورڊ، ڪي ٽي سي ڊولپمينٽ بورڊ، ڊولپمينٽ بورڊ، بورڊ

حوالو

تبصرو ڇڏي ڏيو

توهان جو اي ميل پتو شايع نه ڪيو ويندو. گهربل فيلڊ نشان لڳل آهن *