Hvis der er uklarheder i denne artikel, bedes du se den originale engelske version.

Fremskynd prototyping og kodeopdateringer med en moderne in-circuit debugger

Af Kenton Williston

Bidraget af DigiKeys nordamerikanske redaktører

Udviklere står over for et pres for at fremskynde produktleveringen, selv om indlejrede systemer bliver mere komplekse. In-circuit debuggere (ICD'er) spiller en afgørende rolle her, da de hjælper med hurtigt at identificere og rette fejl. Men traditionelle debuggere er store, ufleksible og svære at bruge, hvilket gør dem uegnede til nutidens udviklingskrav.

Udviklere kan i stedet vælge en moderne løsning, der er kompakt, har udvidet funktionalitet og indeholder mere udviklervenlige værktøjer. De bør især søge støtte til hurtig udvikling og produktopdateringer i laboratoriet og i marken.

Denne artikel beskriver kort ICD'ernes rolle og krav. Derefter introduceres en løsning fra Microchip Technology som et eksempel på, hvad udviklere skal kigge efter i en moderne ICD. Der er også kompatible udviklingsværktøjer, tips til at komme i gang og en hurtig guide til at bruge en ICD i produktionsmiljøer.

Fordele og udfordringer ved ICD'er

En ICD er et værktøj, der forbindes til en processor, der er installeret i målhardwaren. Denne forbindelse giver adgang til processoren i realtid, mens systemet kører, hvilket muliggør opgaver som trinvis udførelse og inspektion af hukommelsen. En in-circuit programmør (ICP) bygger videre på disse muligheder ved at gøre det muligt at skrive kode og data ind i processorens hukommelse. Tilsammen er disse funktioner afgørende for den indlejrede udviklingsproces.

Men traditionelle debuggere kræver specialiserede færdigheder og udviklingsmiljøer, som kan begrænse deres anvendelighed. Disse debuggere kan også have begrænsninger ved fejlfinding af produktionshardware, og de kræver ofte JTAG-forbindelser, som er upraktiske at implementere på produktionshardware på grund af omkostninger og pladsbegrænsninger. Desuden kan den specialiserede software og hardware, der er nødvendig til fejlfinding, være besværlig at tage med ud i marken.

PG164150 MPLAB PICkit 5 ICD/ICP fra Microchip Technology overvinder disse begrænsninger. Den kan blandt andet bruges via en smartphone-applikation med Bluetooth Low Energy (BLE)-forbindelse. Det gør det muligt for teknikere at implementere kodebilleder i marken, hvilket udvider mulighederne for fejlrettelser og softwareopdateringer betydeligt.

Nøglefunktioner i MPLAB PICkit 5

MPLAB PICkit 5 er en alsidig enhed, der understøtter næsten alle Microchip Technology-mikrocontrollerenheder (MCU'er) og digitale signalcontrollere (DSC'er), herunder PIC-, dsPIC-, AVR- og SAM-enheder (Arm® Cortex®-baserede). Som vist i figur 1 har den et microSDHC kort-slot, som gør det muligt at gemme flere billeder i enhedens hukommelse.

Billede af oversigt over Microchip MPLAB PICkit 5Figur 1: Her ses en oversigt over MPLAB PICkit 5 med de vigtigste funktioner. (Billedkilde: Microchip Technology)

MPLAB PICkit 5 forbindes til værten via et USB Type-C-kabel og kan strømforsynes enten via dette kabel eller via målet. Debuggeren har også BLE-forbindelse, som gør det muligt for brugerne at få adgang til værktøjet fra en smartphone.

Debuggeren har et 8-polet programmeringsstik på målsiden, der understøtter forskellige grænseflader. Disse omfatter 4-leder JTAG, SWD (Serial Wire Debug), Ethernet, bagudkompatibel 2-leder JTAG og in-circuit seriel programming (ICSP). Microchip Technology tilbyder adapterkortet AC102015 (figur 2), der understøtter alle disse grænseflader.

Billede af Microchip Technology AC102015 adapterkortFigur 2: AC102015-adapterkortet har plads til en lang række grænseflader. (Billedkilde: Microchip Technology)

Debuggeren understøtter målforsyningsspændinger fra 1,2 V til 5,0 V for indgang til lavspændingsprogramtilstand og fra 1,8 V til 5,0 V for indgang til højspændingsprogramtilstand. Den kan også forsyne målenheden direkte med 150 milliampere (mA).

Yderligere funktioner omfatter en virtuel kommunikationsport (VCOM), flere hardware- og softwarebreakpoints, et stopur til timing af operationer og muligheden for at debugge kildekodefiler direkte. Debuggeren drives af en 300 megahertz (MHz) ATSAME70N2 MCU, der kører et realtidsoperativsystem (RTOS), hvilket sikrer, at der ikke opstår forsinkelser ved download af firmware, når der skiftes mellem enheder. Denne indbyggede intelligens gør det også muligt for debuggeren at understøtte nye målenheder og funktioner.

Vigtige forbedringer i forhold til MPLAB PICkit 4 og MPLAB PICkit 3

MPLAB PICkit-serien har løbende udviklet sig og introduceret forbedringer af fleksibilitet, hastighed og enhedskompatibilitet med hver iteration. Tabel 1 opsummerer de kritiske opgraderinger i MPLAB PICkit 5 i forhold til forgængerne.

Funktion MPLAB PICkit 3 MPLAB PICkit 4 MPLAB PICkit 5
Understøttede enheder PIC PIC, dsPIC Alle Microchip-arkitekturer
Kablede tilslutningsmuligheder USB Mini Micro USB USB Type-C
Trådløs forbindelse Nej Nej Bluetooth Low Energy (BLE)
Fjernprogrammering Nej Nej PTG (Programmer-To-Go)
Programmering i marken Nej Begrænset Flere programbilleder
Formfaktor Kompakt Begrænset Flere programbilleder
Hastighed Moderat Hurtig Hurtigere

Tabel 1: MPLAB PICkit 5 har mange fordele i forhold til sine forgængere. (Tabelkilde: Kenton Williston)

Udviklingsmiljøer understøttet af MPLAB PICkit 5

MPLAB PICkit 5 understøtter udviklingsmiljøer, herunder:

Smartphone-appen (figur 3) er særlig bemærkelsesværdig; den gør det muligt for brugerne at fjernprogrammere målhardwaren ved hjælp af en enkel proces:

  • Koden udvikles ved hjælp af MPLAB X og kompileres til en .ptg hex-fil, der indkapsler kode, data og konfigurationsoplysninger.
  • Hex-filen downloades til et microSDHC-kort, der er sat i MPLAB PICkit 5.
  • MicroSDHC-kortet kan rumme flere hex-filer, hvilket giver brugerne fleksibilitet i programmeringen af målenheder.
  • MPLAB PICkit 5 tilsluttes målhardwaren.
  • Ved hjælp af smartphone-appen vælger brugeren et gemt programbillede på hukommelseskortet for at programmere målet.

Billede af Microchip Technology MPLAB PTG smartphone-app (klik for at forstørre)Figur 3: MPLAB PTG's smartphone-app har en enkel grænseflade. (Billedkilde: Microchip Technology)

MPLAB PTG er især nyttig i fjerntliggende eller mobile omgivelser, hvor ekstra udstyr er upraktisk. Den kan programmere enheder direkte i marken uden en computer, hvilket effektivt omdanner MPLAB PICkit 5 til et selvstændigt programmeringsværktøj.

For udviklere giver det mulighed for hurtige firmwareopdateringer på stedet, hvilket fremskynder udviklingscyklusserne og reducerer tiden til markedet. Teknikere kan derefter bruge MPLAB PTG til at opdatere andre feltenheder, hvilket muliggør en hurtig udrulning af produktopgraderinger. Værktøjet er også værdifuldt i nødsituationer, hvor hurtig omprogrammering er nødvendig for at genoprette enhedens funktionalitet.

Kom godt i gang med MPLAB PICkit 5

At bruge MPLAB PICkit 5 med MPLAB X IDE er en proces, der burde være velkendt for enhver indlejret udvikler. De grundlæggende trin er som følger:

  • Installation: Den seneste version af MPLAB X IDE skal være installeret. MPLAB PICkit 5 understøttes normalt uden yderligere drivere, men udviklere bør tjekke Microchip Technologys hjemmeside for at få de nyeste oplysninger.
  • Opsætning af projekt: PICkit 5 kan vælges som hardwareværktøj til programmering og debugging, når man opretter et nyt projekt. Dette valg foretages i projektegenskaberne under kategorien "Hardwareværktøj".
  • Programmering: Når et projekt er konfigureret, og koden er forberedt, kan MCU'en programmeres ved at aktivere knappen "Make and Program Device".

MPLAB IPE tilbyder en mere ligetil proces for teknikere i et produktionsmiljø. De vigtigste trin i brugen af dette værktøj er som følger:

  • Konfiguration: MPLAB PICkit 5 skal vælges blandt de tilgængelige værktøjer. Derefter skal målenheden (MCU-modellen) og den hex-fil, der skal programmeres, vælges.
  • Programmering: Når enheden og hex-filen er valgt, kan MCU'en programmeres ved at trykke på knappen "Program". Hvis det er nødvendigt, sletter MPLAB IPE målenheden, programmerer den og verificerer programmeringen.

I begge miljøer vil brugerne sandsynligvis støde på tekniske problemer. Ofte skyldes disse problemer simple problemer, som kan løses på følgende måde:

  • Sørg for korrekte forbindelser: Udvikleren bør kontrollere forbindelserne til værten og målenheden. Hvis man bruger et ICSP-interface, skal man være opmærksom på, hvordan stikket vender.
  • Kontroller strømindstillingerne: Strømindstillingerne bør kontrolleres. Nogle enheder kan få strøm direkte fra MPLAB PICkit 5, mens andre kræver ekstern strøm.
  • Opdatering af firmware: Firmwareopdateringer til MPLAB PICkit 5 udgives med jævne mellemrum af Microchip Technology. Udviklere bør sikre sig, at den nyeste version er installeret.

Udviklingskit, der er kompatible med MPLAB PICkit 5

MPLAB PICkit 5 er kompatibelt med forskellige udviklingssæt, der er designet til læring, prototyper og udvikling af applikationer. For eksempel er LPC (Curiosity Low Pin Count) udviklingskort som DM164137, der understøtter 8, 14 eller 20 ben, designet til at eksperimentere med PIC MCU'er. Disse kort har ofte en integreret programmør og debugger, men et eksternt værktøj som MPLAB PICkit 5 kan tilbyde yderligere funktioner. Udviklere bør undersøge, om den indbyggede programmeringsenhed kan frakobles via en jumper.

Xpress evalueringskort som DM164140 til PIC16F18855 er et andet eksempel. Disse kort er designet til hurtig prototyping med specifikke PIC MCU'er. De kommer med en indbygget programmør og debugger, men udviklere kan bruge MPLAB PICkit 5 for at opnå konsistens på tværs af projekter eller for at få funktioner, der er specifikke for denne debugger.

Microchip Technology tilbyder også starter kit, som DM320105 PIC32MX XLP evalueringskort, der indeholder den nødvendige hardware og software til at komme hurtigt i gang med udviklingen. MPLAB PICkit 5 vil være nyttigt til programmering og debugging af de MCU'er, der er inkluderet i disse kit, og giver en problemfri oplevelse.

Konklusion

Moderne ICD'er kan hjælpe udviklere med at fremskynde udviklingscyklusser og udrulle produktopdateringer i marken. MPLAB PICkit 5 understøtter et bredere udvalg af målenheder, tilslutningsmuligheder og softwareværktøjer end tidligere debuggere, hvilket giver den en høj grad af fleksibilitet og anvendelighed. Smartphone-appen er særlig bemærkelsesværdig, da den gør det muligt at bruge MPLAB PICkit 5 i indstillinger, der er vanskelige at få adgang til med traditionelle debuggere.

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.

Om denne forfatter

Image of Kenton Williston

Kenton Williston

Kenton Williston received his B.S. in Electrical Engineering in 2000 and started his career as processor benchmark analyst. Since then he worked as an editor with the EE Times group and helped launch and lead multiple publications and conferences serving the electronics industry.

Om udgiveren

DigiKeys nordamerikanske redaktører