Мазмұны:

ESP32: 11 қадамдарында отладчикті қалай қолдануға болады (суреттермен)
ESP32: 11 қадамдарында отладчикті қалай қолдануға болады (суреттермен)

Бейне: ESP32: 11 қадамдарында отладчикті қалай қолдануға болады (суреттермен)

Бейне: ESP32: 11 қадамдарында отладчикті қалай қолдануға болады (суреттермен)
Бейне: Передача данных с ESP32 на Android || Android Studio || Часть 11 2024, Шілде
Anonim
ESP32 жүйесінде отладчикті қалай қолдануға болады
ESP32 жүйесінде отладчикті қалай қолдануға болады

Неліктен бұлай әрекет ететінін білу үшін сіз өзіңіздің кодты қарап шығуды қалайсыз ба? Дәстүр бойынша ESP32 жобаларында не болып жатқанын түсіну үшін шексіз баспа мәлімдемесін қосу керек еді, бірақ бұдан да жақсы әдіс бар!

Отладчик-бұл сіздің кодтың белгілі бір бөлімдерінде не болып жатқанын көру және кодты қайта құрастырмай-ақ әр түрлі айнымалы мәндерді сынап көру әдісі, әдетте бұл ендірілген жобаларда бізге қол жетімді емес, бірақ бұл нұсқаулықта мен сізге көрсетемін оны ESP32 -де қалай қолдануға болады.

Бұл нұсқаулықта мен сізге аппараттық құралдарды, бағдарламалық жасақтаманы орнатуды және отладчикті қолданудың қарапайым үлгісін көрсетемін.

Жабдықтар

  • ESP -Prog - бұл отладка үшін қажет тақта

    • Мен сатып алған дәл біреу*
    • $ 5 Арзанырақ, бірақ мен оны тексерген жоқпын*
  • 12, 13, 14, 15 түйреуіштерді ажырататын ESP32

    • 32. Қозғалыс
    • D1 Mini ESP32*
  • [ҚОСЫМША] Қалпына келтіру қалқаны Мен Tindie -де сатамын

    • 32
    • D1 Mini ESP32

* = Серіктестік сілтеме

1 -қадам: Бейнені қараңыз

Image
Image

Егер сіз оны тексергіңіз келсе, менде осы тақырыпта бейне бар.

Мен өз каналымда әдетте ESP8266 және ESP32 негізіндегі бейнелер түсіремін, сондықтан егер сіз оларды қызықтыратын болсаңыз, қарап шығыңыз!

2 -қадам: аппараттық құрал - бөлшектер мен сымдар

Аппараттық құралдар - бөлшектер мен сымдар
Аппараттық құралдар - бөлшектер мен сымдар
Аппараттық құралдар - бөлшектер мен сымдар
Аппараттық құралдар - бөлшектер мен сымдар
Аппараттық құралдар - бөлшектер мен сымдар
Аппараттық құралдар - бөлшектер мен сымдар

Отладчикті пайдалану үшін сізге тек ESP-Prog және кез келген дерлік ESP32 тақтасы қажет (бұған алдыңғы қадамдағы сілтемелер)

ESP-Prog:

ESP-Prog-бұл ESP32 және ESP8266 чиптерінің өндірушілері espressif жасаған тақта. Ол ESP32 JTAG түйреуіштеріне қосылып, отладчикті қолдануға мүмкіндік береді, оны ESP32 тақталарын бағдарламалау үшін де қолдануға болады, бірақ мен бұл жерде бұл туралы айтпаймын.

ESP32 тақтасы:

Сіз бұл үшін кез келген ESP32 тақтасын қолдана аласыз, ол 12, 13, 14 және 15 болатын JTAG түйреуіштерін бұзады, мен Adafruit қауырсыны Huzzah32 мен D1 Mini 32 тақтасын сынап көрдім, екеуі де жақсы жұмыс істеді.

Есіңізде болсын, сіз эскизде JTAG түйреуіштерін отладчикпен бірге қолдана аласыз, мысалы, Huzzah32 тақтасының кіріктірілген жарық диоды 13-істікшеде орналасқан, сондықтан оны отладтау кезінде пайдалануға болмайды.

Сымдар:

ESP-Prog-ты ESP32-ге қосу үшін жоғарыдағы суретте көрсетілгендей сым бағыттауышын пайдаланыңыз. Егер сіз тиісті түйреуіштерді бірден көрмесеңіз, ESP32 тақтасының электр схемасымен танысыңыз, себебі олар кейде басқа атау схемасын қолданады.

Отладка қалқандары:

Бұл міндетті емес, бірақ мен Tindie-де Huzzah32 мен D1 Mini 32 үшін қалқандар сатамын, бұл ESP-Prog қосуды өте қарапайым етеді, ол IDC коннекторына сәйкес түйреуіштерді ажыратады, оларды таспалы кабельмен тікелей қосуға болады. қалқан және ESP-Prog

3 -қадам: аппараттық құрал - драйверді орнату

Аппараттық құрал - драйверді орнату
Аппараттық құрал - драйверді орнату
Аппараттық құрал - драйверді орнату
Аппараттық құрал - драйверді орнату
Аппараттық құрал - драйверді орнату
Аппараттық құрал - драйверді орнату

ESP-prog-ды жөндеу үшін пайдалану үшін біз оған сәйкес драйверлерді орнатуымыз керек. PlatformIO бұл үшін бірнеше қадамдарды ұсынады, бірақ мен осы нұсқаулықтағы Windows қадамдарын өтемін.

  1. ESP-Prog үшін FTDI драйверлерін осы жерден жүктеңіз және орнатыңыз, оңайлату үшін «орындалатын орнатудың» нұсқасын жүктеу үшін оңға қарай жылжытыңыз.
  2. Zadig құралын осы жерден жүктеңіз және орнатыңыз, бұл бізге отладтау үшін қажет жалпы драйверді орнатуға мүмкіндік береді.
  3. ESP-Prog қосылған кезде Zadig ашыңыз
  4. Zadig қосымшасында «Параметрлер» астындағы «Барлық құрылғыларды тізімдеу» түймесін басыңыз.
  5. Zadig ашылмалы мәзірі толтырылады, «Dual RS232-HS (Interface 0)» опциясын таңдаңыз. Сіз таңдаған интерфейс 0 екеніне көз жеткізіңіз!
  6. Жасыл көрсеткінің оң жағында «WinUSB» таңдалуы керек, содан кейін «Драйверді ауыстыру» түймесін басыңыз.

Бұл аяқталғаннан кейін сіздің драйверлеріңіз пайдалануға дайын болуы керек!

Ескерту: ESP-Prog үшін пайдаланылатын USB портын өзгертсеңіз, 3-6 қадамдарды қайтадан қайталауға тура келуі мүмкін. Егер жөндеу кезінде жоғарыдағы суретте көрсетілгендей қате пайда болса, қадамдарды қайталау қажет.

4 -қадам: Бағдарламалық қамтамасыз ету: PlatformIO орнату

Бағдарламалық қамтамасыз ету: PlatformIO орнату
Бағдарламалық қамтамасыз ету: PlatformIO орнату
Бағдарламалық қамтамасыз ету: PlatformIO орнату
Бағдарламалық қамтамасыз ету: PlatformIO орнату
Бағдарламалық қамтамасыз ету: PlatformIO орнату
Бағдарламалық қамтамасыз ету: PlatformIO орнату

PlatformIO-бұл әр түрлі ендірілген жүйелермен, соның ішінде Arduino экожүйесімен дамытуға арналған IDE. Қолдану Arduino IDE сияқты нәрсеге қарағанда күрделірек, бірақ ол өте қуатты және Arduino IDE автоматты түрде аяқтау сияқты қатты жіберіп алатын кейбір ерекшеліктерге ие.

PlatformIO -ға отладчикті қолдану қажет. Егер сіз PlatformIO -мен бұрыннан таныс болсаңыз, бірнеше қадамды өткізіп жіберіңіз.

  • PlatformIO.org веб -сайтында берілген сілтеме бойынша Visual Studio кодын (VS коды) жүктеңіз және орнатыңыз
  • VS кодын ашыңыз және кеңейтімдер мәзірін ашыңыз, түйме жоғарыдағы суретте көрсетілген
  • Іздеуге «platformio» теріңіз, оны таңдаңыз және орнату түймесін басыңыз.

5 -қадам: Бағдарламалық қамтамасыз ету: PlatformIO пайдалану

Бағдарламалық қамтамасыз ету: PlatformIO көмегімен
Бағдарламалық қамтамасыз ету: PlatformIO көмегімен
Бағдарламалық қамтамасыз ету: PlatformIO көмегімен
Бағдарламалық қамтамасыз ету: PlatformIO көмегімен
Бағдарламалық қамтамасыз ету: PlatformIO көмегімен
Бағдарламалық қамтамасыз ету: PlatformIO көмегімен

PlatformIO -ны қолдану Arudino IDE -ді қолданудан біршама ерекшеленеді, сондықтан біз бұл қадамда тақтада жұмыс істейтін мысалды алудың негіздерін қарастырамыз.

Мысал ашу:

  1. PlatformIO құралдар тақтасындағы Home түймесін басыңыз (суретте көрсетілгендей)
  2. «Жоба мысалдары» түймесін басыңыз
  3. Espressif 32 бөлімінің астындағы «Arduino-blink» мысалын таңдаңыз

Бұл жыпылықтаудың үлгі жобасын ашады. PlatformIO орналасуы Arduino жобасымен салыстырғанда өте ерекшеленеді, сондықтан негіздерді қарастырайық.

Код қайда?

Сіздің жобаңыздың коды «src» қалтасында сақталады, мысалы, сіз «blink.cpp» файлын көресіз, бұл файл Arduino жобасындағы нобай файлыңызбен (.ino) бірдей.

Мен тақтаны қалай конфигурациялауға болады?

Сіздің жобаңыздың конфигурациялары сіздің жобаңыздағы «platformio.ini» файлында сақталады. Бұл PlatformIO туралы Arduino IDE -ге қарағанда менің сүйікті істерімнің бірі, тақта параметрлерінің эскиздерге байланбағаны маған ешқашан мағынасы болған жоқ.

. Ini мысалында әр түрлі тақталардың анықтамалары бар, бірақ қарапайым болу үшін төменгі екі анықтаманы өшірейік.

COM портын қайда орнатамын?

PlatformIO автоматты түрде дұрыс COM портын табуға тырысады, сондықтан сіз бұл үшін ештеңе орнатпай -ақ құтыла аласыз. Бірақ егер сізде бірнеше COM порттары болса, оларды отладчикті қолданатын болсаңыз, сізге қажет нәрсені орнатудың мағынасы бар деп ойлаймын. Сізде бар құрылғыларды үй қойындысындағы «Құрылғылар» бөлімін басу арқылы көруге болады. сіз «upload_port» конфигурациясын қосу арқылы «platformio.ini» ішінде ESP32 қайсысын орнатуға болады.

Мен кодты қалай жүктеймін?

Жүктеу түймесін басыңыз (белгіше оңға бағытталған көрсеткі) және ол кодты құрастырып, жүктеуі керек. Енді сіздің тақтада жыпылықтайтын жарық диоды болуы керек.

6 -қадам: Отладка: ықтимал банан терісі

Отладка: бананның ықтимал терісі!
Отладка: бананның ықтимал терісі!
Отладка: бананның ықтимал терісі!
Отладка: бананның ықтимал терісі!
Отладка: бананның ықтимал терісі!
Отладка: бананның ықтимал терісі!

Бұл мен дайындаған кезде мені таң қалдырды және сіз оны сынап көргенде шешіледі деп үміттенемін, бірақ мен бұл жерден кету маңызды деп ойладым.

Бұл нұсқаулықты жасау кезінде PlatformIO -ның соңғы нұсқасы 4.3.0 болып табылады және онда отладтауға мүмкіндік беретін қате бар. Бақытымызға орай, біз мәселені шешетін соңғы даму нұсқасына өте оңай жаңарта аламыз.

Негізгі бетте PlatformIO ядросының нұсқасын тексеріңіз, егер ол «4.3.0» болса, келесі қадамдарды орындаңыз.

  1. PlatformIO құралдар тақтасында терминал белгішесін нұқыңыз
  2. Терминал типінде: pio upgrade --dev
  3. RestartVS коды мен PlatfromIO жаңартылуы керек

7 -қадам: Отладка: конфигурация

Отладка: конфигурация
Отладка: конфигурация

Отладуды қосу үшін бізге «PlatofrmIO.ini» файлын өңдеу қажет, оған тек екі нәрсені қосу керек.

debug_tool = esp-prog

Бұл біз қолданатын жөндеу құралын орнатады.

debug_init_break = қатені орнату

Бұл Andress Spiess -тің ESP32 -де отладтау туралы бейнебаянынан білген трюк. Бұл отладчикке біздің қосымшаны орнатуды тоқтатуды айтады.

8 -қадам: Отладка: жөндеуді бастау

Отладка: жөндеуді бастау
Отладка: жөндеуді бастау
Отладка: жөндеуді бастау
Отладка: жөндеуді бастау
Отладка: жөндеуді бастау
Отладка: жөндеуді бастау
Отладка: жөндеуді бастау
Отладка: жөндеуді бастау

Біз оған кіріспес бұрын, біз эскизге шамалы өзгеріс енгіземіз, бұл отладка арқылы не істеуге болатынын көрсетуді жеңілдетеді.

  1. «Int delayTime = 1000;» жаңа айнымалысын жасаңыз. кез келген әдістерден тыс, бұл оны жаһандық айнымалы етеді.
  2. Циклдегі кідіріс қоңырауларының ішіндегі нөмірді осы жаңа айнымалыға ауыстырыңыз: delay (delayTime);

Кодты тақтаға тағы бір рет жүктеңіз, содан кейін жөндеуді бастау үшін құралдар тақтасында «Іске қосу», содан кейін «Отладка жасауды бастау» түймесін басыңыз.

Терминал терезесінде сіз заттардың қозғалысын көресіз, бірақ бұл сәтті болғанын білдірсе де, егер сіз «Отладка консолін» бассаңыз, оның жұмыс істеп тұрғанын көресіз, аяқтауға бірнеше секунд кетеді.

Егер бәрі күткендей болса, сіз баптаудың басында отладчиктің тоқтағанын көресіз.

9 -қадам: Отладка: негізгі қолдану

Отладка: негізгі қолдану
Отладка: негізгі қолдану
Отладка: негізгі қолдану
Отладка: негізгі қолдану
Отладка: негізгі қолдану
Отладка: негізгі қолдану
Отладка: негізгі қолдану
Отладка: негізгі қолдану

Келіңіздер, отладчикпен не істеуге болатынын білейік

Үзіліс нүктелерін құру:

Үзіліс нүктесі - бұл сіздің кодтың нүктесі, онда сіз отладчикті тоқтатқыңыз келеді. Тоқтау нүктесін құру үшін жол нөмірінің сол жағын басыңыз. Демо ретінде цикл әдісіндегі бірінші жолға тоқтау нүктесін қосыңыз.

Үзіліс нүктесінде навигация:

Үзіліс нүктесі арасында ауысу немесе кодтың келесі жолына өту үшін экранның жоғарғы жағында пайда болатын құралдарды қолдануға болады. Біз жалғастырған түймені цикл ішінде жылжыту үшін «жалғастыру» түймесін басыңыз (ойнату түймесіне ұқсайды).

Айнымалы сағаттар:

Айнымалы сағаттар отладчик тоқтау нүктесінде тоқтаған кезде айнымалылардың мәнін бақылауға мүмкіндік береді. Жаңа айнымалы сағатты қосу үшін + белгішесін шертіп, айнымалы атауды енгізуге болады. Демо ретінде алдыңғы қадамда «delayTime» қосқан айнымалы мәнді теріңіз.

Айнымалы қарау құралы:

Сондай -ақ, ағымдағы тоқтау нүктесінде қол жетімді барлық айнымалылар мен олардың мәндерін көруге болады. Мұны демонстрациялау үшін, егер сіз «Жаһандық» бөліміне қарасаңыз, «delayTime» айнымалысын табуыңыз керек.

Айнымалылардың мәнін өңдеу:

Сіз сондай -ақ айнымалылардың мәндерін өңдей аласыз және бұл сіздің кодыңыздың әрекетіне бірден әсер етеді. Мұны көрсету үшін Variable Viewer бөліміндегі delayTime айнымалысын нұқыңыз және мәнді «100» етіп өзгертіңіз. Бұл жұмысты көрсету үшін, жол нөмірінің сол жағын қайтадан шертіп, цикл ішіндегі тоқтау нүктесін өшіріңіз. Үзіліс нүктесінің шарлау жолағындағы жалғастыру түймесін басыңыз. ESP32 құрылғысындағы жарық диоды бұрынғыдан әлдеқайда жылдам жыпылықтауы керек.

10 -қадам: ақауларды жою

Ақаулық себебін іздеу және түзету
Ақаулық себебін іздеу және түзету

Мен тестілеу кезінде ESP32-ке ESP32-ке қосыла алмайтынымды жүктей алмайтынымды анықтадым және бұл жағдайдың себебін анықтай алмадым, себебі мен көбінесе жүктей алмаймын. кез келген проблемалар. Мен ESP32 мен ESP-Prog-ты ажыратып, ESP32-ке кодты жүктеп, содан кейін оларды қайта қосуға болатынын білдім.

11 -қадам: Сілкініс

Менің ойымша, бұл сіздің жобаңызда не болып жатқанын анықтауға көмектесетін құралдар қорабына қосудың керемет құралы.

Егер сіз мұны пайдалы деп тапсаңыз, мен қуаныштымын! Маған төмендегі түсініктемелерде хабарлаңыз, немесе маған және менің Discord серверіндегі басқа да көптеген өндірушілерге қосылыңыз, онда біз осы тақырыпты немесе сізде бар кез келген басқа өндірушіні талқылай аламыз, адамдар бұл жерде өте пайдалы, сондықтан бұл асу үшін тамаша орын шығу

Мен Github демеушілеріне үлкен алғыс айтқым келеді, олар менің ісімді қолдауға көмектеседі, мен оны шынымен бағалаймын. Егер сіз білмесеңіз, Github бірінші жылы демеушілікке сәйкес келеді, сондықтан егер сіз демеушілік жасасаңыз, олар келесі бірнеше айға 100% сәйкес келеді. Оқығаныңыз үшін рахмет!

Ұсынылған: