🛒 Arduino, ESP32 və modullar
MicroPython üçün on-chip debug: Raspberry Pi Pico və ESP32-də Visual Studio ilə sazlama
3 SAAT ƏVVƏLProqramlaşdırma

MicroPython üçün on-chip debug: Raspberry Pi Pico və ESP32-də Visual Studio ilə sazlama

MicroPython kodunu Raspberry Pi Pico və ESP32-də birbaşa çip üzərində, Visual Studio ilə klassik breakpoint-lərlə necə sazlamaq olar?

20 sentyabr 20262 dəq oxuma15 teqlər

MicroPython-la işləyənlər yaxşı bilir: debug çox vaxt print()-lərlə, təxminlərlə və təkrar yükləmələrlə keçir. GHI Electronics isə MicroPython üçün Visual Studio daxilində on-chip source-level debugging təklif edir. Yəni klassik breakpoint, dəyişənlərin izlənməsi, call stack – hamısı birbaşa mikrokontroller üzərində işləyən koda tətbiq olunur.

Lazım olan tək şey: dəstəklənən MicroPython host (məsələn, Raspberry Pi Pico və ya ESP32) və indiyə qədər istifadə etdiyiniz eyni USB kabeli. Ayrı JTAG/SWD debugger, xüsusi adapter və s. tələb olunmur.

Necə işləyir?

Bu imkan üçün xüsusi MicroPython firmware lazımdır:

  • Hazır firmware faylını GHI-nin təqdim etdiyi variantlardan seçib flash edə bilərsiniz;
  • Və ya öz custom MicroPython image-inizi toolchain qurub mənbə koddan kompilyasiya edə bilərsiniz.

Hazırda bir neçə Raspberry Pi Pico versiyası və müxtəlif ESP32 çipləri dəstəklənir. Təcrübədə bəzi qeyri-standart platada (məsələn, RP2040 GEEK klonları) firmware yazılması zamanı xəta mesajları çıxa bilər, amma əslində yazma prosesi baş tutur. Oxşar problem Linux + ESP32-S3 kombinasiyasında da məlumdur.

Məhdudiyyətlər və praktik tərəfi

GitHub sənədlərində bir neçə məhdudiyyət qeyd olunub:

  • Artıq kod tərəfindən try/except ilə tutulmuş istisnaları debugger səviyyəsində birbaşa "tuta" bilmirsiniz (amma except blokunda breakpoint qoya bilərsiniz);
  • Breakpoint aktiv olanda bütün thread-lər dayanır;
  • Bir neçə digər xırda limit var, amma real layihələr üçün kritik showstopper sayılmır.

Sadə skriptlər üçün bəlkə də print() kifayət edir. Amma mürəkkəb state machine, asinxron kod və ya çoxsaylı moduldan ibarət layihələrdə birbaşa çip üzərində vizual debug imkanı MicroPython-u tamamilə başqa səviyyəyə qaldırır.


Mənbə: Hackaday

Videolar

(1)
On-chip debugging MicroPython with Visual Studio by GHI Electronics