Sisukord:

Siluri kasutamine ESP32 -s: 11 sammu (piltidega)
Siluri kasutamine ESP32 -s: 11 sammu (piltidega)

Video: Siluri kasutamine ESP32 -s: 11 sammu (piltidega)

Video: Siluri kasutamine ESP32 -s: 11 sammu (piltidega)
Video: Силурийская Гипотеза - Древняя Рептильная Цивилизация на Земле 2024, Juuli
Anonim
Siluri kasutamine ESP32 -s
Siluri kasutamine ESP32 -s

Kas olete kunagi tahtnud piiluda oma koodi sisse, et näha, miks see nii käitub? Traditsiooniliselt oleksite ESP32 projektides pidanud lisama lõputu trükiseavalduse, et proovida toimuvat välja mõelda, kuid on olemas parem viis!

Silur on viis näha, mis toimub teie koodi teatud osades, ja proovida erinevaid muutuja väärtusi ilma koodi uuesti kompileerimata, tavaliselt pole see meil manustatud projektide jaoks saadaval, kuid selles juhendis näitan teile kuidas seda ESP32 -s kasutada.

Selles juhendis näitan teile riistvara seadistamist, tarkvara seadistamist ja lihtsa näite siluri kasutamist.

Tarvikud

  • ESP -Prog - see on silumiseks vajalik plaat

    • Täpselt sellise ostsin*
    • 5 dollarit odavam, kuid ma pole seda testinud*
  • ESP32, mis purustab tihvti 12, 13, 14, 15

    • Adafruit Feather Huzzah32
    • D1 Mini ESP32*
  • [VALIKULINE] Silumiskilbi müün saidil Tindie

    • Sulg Huzzah32
    • D1 Mini ESP32

* = Sidusettevõtte link

Samm: vaadake videot

Image
Image

Mul on sellel teemal video, kui soovite seda vaadata.

Tavaliselt teen oma kanalil ESP8266 ja ESP32 põhiseid videoid, nii et kui olete neist huvitatud, vaadake seda!

Samm: riistvara - osad ja juhtmestik

Riistvara - osad ja juhtmestik
Riistvara - osad ja juhtmestik
Riistvara - osad ja juhtmestik
Riistvara - osad ja juhtmestik
Riistvara - osad ja juhtmestik
Riistvara - osad ja juhtmestik

Siluri kasutamiseks vajate ainult ESP-Progi ja peaaegu kõiki ESP32 tahvleid (lingid neile varasemas etapis)

ESP-Prog:

ESP-Prog on ESP32 ja ESP8266 kiipide tegijate espressifi kujundatud plaat. See ühendub ESP32 JTAG -tihvtidega, et saaksime kasutada silurit. Seda saab kasutada ka ESP32 -plaatide programmeerimiseks, kuid ma ei kata seda siin.

ESP32 juhatus:

Selle jaoks saate kasutada põhimõtteliselt mis tahes ESP32 plaati, kui see purustab JTAG -tihvtid, mis on 12, 13, 14 ja 15. Olen testinud nii Adafruit sulge Huzzah32 kui ka D1 Mini 32 plaati ja mõlemad töötasid hästi.

Pange tähele, et saate silumisseadmega kasutada oma visandis olevaid JTAG-tihvte, näiteks Huzzah32 tahvli sisseehitatud LED on tihvti 13 peal, nii et te ei saa seda silumise ajal kasutada.

Juhtmestik:

ESP-Progi ühendamiseks ESP32-ga kasutage lihtsalt juhtmestiku juhendit, nagu on näidatud ülaltoodud pildil. Kontrollige oma ESP32 plaadi ühendusskeemi, kui te ei näe kohe sobivaid tihvte, kuna mõnikord kasutatakse erinevat nimetusskeemi.

Silumiskilbid:

Need on valikulised, kuid ma müün Tindie's mõningaid kilpe Huzzah32 ja D1 Mini 32 jaoks, mis muudavad ESP-Progi ühendamise tõeliselt lihtsaks, see purustab sobivad tihvtid IDC-pistikuga, mille abil saate lindi kaabli abil otse ühendada kilp ja ESP-Prog

Samm: riistvara - draiveri seadistamine

Riistvara - draiveri seadistamine
Riistvara - draiveri seadistamine
Riistvara - draiveri seadistamine
Riistvara - draiveri seadistamine
Riistvara - draiveri seadistamine
Riistvara - draiveri seadistamine

Selleks, et silumiseks kasutada ESP-progr, peame installima selle jaoks sobivad draiverid. PlatformIO pakub siin mõningaid samme, kuid ma vaatan läbi selle juhendi Windowsi sammud.

  1. Laadige alla ja installige ESP-Progi FTDI draiverid siit, kerige paremale, et hõlbustada "setup executable" versiooni allalaadimist.
  2. Laadige alla ja installige tööriist Zadig siit, see võimaldab meil installida silumiseks vajaliku üldise draiveri.
  3. Kui ESP-Prog on ühendatud, avage Zadig
  4. Klõpsake rakenduse Zadig jaotises "Valikud" nuppu "Loetle kõik seadmed"
  5. Nüüd täidetakse Zadigi rippmenüü, valige suvand "Dual RS232-HS (Interface 0)". Veenduge, et see oleks teie valitud liides 0!
  6. Rohelisest noolest paremal tuleks valida "WinUSB", seejärel klõpsake nuppu "Asenda draiver"

Kui see on lõpetatud, tuleb draiverid kasutamiseks seadistada!

Märkus. Kui muudate ESP-Progi jaoks kasutatavat USB-porti, peate võib-olla kordama samme 3-6. Kui saate silumisel vea, nagu on näidatud ülaltoodud pildil, peate toiminguid kordama.

Samm 4: Tarkvara: PlatformIO installimine

Tarkvara: PlatformIO installimine
Tarkvara: PlatformIO installimine
Tarkvara: PlatformIO installimine
Tarkvara: PlatformIO installimine
Tarkvara: PlatformIO installimine
Tarkvara: PlatformIO installimine

PlatformIO on IDE arendamiseks erinevate varjatud raamistikega, sealhulgas Arduino ökosüsteemiga. Seda on keerulisem kasutada kui midagi sellist nagu Arduino IDE, kuid see on väga võimas ja sellel on mõned funktsioonid, millest Arduino IDE väga puudust tunneb, näiteks automaatne täitmine.

Siluri kasutamiseks on vajalik PlatformIO. Kui olete PlatformIO -ga juba tuttav, jätke paar sammu edasi.

  • Laadige alla ja installige Visual Studio Code (VS Code) saidilt PlatformIO.org antud lingilt
  • Avage VS -kood ja avage laienduste menüü, nupp on ülaltoodud pildil esile tõstetud
  • Sisestage otsingusse "platformio", valige see ja klõpsake nuppu Installi.

Samm 5: Tarkvara: PlatformIO kasutamine

Tarkvara: PlatformIO kasutamine
Tarkvara: PlatformIO kasutamine
Tarkvara: PlatformIO kasutamine
Tarkvara: PlatformIO kasutamine
Tarkvara: PlatformIO kasutamine
Tarkvara: PlatformIO kasutamine

PlatformIO kasutamine on natuke teistsugune kui Arudino IDE kasutamine, nii et selles etapis käsitleme lihtsalt näite tahvlil töötamise põhitõdesid.

Näite avamine:

  1. Klõpsake PlatformIO tööriistariba avalehe nuppu (nagu pildil näidatud)
  2. Klõpsake nuppu "Projekti näited"
  3. Valige jaotises Espressif 32 näide "Arduino-blink"

See avab vilkumise näidisprojekti. PlatformIO paigutus on Arduino projektiga võrreldes üsna erinev, nii et vaatame põhitõed läbi.

Kus on kood?

Teie projekti kood salvestatakse kausta "src", vilkumise näite puhul näete faili "blink.cpp", see fail on sama, mis teie eskiisfail (.ino) Arduino projektis.

Kuidas oma plaati konfigureerida?

Teie projekti konfiguratsioonid hoitakse teie projekti failis „platformio.ini”. See on tegelikult üks minu lemmik asju PlatformIO kohta võrreldes Arduino IDE -ga, minu jaoks ei olnud kunagi mõtet, et tahvli seaded ei ole visanditega seotud.

Näide.ini sisaldab määratlusi mitmele erinevale tahvlile, kuid lihtsuse hoidmiseks kustutame kaks alumist definitsiooni.

Kuhu ma oma COM -pordi seadistan?

PlatformIO püüab tegelikult automaatselt leida õige COM -pordi, mida kasutada, nii et saate tegelikult sellest lahti, et te ei määra midagi. Aga kui teil on silumisseadme kasutamisel mitu COM -porti, siis arvan, et on mõttekas määrata konkreetne, mida vajate. Erinevaid seadmeid näete, kui klõpsate avakaardi jaotisel „Seadmed” ja saate määrata, milline neist on teie ESP32 kaustas "platformio.ini", lisades konfiguratsiooni "upload_port".

Kuidas oma koodi üles laadida?

Klõpsake nuppu Laadi üles (ikoon on paremale suunatud nool) ja see peaks koodi kompileerima ja üles laadima. Nüüd peaks teie plaadil olema vilkuv LED.

6. samm: silumine: potentsiaalne banaaninahk

Silumine: potentsiaalne banaaninahk!
Silumine: potentsiaalne banaaninahk!
Silumine: potentsiaalne banaaninahk!
Silumine: potentsiaalne banaaninahk!
Silumine: potentsiaalne banaaninahk!
Silumine: potentsiaalne banaaninahk!

See oli asi, mis mind selle ettevalmistamise ajal tabas ja loodetavasti saab selle proovimise ajaks korda, kuid pidasin oluliseks siit lahkuda.

Selle juhendi koostamise ajal on PlatformIO uusim versioon 4.3.0 ja sellel on viga, mis on seotud silumise võimalusega. Õnneks saame värskendada üsna hõlpsalt uusimale arendusversioonile, mis lahendab probleemi.

Kontrollige avalehel PlatformIO tuuma versiooni, kui see on "4.3.0", tehke järgmised toimingud.

  1. Klõpsake PlatformIO tööriistaribal terminaliikooni
  2. Terminalitüübis: pio upgrade --dev
  3. RestartVS -i koodi ja PlatfromIO -d tuleks värskendada

7. samm: silumine: seadistamine

Silumine: seadistamine
Silumine: seadistamine

Silumise lubamiseks peame faili "PlatofrmIO.ini" muutma, peame sellele lisama ainult kaks asja.

debug_tool = esp-prog

See määrab silumisvahendi, mida kasutame.

debug_init_break = katkestuse seadistamine

See on trikk, mille õppisime Andress Spiessi videost ESP32 silumise kohta. See käsib siluril meie rakenduse seadistamisel peatuda.

8. samm: silumine: silumise alustamine

Silumine: silumise alustamine
Silumine: silumise alustamine
Silumine: silumise alustamine
Silumine: silumise alustamine
Silumine: silumise alustamine
Silumine: silumise alustamine
Silumine: silumise alustamine
Silumine: silumise alustamine

Enne selle juurde asumist teeme visandis väikese muudatuse, mis hõlbustab silumist, mida saate silumisega teha.

  1. Looge uus muutuja "int delayTime = 1000;" väljaspool mis tahes meetodeid muudab see selle globaalseks muutujaks.
  2. Asendage silmus viipekõnede sees olev number uue muutujaga: delay (delayTime);

Laadige kood uuesti tahvlile ja seejärel silumise alustamiseks klõpsake tööriistaribal nuppu "Käivita" ja seejärel "Alusta silumist"

Näete asju terminali aknas liikumas, kuid isegi kui see kinnitab, et see oli edukas, näete, et kui klõpsate silumiskonsoolil, see töötab endiselt, kulub mõni sekund.

Kui kõik läks ootuspäraselt, näete siluri seadistamise alguses peatumist.

9. samm: silumine: põhikasutus

Silumine: põhikasutus
Silumine: põhikasutus
Silumine: põhikasutus
Silumine: põhikasutus
Silumine: põhikasutus
Silumine: põhikasutus
Silumine: põhikasutus
Silumine: põhikasutus

Vaatame mõningaid põhitõdesid, mida siluriga teha saab

Katkestuspunktide loomine:

Katkestuspunkt on teie koodi punkt, kus soovite siluri peatada. Katkestuspunkti loomiseks klõpsake rea numbrist vasakul. Demona lisage silmusmeetodi esimesele reale katkestuspunkt.

Katkestuspunkti navigeerimine:

Katkestuspunkti vahel liikumiseks või järgmisele koodireale liikumiseks võite kasutada ekraani ülaosas kuvatavaid tööriistu. Vajutage nuppu "Jätka" (näeb välja nagu esitusnupp), et teisaldada äsja loodud katkestuspunkt silmusesse.

Muutuvad kellad:

Muutujakellad võimaldavad teil jälgida muutujate väärtust, kui silur peatatakse katkestuspunktis. Uue muutujakella lisamiseks võite klõpsata + ikoonil ja seejärel lihtsalt sisestada muutuja nime. Tippige demona eelmises etapis lisatud muutuja "delayTime"

Muutujavaatur:

Samuti näete kõiki muutujaid ja nende väärtusi, mis on teie praegusel katkestuspunktil saadaval. Selle demo tegemiseks: kui vaatate jaotist "Globaalne", peaksite leidma muutuja "delayTime".

Muutujate väärtuse muutmine:

Samuti saate muuta muutujate väärtusi ja see mõjutab teie koodide käitumist kohe. Selle demonstreerimiseks klõpsake jaotises Variable Viewer muutuja delayTime ja muutke väärtus "100". Selle toimimise näitamiseks keelake katkestuspunkt silmuse sees, klõpsates uuesti rea numbrist vasakul. Vajutage katkestuspunkti navigeerimisriba jätkamisnuppu. Teie ESP32 LED peaks nüüd vilkuma palju kiiremini kui varem.

10. samm: tõrkeotsing

Tõrkeotsing
Tõrkeotsing

Testimisel avastasin, et mõnikord ei saanud ma ESP32-sse üles laadida, kui see oli ESP-progriga ühendatud, ja ma ei suutnud välja selgitada, miks see nii juhtus, sest enamasti sain üles laadida ilma mingeid probleeme. Leidsin, et võin lihtsalt ESP32 ja ESP-Progi lahti ühendada, koodi ESP32-sse üles laadida ja seejärel uuesti ühendada ning see töötaks hästi.

11. samm: põrutus

Ma arvan, et see on tõesti lahe tööriist tööriistakasti lisamiseks, et aidata välja selgitada, mis teie projekti sees toimub.

Mulle meeldiks kuulda, kas see on teile kasulik !. Palun andke mulle sellest allpool kommentaarides teada või ühinege minu ja hunniku teiste tegijatega minu Discordi serveris, kus saame seda teemat või mõnda muud tegijaga seotud teemat arutada, inimesed on seal tõesti abiks, nii et see on suurepärane koht riputamiseks välja.

Tahaksin ka väga tänada oma Githubi sponsoreid, kes aitavad minu tegemisi toetada, ma tõesti hindan seda. Kui te ei tea, siis Github sobitab sponsorlust esimest aastat, nii et kui teete sponsorluse, siis järgnevatel kuudel vastavad nad sellele 100%. Täname lugemise eest!

Soovitan: