wersja mobilna | kontakt z nami

Komercyjne środowiska sprzętowo-programowe dla programistów mikrokontrolerów ARM Cortex-M

Numer: Styczeń/2017

Komercyjne środowiska programistyczne, pomimo naporu rozwiązań bezpłatnych, ciągle dobrze się trzymają na rynku. Są one coraz lepiej wyposażone i właśnie na zaawansowanych możliwościach funkcjonalnych, niedostępnych w narzędziach bezpłatnych, budują i utrwalają swoją pozycję na rynku. W artykule przedstawiamy trzy najpopularniejsze w Polsce komercyjne pakiety programistyczne oraz współpracujące z nimi narzędzia sprzętowe, niezbędne w każdym poważnym, mikrokontrolerowym laboratorium projektowym.

Pobierz PDF

Na rynku dostępne są różnorodne narzędzia dla programistów przygotowujących aplikacje na mikrokontrolerowy ARM, z których najczęściej są stosowane zintegrowane środowiska programistyczne składające się z IDE, kompilatorów, debuggerów, w niektórych przypadkach także programowych symulatorów oraz narzędzi pomocniczych. Od takich właśnie pakietów zaczniemy nasz przegląd.

rys-1Keil/ARM MDK-ARM z IDE mVision i DS-5

Nadal najpopularniejszym pakietem narzędziowym wśród programistów piszących aplikacje dla mikrokontrolerów wyposażonych w rdzenie ARM w naszym kraju jest MDK-ARM firmy ARM (dawniej Keil). Napisałem „nadal”, bowiem producent tego narzędzia nie rozpieszcza swoich fanów, którzy są zmuszeni do kupowania stosunkowo drogich wersji komercyjnych tego narzędzia, producent – niestety – nie oferuje rozwiązań „budżetowych”, co jest to usprawiedliwione wysoką jakością tego narzędzia. W pewnym stopniu sytuację ratują dedykowane wersje oprogramowania – dzięki współpracy z producentami mikrokontrolerów – udostępniane bezpłatnie, ale ograniczone do wybranej rodziny mikrokontrolerów. Dla prostych aplikacji alternatywą jest także dostępna bezpłatnie wersja Lite, która umożliwia kompilowanie programów o objętości kodu wynikowego do 32 kB.

rys-2Pakiet ARM-MDK jest kompletnym systemem integrującym w jednym, łatwym w obsłudze środowisku wszystkie narzędzia programistyczne (rysunek 1): kompilatory języków C/C++ oraz asemblera, linker, programowy symulator, debugger oraz „opakowujące” te narzędzia w interfejs graficzny IDE (Integrated Development Environment) o nazwie mVision (rysunek 2) lub DS-5 (bazujący na Eclipse).

Standardowym wyposażeniem wszystkich wersji MDK są biblioteki CMSIS (tabela 1), system operacyjny CMSIS-RTOS RTX, wersja najdroższa – MDK-Professional – jest dostarczana także z kompletem bibliotek obsługujących interfejsy komunikacyjne, w tym TCP/IP, USB Device i Host, interfejs CAN, system plików FAT oraz interfejsy graficzne. Nowe wersje pakietu MDK-Professional będą obsługiwać także architektury ARMv8-M oraz dwurdzeniowe Cortex-A/Cortex-M.

Pakiet MDK-ARM jest przystosowany do współpracy z większością popularnych interfejsów programująco-debugujących (m.in. J-Link firmy Segger, ST-Link firmy STMicroelectronics, OpenSDA, Nuvoton Nu-Link), jest także przystosowany do łatwego upgarde’owania (poprzez dodanie odpowiednich bibliotek DLL) obsługi nowych interfejsów. Producent pakietu oferuje jego użytkownikom własne interfejsy – serię urządzeń o nazwie ULink – których rodzina składa się obecnie z trzech modeli:

rys-3- ULINK2 – model podstawowy, obsługujący mikrokontrolery ARM7/ARM9, Cortex-M, starsze mikrokontrolery z rdzeniem 8051: XC800/mPSD/LPC950 oraz 16-bitowe XC166. Obsługuje interfejs SWO z prędkością do 1 Mb/s, nie jest obsługiwany przez IDE DS-5,
- ULINKproD (fotografia 3) – interfejs przystosowany do współpracy z interfejsami zasilanymi napięciem od 1,2 V, obsługą SWO do 100 Mb/s, obsługiwany przez obydwa IDE,
- ULINKpro – interfejs przystosowany do współpracy z interfejsami zasilanymi napięciem od 1,2 V, obsługą SWO do 100 Mb/s, ETM do 800 Mb/s, obsługiwany przez obydwa IDE.

Pakiet MDK-ARM jest oferowany w czterech podstawowych wersjach, których najważniejsze cechy zestawiono w tabeli 1.

 

tab-1IAR Embedded Workbench

Dużą elastycznością oraz zaawansowanymi możliwościami funkcjonalnymi charakteryzuje się także pakiet Embedded Workbench firmy IAR. Jest on w naszym kraju nieco mniej popularny niż MDK, ale oferuje nie mniejsze możliwości, zwłaszcza podczas projektowania i optymalizacji systemów energooszczędnych. Firma IAR wyposażyła pakiet Workbench w pluginy umożliwiające współpracę ze wszystkimi liczącymi się systemami na rynku (m.in. AVIX, CMX-RTX, e-Force µC3/Compact, FreeRTOS, OpenRTOS, SafeRTOS, Freescale MQX, Micrium µC/OS-III, Quadros RTXC, Segger embOS). IAR Workbench używa własnego IDE (rysunek 4), o nieco innym sposobie obsługi niż wcześniej prezentowany MDK, ale rozwiązanie proponowane przez firmę IAR ma także wielu zwolenników, dostępne są także narzędzia integrujące środowisko Workbench pod „skrzydłami” Eclipse.

rys-4Pakiet Embedded Workbench jest przystosowany do współpracy z wieloma standardowymi interfejsami do debugowania i programowania (jak na przykład rodzina interfejsów J-Link firmy Segger), producent pakietu oferuje także kilka typów własnych interfejsów, jak na przykład I-jet (fotografia 5, taktowanie JTAG do 48 MHz) lub I-jet Trace (fotografia 6, taktowanie JTAG do 100 MHz). Mocną stroną pakietu Embedded Workbench jest zaimplementowana obsługa najpopularniejszych interfejsów komercyjnych (m.in. Segger J-Link, ST-Link, XDS100) oraz open-source jak na przykład Stellaris FTDI/ICDI, Macraigor OCDemon, OpenSDA itp.

rys-5

Atollic TrueSTUDIO

Firma Atollic opracowując pakiet TrueSTUDIO wybrała inną drogę niż firmy, których narzędzia przedstawiliśmy dotychczas: zamiast budować własne oprogramowanie od podstaw, jej inżynierowie wykorzystali oprogramowanie open-source (IDE Eclipse, kompilator ARM-GCC, serwer debuggera gdbsever), które charakteryzuje się – w wersjach natywnych – trudną instalacją, koniecznością wykonywania wielu ręcznych modyfikacji i poprawek, a także monitorowania zmian wprowadzanych przez zespoły freelancerów rozwijających oprogramowanie.

rys-7Pakiet TrueSTUDIO (rysunek 7) – pomimo tego, że składa się z elementów open-source’owych – jest wygodny w instalacji i nie wymaga podczas eksploatacji przesadnej troski ze strony użytkowników. Nie dzieje się to oczywiście za darmo: wersja TrueSTUDIO Pro wymaga zakupu licencji, ale jej koszt jest konkurencyjny w stosunku do innych narzędzi dostępnych na rynku. Pakiet TrueSTUDIO Pro jest dostępny w 30-dniowej wersji trial.

Wersja komercyjna TrueSTUDIO Pro jest wyposażona w zaawansowane narzędzia profilujące, debugujące i optymalizujące projekty, które odróżniają je od bezpłatnej wersji TrueSTUDIO, wśród nich m.in.: CPU Fault Analyzer, Statistic Profiler, Exception and Interrupt Tracing, Instruction Tracing, Real-Time Data Access Tracing, a także możliwość debugowania pracy systemów wielordzeniowych.

Pakiet TrueSTUDIO nie został przez producenta wyposażony w zintegrowany system operacyjny, ale może współpracować z kilkoma systemami komercyjnymi (m.in. HCC-Embedded eTaskSync, Micrium uC/OS, CMX-RTX/CMX-TINY+, Express Logic ThreadX, FreeRTOS, Segger embOS, HighIntegritySystems/Wittenstein OpenRTOS/SafeRTOS, Code Time Technologies Abassi, Quadros RTXC).

rys-7Opracowując komercyjną wersję TrueSTUDIO producent założył, że obsługiwane będą przede wszystkim interfejsy programująco-debugujące zgodne z gdbserver, ale dość szybko zintegrowano w nim także obsługę interfejsów J-Link firmy Segger, Atmel SAM-ICE oraz interfejsów zgodnych z ST-LINK oraz ST-LINK/V2 firmy STMicroelectronics.

Podsumowanie

W tej części artykułu przedstawiliśmy trzy najpopularniejsze w naszym kraju, komercyjne pakiety narzędziowe dla mikrokontrolerów z rdzeniami firmy ARM. Oferowane przez niektórych producentów mikrokontrolerów pakiety bezpłatne oraz dodatkowe narzędzia programowe dla programistów przedstawimy w kolejnych wydaniach EP.

Tomasz Starak, EP

 

tabela-2

Pozostałe artykuły

STM32 - sterowanie wyświetlaczami LED w technice charlieplexing

Numer: Luty/2018

Charlieplexing (crossplexing) - to sposób sterowania matryc LED przy użyciu minimalnej możliwej liczby połączeń pomiędzy układem sterującym i matrycą. Sama nazwa tego sposobu sterowania techniki jest anegdotą - pochodzi ona od imienia jej domniemanego wynalazcy, Charlie Allena, który w 1995 roku zaproponował jej użycie w produktach firmy Maxim. W rzeczywistości ten sposób sterowania matrycy LED został opatentowany przez AEG-Telefunken ...

Poprawna aplikacja wyświetlacza OLED

Numer: Luty/2017

Wyświetlacze OLED coraz wyraźniej zaznaczają swoją pozycję na rynku i już niebawem mogą stać się dominującym produktem w zastosowaniach zarówno przemysłowych, jak i powszechnych. Cechuje je bardzo wysoki kontrast i energooszczędność nieosiągalna dla wyświetlaczy LCD. Nowe technologie wymagają jednak nowych rozwiązań.

Przekaźniki - parametry i zasady aplikacji

Numer: Styczeń/2017

O przekaźnikach elektromagnetycznych wielokrotnie pisaliśmy w Elektronice Praktycznej. Każdy elektronik wie, są one stosowane w roli przełączników i włączników, ale niestety nie każdy używa ich świadomie. Jak każdy komponent przekaźniki charakteryzują się pewnymi parametrami, o których warto wiedzieć wybierając odpowiedni do swojej aplikacji.

Synergy RTOS

Numer: Listopad/2017

Układy wbudowane często wykonują skomplikowane zadania. Jeżeli stopień skomplikowania jest bardzo duży, to programistom jest łatwiej podzielić wykonywane zadanie na małe wątki i uruchomić pod systemem czasu rzeczywistego RTOS. Dla procesorów Synergy firma Renesas dostarcza RTOS dystrybuowany pod nazwą ThreadX. Pokażę na prostym przykładzie, w jaki sposób wykonać w środowisku e2studio projekt wspierający programowanie pod kontrolą ...

Lampy 6SN7 i ECC99 w stopniu sterującym wzmacniacza

Numer: Listopad/2017

Wśród wielu lamp stosowanych w aplikacjach stopni sterujących wzmacniaczy akustycznych wyróżnić można dwie popularne grupy. Pierwsza to znane od lat, mające wielu fanów ich "czarującego dźwięku" wysokonapięciowe 6SN7 różnych producentów, w tym z rosyjskim odpowiednikiem 6N8S (6H8C), a grupa druga to podobne do siebie niskonapięciowe - rosyjska 6N6P i słowacka ECC99. Lampa słowacka różni się od rosyjskiej wysokim dopuszczalnym ...

Mobilna
Elektronika
Praktyczna

Elektronika Praktyczna

Kwiecień 2018

PrenumerataePrenumerataKup w kiosku wysyłkowym

Elektronika Praktyczna Plus

lipiec - grudzień 2012

Kup w kiosku wysyłkowym