Przyspieszenie prototypowania i aktualizacji kodu z użyciem nowoczesnego debuggera wewnątrzukładowego

Przez: Kenton Williston

Przekazane przez: Północnoamerykańscy redaktorzy DigiKey

Od deweloperów wymaga się coraz szybszego dostarczania produktów, nawet mimo rosnącej złożoności systemów wbudowanych. Kluczową rolę odgrywają tu debuggery wewnątrzukładowe (ICD), pomagające w szybkiej identyfikacji i usuwaniu błędów. Jednak tradycyjne debuggery są nieporęczne, mało elastyczne i trudne w użyciu, co czyni je nieodpowiednimi dla dzisiejszych wymagań rozwojowych.

Deweloperzy mogą zamiast tego wybrać nowoczesne rozwiązanie, które jest kompaktowe, ma rozszerzoną funkcjonalność i zawiera więcej zestawów narzędzi przyjaznych dla deweloperów. W szczególności powinni oni poszukiwać wsparcia w zakresie szybkiego rozwoju i aktualizacji produktów w laboratorium i w terenie.

W niniejszym artykule pokrótce opisano rolę debuggerów wewnątrzukładowych (ICD) oraz ich wymagania. Następnie przedstawiono rozwiązanie firmy Microchip Technology jako przykład tego, czego deweloperzy powinni szukać w nowoczesnym debuggerze wewnątrzukładowym (ICD). Zestaw zawiera również kompatybilne narzędzia rozwojowe, wskazówki dotyczące rozpoczynania pracy oraz skrócony przewodnik po użyciu debuggerów wewnątrzukładowych (ICD) w środowiskach produkcyjnych.

Zalety i wyzwania związane z debuggerami wewnątrzukładowymi (ICD)

Debugger wewnątrzukładowy (ICD) to narzędzie, które łączy się z procesorem zainstalowanym w sprzęcie urządzenia docelowego. Połączenie to zapewnia dostęp w czasie rzeczywistym do procesora podczas pracy systemu, umożliwiając wykonywanie takich zadań, jak wykonywanie procedur krok po kroku oraz inspekcja pamięci. Programator wewnątrzukładowy (ICP) wykorzystuje te możliwości i pozwala na zapis kodu oraz danych w pamięci procesora. Wszystkie te funkcje mają kluczowe znaczenie dla procesu rozwoju w systemach wbudowanych.

Jednak tradycyjne debuggery wymagają specjalistycznych umiejętności i środowisk rozwojowych, które mogą ograniczać ich użyteczność. Debuggery te mogą również mieć ograniczenia podczas rozwiązywania problemów ze sprzętem produkcyjnym i często wymagają połączeń JTAG, których wdrożenie na sprzęcie produkcyjnym jest niepraktyczne ze względu na koszty i ograniczenia przestrzeni. Ponadto wyspecjalizowane oprogramowanie i sprzęt potrzebne do debugowania mogą być kłopotliwe do wdrożenia w środowiskach polowych.

Ograniczenia te pozwalają przezwyciężyć debuggery/programatory wewnątrzukładowe (ICD/ICP) MPLAB PICkit 5 PG164150 firmy Microchip Technology. Można z nich korzystać między innymi za pośrednictwem aplikacji na smartfony z łącznością Bluetooth Low Energy (BLE). Pozwala to technikom na wdrażanie obrazów kodu w terenie, co znacznie poszerza możliwości w zakresie poprawek błędów i aktualizacji oprogramowania.

Kluczowe cechy urządzenia MPLAB PICkit 5

MPLAB PICkit 5 jest uniwersalnym urządzeniem, które obsługuje prawie wszystkie mikrokontrolery MCU i cyfrowe kontrolery sygnałów (DSC) firmy Microchip Technology, w tym urządzenia PIC, dsPIC, AVR, oraz SAM (oparte na rdzeniu Arm® Cortex®). Jak pokazano na ilustracji 1, zawiera ono gniazdo kart microSDHC, które umożliwia przechowywanie wielu obrazów w pamięci urządzenia.

Ilustracja przedstawiająca wygląd ogólny urządzenia MPLAB PICkit 5 firmy MicrochipIlustracja 1: wygląd ogólny urządzenia MPLAB PICkit 5 ze wskazaniem jego kluczowych cech. (Źródło ilustracji: Microchip Technology)

Urządzenie MPLAB PICkit 5 łączy się z hostem za pomocą kabla USB Type-C i może być zasilane za jego pośrednictwem lub przez urządzenie docelowe. Omawiany debugger zawiera również funkcję łączności BLE, która umożliwia użytkownikom dostęp do narzędzia ze smartfona.

Debugger posiada 8-wtykowe złącze do programowania po stronie docelowej, które obsługuje różne interfejsy. Należą do nich 4-przewodowy JTAG, interfejs szeregowego debugowania przewodowego (SWD), Ethernet, kompatybilne wstecz 2-przewodowe JTAG oraz interfejs programowania szeregowego wewnątrz układu (ICSP). Firma Microchip Technology oferuje płytkę adaptera AC102015 (ilustracja 2) obsługującą wszystkie te interfejsy.

Ilustracja przedstawiająca płytkę adaptera AC102015 firmy Microchip TechnologyIlustracja 2: płytka adaptera AC102015 obsługuje szeroką gamę interfejsów. (Źródło ilustracji: Microchip Technology)

Debugger obsługuje napięcia zasilania urządzenia docelowego od 1,2V do 5,0V do wchodzenia w niskonapięciowy tryb programowania oraz od 1,8V do 5,0V do wchodzenia w wysokonapięciowy tryb programowania. Może on również bezpośrednio dostarczać do urządzenia docelowego prąd o natężeniu 150mA.

Dodatkowe funkcje obejmują wirtualny port komunikacyjny (VCOM), wiele sprzętowych i programowych punktów przerwań, stoper do operacji taktowania oraz możliwość bezpośredniego debugowania plików kodu źródłowego. Omawiany debugger jest zasilany przez mikrokontroler MCU ATSAME70N2 o częstotliwości 300MHz z systemem operacyjnym czasu rzeczywistego (RTOS), co zapewnia brak opóźnień w pobieraniu oprogramowania układowego podczas przełączania między urządzeniami. Te wbudowane rozwiązania inteligentne pozwalają również debuggerowi na obsługę nowych urządzeń docelowych i funkcji.

Kluczowe ulepszenia w porównaniu z urządzeniami MPLAB PICkit 4 i MPLAB PICkit 3

Seria MPLAB PICkit stale ewoluuje. Z każdą iteracją wprowadzane są ulepszenia w zakresie elastyczności, szybkości i kompatybilności urządzeń. W tabeli 1 zestawiono najważniejsze ulepszenia w urządzeniu MPLAB PICkit 5 w porównaniu z jego poprzednikami.

Charakterystyka MPLAB PICkit 3 MPLAB PICkit 4 MPLAB PICkit 5
Obsługiwane urządzenia PIC PIC, dsPIC Wszystkie architektury Microchip
Łączność przewodowa USB Mini Micro USB USB Type-C
Łączność bezprzewodowa Nie Nie Bluetooth Low Energy (BLE)
Programowanie zdalne Nie Nie Funkcja Programmer-To-Go (PTG)
Programowanie w terenie Nie Ograniczone Wiele obrazów programów
Rozmiary Kompaktowe Ograniczone Wiele obrazów programów
Szybkość Umiarkowana Duża Większa

Tabela 1: urządzenie MPLAB PICkit 5 oferuje wiele zalet w porównaniu ze swoimi poprzednikami. (Źródło tabeli: Kenton Williston)

Środowiska rozwojowe obsługiwane przez urządzenie MPLAB PICkit 5

Urządzenie MPLAB PICkit 5 obsługuje różne środowiska rozwojowe, m.in.:

Na szczególną uwagę zasługuje aplikacja na smartfony (ilustracja 3). Umożliwia ona użytkownikom zdalne programowanie sprzętu urządzenia docelowego przy użyciu prostego procesu:

  • Kod jest opracowywany przy użyciu programu MPLAB X i kompilowany do pliku szesnastkowego .ptg, który zawiera informacje o kodzie, danych i konfiguracji.
  • Na kartę microSDHC włożoną do urządzenia MPLAB PICkit 5 pobierany jest plik szesnastkowy.
  • Karta microSDHC może pomieścić wiele plików szesnastkowych, zapewniając użytkownikom elastyczność w programowaniu urządzeń docelowych.
  • Urządzenie MPLAB PICkit 5 podłącza się do sprzętu docelowego.
  • Korzystając z aplikacji na smartfony, użytkownik wybiera obraz programu zapisany na karcie pamięci, aby zaprogramować urządzenie docelowe.

Ilustracja przedstawiająca aplikację na smartfony MPLAB PTG firmy Microchip Technology (kliknij, aby powiększyć)Ilustracja 3: aplikacja na smartfony MPLAB PTG posiada prosty interfejs. (Źródło ilustracji: Microchip Technology)

Aplikacja MPLAB PTG jest szczególnie przydatna w zastosowaniach zdalnych lub mobilnych, gdzie dodatkowe urządzenia są niepraktyczne. Może ona posłużyć do zaprogramowania urządzenia bezpośrednio w terenie bez użycia komputera, przekształcając urządzenie MPLAB PICkit 5 w autonomiczne narzędzie programistyczne.

Z punktu widzenia deweloperów ułatwia to szybkie aktualizacje oprogramowania układowego na miejscu, skracając cykle rozwojowe i czas wprowadzania produktu na rynek. Technicy mogą następnie użyć narzędzia MPLAB PTG do aktualizacji innych urządzeń polowych, co umożliwia szybkie wdrażanie aktualizacji produktów. Omawiane narzędzie jest również przydatne w sytuacjach awaryjnych, w których konieczne jest szybkie przeprogramowanie urządzenia w celu przywrócenia go do działania.

Pierwsze kroki z urządzeniem MPLAB PICkit 5

Korzystanie z urządzenia MPLAB PICkit 5 oraz zintegrowanego środowiska deweloperskiego (IDE) MPLAB X jest procesem, który powinien być znany każdemu deweloperowi systemów wbudowanych. Podstawowe etapy:

  • Instalacja: musi być zainstalowana najnowsza wersja zintegrowanego środowiska deweloperskiego (IDE) MPLAB X. Urządzenie MPLAB PICkit 5 jest zwykle obsługiwane bez dodatkowych sterowników, jednak deweloperzy powinni odwiedzić witrynę internetową firmy Microchip Technology, aby uzyskać najnowsze informacje.
  • Konfiguracja projektu: urządzenie PICkit 5 można wybrać jako narzędzie sprzętowe do programowania i debugowania podczas tworzenia nowego projektu. Wyboru tego dokonuje się we właściwościach projektu w kategorii „Hardware Tool” (Narzędzie sprzętowe).
  • Programowanie: po skonfigurowaniu projektu i przygotowaniu kodu, mikrokontroler MCU można zaprogramować, naciskając przycisk „Make and Program Device” (Utwórz i zaprogramuj urządzenie).

Zintegrowane środowisko programistyczne (IPE) MPLAB oferuje technikom prostszą procedurę pracy w środowisku produkcyjnym. Kluczowe etapy korzystania z tego narzędzia:

  • Konfiguracja: spośród dostępnych narzędzi należy wybrać MPLAB PICkit 5. Następnie należy wybrać urządzenie docelowe (model mikrokontrolera MCU) i plik szesnastkowy do programowania.
  • Programowanie: po wybraniu urządzenia i pliku szesnastkowego można zaprogramować mikrokontroler MCU, naciskając przycisk „Program” (Programuj). W razie potrzeby zintegrowane środowisko programistyczne (IPE) MPLAB wyczyści urządzenie docelowe, zaprogramuje je i zweryfikuje zaprogramowanie.

W obu środowiskach użytkownicy mogą napotkać trudności techniczne. Często problemy te są spowodowane prostymi problemami, które można rozwiązać w następujący sposób:

  • Upewnić się, że połączenia są prawidłowe: deweloper powinien sprawdzić połączenia z hostem i urządzeniem docelowym. W przypadku korzystania z interfejsu programowania szeregowego wewnątrz układu (ICSP) należy zwrócić uwagę na orientację złącza.
  • Sprawdzić ustawienia zasilania: należy zweryfikować ustawienia zasilania. Niektóre urządzenia mogą być zasilane bezpośrednio przez urządzenie MPLAB PICkit 5, podczas gdy inne mogą wymagać zasilania zewnętrznego.
  • Aktualizacja oprogramowania układowego: od czasu do czasu firma Microchip Technology publikuje aktualizacje oprogramowania układowego urządzenia MPLAB PICkit 5. Deweloperzy powinni upewnić się, że zainstalowana jest najnowsza wersja.

Zestawy rozwojowe kompatybilne z urządzeniem MPLAB PICkit 5

Urządzenie MPLAB PICkit 5 jest kompatybilne z różnymi zestawami rozwojowymi, przeznaczonymi do nauki, prototypowania i opracowywania aplikacji. Na przykład płytki rozwojowe o małej liczbie wyprowadzeń (LPC) Curiosity, takie jak DM164137, które obsługują 8, 14 lub 20 wtyków, są przeznaczone do eksperymentów z mikrokontrolerami MCU PIC. Płytki te często zawierają zintegrowany programator i debugger, ale zewnętrzne narzędzie, takie jak MPLAB PICkit 5, może oferować dodatkowe funkcje. Deweloperzy powinni sprawdzić, czy wbudowany programator można odłączyć za pomocą opcji mostka.

Kolejnym przykładem są płytki ewaluacyjne Xpress, na przykład DM164140 dla urządzenia PIC16F18855. Płytki te są przeznaczone do szybkiego prototypowania z użyciem określonych mikrokontrolerów MCU PIC. Są one wyposażone we wbudowany programator i debugger, ale deweloperzy mogą używać urządzenia MPLAB PICkit 5 w celu zapewnienia spójności między projektami lub uzyskania funkcji specyficznych dla tego debuggera.

Firma Microchip Technology oferuje również zestawy startowe, takie jak płytki ewaluacyjne PIC32MX XLP DM320105, które zawierają sprzęt i oprogramowanie niezbędne do szybkiego rozpoczęcia prac rozwojowych. Urządzenie MPLAB PICkit 5 może być przydatne do programowania i debugowania mikrokontrolerów MCU zawartych w tych zestawach, zapewniając bezproblemową pracę.

Podsumowanie

Nowoczesne debuggery wewnątrzukładowe (ICD) mogą pomóc deweloperom w skróceniu cykli rozwojowych i wdrażaniu aktualizacji produktów w terenie. Urządzenie MPLAB PICkit 5 obsługuje szerszy zakres urządzeń docelowych, opcji łączności i narzędzi programowych w porównaniu z poprzednimi debuggerami, zapewniając wysoki stopień elastyczności i użyteczności. Na szczególną uwagę zasługuje aplikacja na smartfony, która pozwala na użycie urządzenia MPLAB PICkit 5 w okolicznościach, w których wykorzystanie tradycyjnych debuggerów jest utrudnione.

DigiKey logo

Disclaimer: The opinions, beliefs, and viewpoints expressed by the various authors and/or forum participants on this website do not necessarily reflect the opinions, beliefs, and viewpoints of DigiKey or official policies of DigiKey.

Informacje o autorze

Image of Kenton Williston

Kenton Williston

Kenton Williston uzyskał licencjat z elektrotechniki w 2000 roku i rozpoczął karierę zawodową jako analityk testów porównawczych procesorów. Od tamtego czasu pracował jako redaktor w grupie EE Times, a także pomagał przy zakładaniu oraz prowadzeniu licznych periodyków i konferencji w branży elektronicznej.

Informacje o wydawcy

Północnoamerykańscy redaktorzy DigiKey