Programatory i debuggery firmy Segger (J-Link) – przegląd możliwości

Na drugim końcu są interfejsy w atrakcyjnej cenie, jednak charakteryzują się one jakimiś ograniczeniami – przykładem może być programator ST-Link/V2 (fot. 2) firmy STMicroelectronics przeznaczony do programowania wyłącznie układów z rodziny STM32 czy też interfejs ULINK2 (fot. 3) firmy Keil, który obsługuje wiele rodzin układów, ale współpracuje tylko ze środowiskiem µVision (jeżeli ktoś aktualizował firmware, który otrzymał w postaci pliku wynikowego, a miał do dyspozycji tylko interfejs ULINK, wie jak ta, wydawałoby się trywialna operacja, może stać się niewdzięcznym zadaniem).

 

Fot. 3. ULINK2 - interfejs JTAG firmy Keil obsługuje wiele rodzin mikrokontrolerów, ale współpracuje tylko ze środowiskiem µVision (cena ok. 1200 PLN netto)

Fot. 3. ULINK2 – interfejs JTAG firmy Keil obsługuje wiele rodzin mikrokontrolerów, ale współpracuje tylko ze środowiskiem µVision (cena ok. 1200 PLN netto)

 

 

Fot. 4. I-jet - interfejs JTAG firmy IAR obsługuje wiele rodzin mikrokontrolerów, ale współpracuje tylko ze środowiskiem Embedded Workbench (cena ok. 1000 PLN netto)

Fot. 4. I-jet – interfejs JTAG firmy IAR obsługuje wiele rodzin mikrokontrolerów, ale współpracuje tylko ze środowiskiem Embedded Workbench (cena ok. 1000 PLN netto)

 

 

Podobnym rozwiązaniem jest I-jet firmy IAR (fot. 4) – interfejs obsługuje wiele rodzin układów, ale współpracuje tylko ze środowiskiem Embedded Workbench. Świadomie pomijam w tym miejscu popularne w kręgach amatorskich (chociaż nie tylko) rozwiązania bazujące na OpenOCD (fot. 5), gdyż mimo olbrzymiej liczby użytkowników wspierających rozwój tego projektu, nadal trudno jest go określić łatwym w użyciu, a liczba obsługiwanych układów jest znacznie mniejsza niż w przypadku interfejsów komercyjnych.

 

Fot. 5. <A href=ZL24PRG – interfejs JTAG zgodny z OpenOCD obsługuje wiele rodzin mikrokontrolerów i przez interfejs GDB współpracuje z narzędziami zgodnymi z GCC (cena ok. 65 PLN netto)”>

Fot. 5. ZL24PRG – interfejs JTAG zgodny z OpenOCD obsługuje wiele rodzin mikrokontrolerów i przez interfejs GDB współpracuje z narzędziami zgodnymi z GCC (cena ok. 65 PLN netto)

 

 

Czyżby nie było na rynku interfejsu JTAG łączącego akceptowalną cenę z możliwościami i komfortem pracy wymaganymi przez typowego projektanta systemów mikroprocesorowych? Na szczęście nie jest tak źle – takim złotym środkiem jest rodzina interfejsów J-Link firmy Segger składająca się z pięciu urządzeń o zróżnicowanych możliwościach i dosyć dużej rozpiętości cenowej.

J-Link

J-Link pokazany na fot. 6 to interfejs JTAG/SWD o uznanej w świecie renomie. Oferowany w cenie ok. 1000 PLN netto, obsługuje olbrzymią liczbę układów z rodzin: ARM7/9/11, Cortex-A5/A8/A9, Cortex-M0/M1/M3/M4, Cortex-R4, RX610, RX621, RX62N, RX62T, RX630, RX631, RX63N.

 

Fot. 6. <A href=J-Link – interfejs JTAG firmy Segger, obsługuje wiele rodzin mikrokontrolerów i współpracuje z większością popularnych środowisk programistycznych (cena ok. 1000 PLN netto)”>

Fot. 6. J-Link – interfejs JTAG firmy Segger, obsługuje wiele rodzin mikrokontrolerów i współpracuje z większością popularnych środowisk programistycznych (cena ok. 1000 PLN netto)

 

 

Jednak jego największą zaletą jest to, że bezproblemowo współpracuje z wszystkimi popularnymi środowiskami programistycznymi, m.in.:

  • Atmel Studio 6 (układy z rdzeniem Cortex-M0/M1/M3/M4),
  • Atollic TrueSTUDIO (układy z rdzeniem Cortex-M0/M1/M3/M4, ARM7/9),
  • IAR EWARM (układy z rdzeniem Cortex-M0/M1/M3/M4, Cortex-A5/A8, ARM7/9/11),
  • Keil MDK (układy z rdzeniem Cortex-M0/M1/M3/M4, Cortex-A5, A8, ARM7/9),
  • Rowley CrossWorks (układy z rdzeniem Cortex-M0/M1/M3/M4, Cortex-A5/A8, ARM7/9/11),
  • Mentor Embedded Sourcery CodeBench (układy z rdzeniem Cortex-M0/M1/M3/M4, Cortex-A5/A8, ARM7/9).

O autorze