Mundarija:
- Ta'minotlar
- 1 -qadam: Videoni tomosha qiling
- 2 -qadam: Uskuna - ehtiyot qismlar va simlar
- 3 -qadam: Uskuna - drayverni sozlash
- 4 -qadam: dasturiy ta'minot: PlatformIO -ni o'rnatish
- 5 -qadam: dasturiy ta'minot: PlatformIO -dan foydalanish
- 6 -qadam: disk raskadrovka: potentsial banan terisi
- 7 -qadam: disk raskadrovka: konfiguratsiya
- 8 -qadam: disk raskadrovka: tuzatishni boshlash
- 9 -qadam: disk raskadrovka: asosiy foydalanish
- 10 -qadam: Muammolarni bartaraf etish
- 11 -qadam: Xulosa
Video: Nosozliklarni tuzatuvchini ESP32 -da qanday ishlatish kerak: 11 qadam (rasmlar bilan)
2024 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2024-01-30 13:23
Siz nima uchun bunday xatti -harakat qilayotganini bilish uchun kodingizning ichki qismini ko'rib chiqishni xohlaganmisiz? An'anaga ko'ra, ESP32 loyihalarida nima bo'layotganini aniqlash uchun cheksiz bosma bayonot qo'shish kerak bo'lardi, lekin yaxshiroq yo'l bor!
Nosozliklarni tuzatuvchi-bu sizning kodingizning alohida bo'limlarida nima bo'layotganini ko'rish va o'z kodingizni qayta kompilyatsiya qilmasdan, har xil o'zgaruvchan qiymatlarni sinab ko'rish usuli, odatda bu bizga o'rnatilgan loyihalarda mavjud emas, lekin bu qo'llanmada men sizga ko'rsataman. ESP32 -da uni qanday ishlatish kerak.
Ushbu qo'llanmada men sizga uskunani sozlash, dasturiy ta'minotni sozlash va tuzatuvchidan foydalanishning oddiy misolini ko'rsataman.
Ta'minotlar
- ESP -Prog - bu disk raskadrovka uchun zarur bo'lgan taxta
- Men sotib olgan aynan biri*
- 5 dollar arzonroq, lekin men uni sinab ko'rmaganman*
-
12, 13, 14, 15 -pinlarni ajratadigan ESP32
- 32
- D1 Mini ESP32*
-
[Ixtiyoriy] Debug Shield Men Tindida sotaman
- 32. Huzba tuklari
- D1 Mini ESP32
* = Sheriklik havolasi
1 -qadam: Videoni tomosha qiling
Agar siz buni tekshirmoqchi bo'lsangiz, menda ushbu mavzu bo'yicha video bor.
Men o'z kanalimda odatda ESP8266 va ESP32 asosidagi videolarni tayyorlayman, shuning uchun agar siz ularni qiziqtirsangiz, albatta ko'ring!
2 -qadam: Uskuna - ehtiyot qismlar va simlar
Nosozliklarni tuzatuvchidan foydalanish uchun sizga faqat ESP-Prog va deyarli har qanday ESP32 kartasi kerak bo'ladi (ularga oldingi bosqichda havolalar)
ESP-Prog:
ESP-Prog-bu ESP32 va ESP8266 chiplarini ishlab chiqaruvchi espressif tomonidan ishlab chiqilgan taxta. U ESP32 -ning JTAG pinlariga ulanadi, bu bizga disk raskadrovka vositasini ishlatishga imkon beradi, uni ESP32 platalarini dasturlash uchun ham ishlatish mumkin, lekin men buni bu erda yoritmayman.
ESP32 taxtasi:
Siz har qanday ESP32 kartasini 12, 13, 14 va 15 gacha bo'lgan JTAG pinlarini sindirib tashlagandan so'ng ishlatishingiz mumkin, men Adafruit patini Huzzah32 va D1 Mini 32 kartalarini sinab ko'rdim va ikkalasi ham yaxshi ishladi.
E'tibor bering, siz eskizda JTAG pimlarini nosozliklarni tuzatuvchi bilan ishlatishingiz mumkin, masalan, Huzzah32 taxtasining o'rnatilgan LEDi 13-pinda, shuning uchun disk raskadrovka paytida uni ishlata olmaysiz.
Ulanish:
ESP-Prog-ni ESP32-ga ulash uchun yuqoridagi rasmda ko'rsatilgandek simi qo'llanmasidan foydalaning. Agar siz tegishli pinlarni darhol ko'rmasangiz, ESP32 kartangizning simi diagrammasini tekshiring, chunki ular ba'zida boshqa nomlash sxemasidan foydalanadilar.
Debug qalqonlari:
Bu ixtiyoriy, lekin men Tindie-da Huzzah32 va D1 Mini 32 uchun qalqonlarni sotaman, bu ESP-Prog-ni ulashni juda sodda qiladi, bu mos keladigan pinlarni IDC ulagichiga ajratib qo'yadi, siz ularni to'g'ridan-to'g'ri ulash uchun tasma kabelidan foydalanishingiz mumkin. qalqon va ESP-Prog
3 -qadam: Uskuna - drayverni sozlash
Nosozliklarni tuzatish uchun ESP-prog-dan foydalanish uchun biz unga mos drayverlarni o'rnatishimiz kerak. PlatformIO bu erda ba'zi qadamlarni beradi, lekin men ushbu qo'llanmada Windows bosqichlarini o'taman.
- ESP-Prog uchun FTDI drayverlarini bu erdan yuklab oling va o'rnating, o'ng tomonga o'ting va "bajariladigan sozlamalarni o'rnatish" ni osonlashtiring.
- Zadig vositasini bu erdan yuklab oling va o'rnating, bu bizga disk raskadrovka uchun zarur bo'lgan umumiy drayverni o'rnatishga imkon beradi.
- ESP-Prog ulangan bo'lsa, Zadig-ni oching
- Zadig ilovasida "Tanlovlar" ostida "Barcha qurilmalarni ro'yxatga olish" -ni bosing.
- Zadigdagi ochiladigan ro'yxat endi to'ldiriladi, "Dual RS232-HS (Interface 0)" variantini tanlang. Siz tanlagan interfeys 0 ekanligiga ishonch hosil qiling!
- Yashil o'qning o'ng tomonida "WinUSB" ni tanlash kerak, keyin "Drayverni almashtirish" tugmasini bosing.
Bu tugagach, sizning haydovchilaringiz foydalanish uchun sozlanishi kerak!
Eslatma: Agar siz ESP-Prog uchun foydalanadigan USB portini o'zgartirsangiz, 3-6 bosqichlarni yana takrorlashingiz kerak bo'ladi. Agar disk raskadrovka paytida yuqoridagi rasmda ko'rsatilgandek xato bo'lsa, qadamlarni takrorlash kerak.
4 -qadam: dasturiy ta'minot: PlatformIO -ni o'rnatish
PlatformIO-bu turli xil o'rnatilgan ramkalar, jumladan Arduino eko tizimi bilan ishlab chiqish uchun IDE. Arduino IDE-ga qaraganda uni ishlatish ancha murakkab, lekin u juda kuchli va Arduino IDE-ni sog'inadigan ba'zi xususiyatlarga ega, masalan, avtomatik to'ldirish.
PlatformIO -dan tuzatuvchini ishlatish talab qilinadi. Agar siz PlatformIO bilan allaqachon tanish bo'lsangiz, bir necha qadam oldinga o'tishingiz mumkin.
- PlatformIO.org veb -saytida joylashgan havola orqali Visual Studio kodini (VS kodi) yuklab oling va o'rnating
- VS kodini oching va kengaytmalar menyusini oching, tugma yuqoridagi rasmda ajratilgan
- Qidiruvga "platformio" kiriting, uni tanlang va "O'rnatish" ni bosing.
5 -qadam: dasturiy ta'minot: PlatformIO -dan foydalanish
PlatformIO -dan foydalanish Arudino IDE -ni ishlatishdan biroz farq qiladi, shuning uchun biz bu bosqichda faqat doskada ishlaydigan misolni olish asoslarini ko'rib chiqamiz.
Misol ochish:
- PlatformIO asboblar panelidagi Uy tugmachasini bosing (rasmda ko'rsatilganidek)
- "Loyiha misollari" tugmasini bosing
- Espressif 32 bo'limidagi "Arduino-miltillash" misolini tanlang
Bu namunali miltillash loyihasini ochadi. PlatformIO -ning joylashuvi Arduino loyihasiga qaraganda ancha farq qiladi, shuning uchun biz asoslarni ko'rib chiqamiz.
Kod qayerda?
Loyihangiz kodi "src" papkasida saqlanadi, masalan, "blink.cpp" faylini ko'rasiz, bu fayl Arduino loyihasidagi eskiz faylingiz (.ino) bilan bir xil.
Kengashni qanday sozlash kerak?
Loyihangiz uchun konfiguratsiyalar loyihangizdagi "platformio.ini" faylida saqlanadi. Bu aslida PlatformIO -ning Arduino IDE -ga nisbatan eng sevimli narsalaridan biri, men uchun taxta sozlamalari eskizlar bilan bog'lanmaganligi hech qachon mantiqqa to'g'ri kelmagan.
. Ini misolida bir nechta turli xil taxtalar uchun ta'riflar mavjud, lekin oddiy bo'lishi uchun pastki ikkita ta'rifni o'chirib tashlaylik.
COM portimni qayerga o'rnatishim kerak?
PlatformIO avtomatik ravishda to'g'ri COM portini topishga harakat qiladi, shuning uchun siz hech narsa o'rnatmasligingiz mumkin. Agar sizda bir nechta MAQOMOTI portlari bo'lsa, ularni tuzatuvchidan foydalanganda, menimcha, sizga kerakli qurilmani o'rnatish mantiqan to'g'ri keladi, siz uy qurilmasidagi "Qurilmalar" bo'limini bosish orqali turli qurilmalarni ko'rishingiz mumkin. "upload_port" konfiguratsiyasini qo'shish orqali siz "platformio.ini" da ESP32 qaysi biri ekanligini belgilashingiz mumkin.
Kodni qanday yuklayman?
Yuklab olish tugmachasini bosing (belgi o'ngga qaragan o'q) va u kodni kompilyatsiya qilishi va yuklashi kerak. Endi sizning taxtangizda miltillovchi LED bo'lishi kerak.
6 -qadam: disk raskadrovka: potentsial banan terisi
Bu men tayyorlayotganda meni ushlagan narsa va umid qilamanki, siz buni sinab ko'rasiz, lekin men bu erdan ketish muhim deb o'yladim.
Ushbu qo'llanmani tuzish paytida PlatformIO -ning so'nggi versiyasi 4.3.0 bo'lib, unda disk raskadrovka qilish bilan bog'liq xato bor. Yaxshiyamki, biz muammoni hal qiladigan eng so'nggi rivojlanish versiyasiga yangilanishimiz mumkin.
Bosh sahifada PlatformIO yadrosining versiyasini tekshiring, agar u "4.3.0" bo'lsa, quyidagi amallarni bajaring.
- PlatformIO asboblar panelida terminal belgisini bosing
- Terminal turida: pio upgrade --dev
- RestartVS kodi va PlatfromIO yangilanishi kerak
7 -qadam: disk raskadrovka: konfiguratsiya
Nosozliklarni tuzatish uchun "PlatofrmIO.ini" faylini tahrir qilishimiz kerak, unga faqat ikkita narsani qo'shishimiz kerak.
debug_tool = esp-prog
Bu biz foydalanadigan disk raskadrovka vositasini o'rnatadi.
debug_init_break = buzilish sozlamalari
Bu Andress Spiessning ESP32 -da disk raskadrovka qilish videosidan bilib olgan hiyla. Bu nosozliklarni tuzatuvchiga bizning ilovamizni sozlashni to'xtatishni aytadi.
8 -qadam: disk raskadrovka: tuzatishni boshlash
Ishga kirishdan oldin, biz eskizga ozgina o'zgartirish kiritamiz, bu disk raskadrovka yordamida nima qilishingiz mumkinligini ko'rsatishni osonlashtiradi.
- Yangi o'zgaruvchini yarating, "int delayTime = 1000;" har qanday usullardan tashqari, bu uni global o'zgaruvchiga aylantiradi.
- Tarmoqdagi kechiktiruvchi qo'ng'iroqlar ichidagi raqamni ushbu yangi o'zgaruvchiga almashtiring: delay (delayTime);
Kodni yana bir marta taxtaga yuklang, so'ng tuzatishni boshlash uchun asboblar panelida "Ishga tushirish" va keyin "Nosozliklarni tuzatishni boshlash" ni bosing.
Siz terminal oynasida harakatlanayotgan narsalarni ko'rasiz, lekin bu muvaffaqiyatli deb aytilganida ham, "Debug konsoli" ni bosganingizda, u hali ham ishlayotganini ko'rasiz, tugashiga bir necha soniya kerak bo'ladi.
Agar hamma narsa kutilganidek bo'lsa, sozlash boshida xato tuzatuvchi to'xtaydi.
9 -qadam: disk raskadrovka: asosiy foydalanish
Keling, nosozliklarni tuzatuvchi bilan nima qilish mumkinligi haqida ba'zi asosiy ma'lumotlarni ko'rib chiqaylik
To'xtash nuqtalarini yaratish:
To'xtatish nuqtasi - bu xato tuzatuvchini to'xtatishni xohlaydigan kodingizning nuqtasi. To'xtash nuqtasini yaratish uchun satr raqamining chap tomoniga bosing. Demo sifatida loop usulida birinchi qatorga to'xtash nuqtasini qo'shing.
To'xtash nuqtasi bo'yicha navigatsiya:
To'xtash nuqtasi o'rtasida o'tish yoki keyingi kod satriga o'tish uchun siz ekranning yuqori qismida paydo bo'ladigan asboblardan foydalanishingiz mumkin. "Davom etish" tugmachasini bosing (o'yin tugmachasiga o'xshaydi) biz yaratgan to'xtash nuqtasini pastadir ichida ko'chirish uchun.
O'zgaruvchan soatlar:
O'zgaruvchan soatlar, nosozliklarni tuzatuvchi to'xtash nuqtasida to'xtatilganda o'zgaruvchilar qiymatini kuzatishga imkon beradi. Yangi o'zgarmaydigan soatni qo'shish uchun + belgisini bosishingiz mumkin, keyin o'zgaruvchining nomini kiriting. Demo sifatida oldingi qadamda qo'shilgan o'zgaruvchini kiriting "delayTime"
O'zgaruvchan ko'rish vositasi:
Shuningdek, siz joriy to'xtash nuqtasida mavjud bo'lgan barcha o'zgaruvchilar va ularning qiymatlarini ko'rishingiz mumkin. Buni namoyish qilish uchun, agar siz "Global" bo'limiga qarasangiz, "delayTime" o'zgaruvchisini topishingiz kerak.
O'zgaruvchilar qiymatini tahrirlash:
Siz shuningdek o'zgaruvchilar qiymatlarini o'zgartirishingiz mumkin va bu sizning kodlaringiz xatti -harakatlariga darhol ta'sir qiladi. Buni ko'rsatish uchun Variable Viewer bo'limidagi delayTime o'zgaruvchisini bosing va qiymatni "100" ga o'zgartiring. Ishlayotganini ko'rsatish uchun qatorning chap tomonidagi tugmachani yana bosish orqali pastadir ichidagi to'xtash nuqtasini o'chiring. To'xtash nuqtasi navigatsiya panelidagi davom etish tugmasini bosing. Sizning ESP32 -dagi LED endi oldingisiga qaraganda ancha tez miltillashi kerak.
10 -qadam: Muammolarni bartaraf etish
Sinov paytida men ESP32-ni ESP-prog-ga ulangan paytda yuklay olmasligimni aniqladim va nima uchun bunday bo'lganini tushunolmadim, chunki ko'pincha men yuklamasdan yuklashim mumkin edi. har qanday muammolar. Men ESP32 va ESP-Prog-ni uzib qo'yishim, kodni ESP32-ga yuklashim va keyin ularni qayta ulashim mumkinligini aniqladim.
11 -qadam: Xulosa
O'ylaymanki, bu sizning loyihangizda nima bo'layotganini aniqlash uchun asboblar qutisiga qo'shish uchun ajoyib vosita.
Agar siz buni foydali deb bilsangiz, eshitishni istardim!. Iltimos, menga quyidagi izohlarda xabar bering, yoki menga va Discord serverimdagi boshqa ishlab chiqaruvchilarga qo'shiling, u erda biz bu mavzuni yoki sizga tegishli bo'lgan boshqa ishlab chiqaruvchilarni muhokama qila olamiz, odamlar u erda haqiqatan ham yordam berishadi, shuning uchun bu osish uchun ajoyib joy tashqariga
Men ham Github homiylarimga katta rahmat aytmoqchiman, ular mening ishimni qo'llab -quvvatlaydilar, men buni juda qadrlayman. Agar bilmasangiz, Github birinchi yil homiylik yordamiga mos keladi, shuning uchun agar siz homiylik qilsangiz, ular keyingi bir necha oy davomida unga 100% mos keladi. O'qiganingiz uchun tashakkur!
Tavsiya:
MQTT -ni Raspberry Pi va ESP8266 bilan qanday ishlatish kerak: 8 qadam (rasmlar bilan)
MQTT -ni Raspberry Pi va ESP8266 bilan qanday ishlatish kerak: Ushbu yo'riqnomada men MQTT protokoli nima ekanligini va u qurilmalar o'rtasida qanday aloqa qilishini tushuntiraman, keyin amaliy ko'rsatma sifatida men sizga oddiy ikkitasini qanday o'rnatishni ko'rsataman. mijoz tizimi, bu erda ESP8266 moduli xabar yuboradi
Mac terminalini qanday ishlatish va asosiy funktsiyalarni qanday ishlatish kerak: 4 qadam
Mac terminalini qanday ishlatish va asosiy funktsiyalarni qanday ishlatish kerak: Biz sizga MAC terminalini qanday ochish kerakligini ko'rsatamiz. Shuningdek, biz sizga terminalda ifconfig, kataloglarni o'zgartirish, fayllarga kirish va arp kabi bir nechta xususiyatlarni ko'rsatamiz. Ifconfig sizga IP manzilingizni va MAC reklamangizni tekshirishga imkon beradi
Quyosh energiyasida batareya soatini qanday ishlatish kerak: 15 qadam (rasmlar bilan)
Quyosh energiyasida batareyali soatni qanday ishga tushirish kerak: Bu hissa 2016 yildagi oldingi qo'shimchadan kelib chiqadi, (qarang bu yerga qarang), lekin bu davrda ishni ancha yengillashtiradigan va ish faoliyatini yaxshilaydigan tarkibiy qismlar rivojlandi. Bu erda ko'rsatilgan texnikalar quyosh nurini beradi
Instagram -ni qanday yuklab olish va ishlatish kerak: 28 qadam (rasmlar bilan)
Instagram -ni qanday yuklab olish va undan foydalanish kerak: Ushbu yo'riqnomaning maqsadi Instagram -ni shaxsiy foydalanish uchun yuklab olish va undan foydalanishni o'rganishga yordam berishdir. Ijtimoiy tarmoqlar-bu bizning kundalik hayotimizning tobora o'sib borayotgan qismi, Instagram ijtimoiy tarmoqlarning eng ommabop turlaridan biri sifatida eng yuqori pog'onalarga ko'tarilmoqda
Ethernet kabeli orqali kompozitsion video va tarmoq ma'lumotlarini qanday ishlatish kerak: 6 qadam (rasmlar bilan)
Ethernet kabeli orqali kompozitsion video va tarmoq ma'lumotlarini qanday ishga tushirish kerak: Men video va ovozni uyimning boshqa qismiga o'tkazishim kerak edi. Muammo shundaki, menda AV kabeli, yaxshi o'rnatish uchun vaqt va pul yo'q edi. Ammo menda juda ko'p Cat 5 Ethernet kabeli bor edi. Bu men o'ylab topgan narsadir