poniedziałek, 23 lutego 2015

Stellaris Launchpad LM4F120XL + Eclipse + OpenOCD - konfiguracja środowiska (Win)

Przedstawiam krótką instrukcję podstawowej konfiguracji środowiska Eclipse i OpenOCD 0.8.0 (wykorzystywanego tylko do programowania układu). Projektem referencyjnym będzie przykład blinky udostępniany przez producenta.
Do uruchamiania środowiska do programowania lanuchpada firmy Texas Instruments niezbędne będzie pobranie kilku plików:
  • pakiet Eclipse CDT ze strony eclipse.org,
  • wtyczka GNU ARM Eclipse,
  • projekt referencyjny dla lanuchpada stellaris lm4f120xl (link) dla Mentor Sourcery (oznaczony na stronie jako: EK-LM4F120XL-CB: StellarisWare® and Mentor Sourcery CodeBench for the Stellaris LM4F120 LaunchPad),
  • skompilowane OpenOCD (na stronie freediego chopina),
  • kompilator ARM GCC Linaro - Bare-metal toolchain for Cortex-R/M and Cortex-A (link).
Po rozpakowaniu pakietu Eclipse instalujemy jeszcze wtyczkę GNU ARM Eclipse, opis instalacji opisany jest na stronie domowej. Umożliwi to przygotowanie i kompilację projektu bez tworzenia pliku makefile dla każdego projektu - trzeba będzie wyklikać ustawienia, natomiast pliki dodawane są automatycznie z drzewa projektu.

Po pobraniu najnowszego OpenOCD rozpakowujemy je do lokalizacji niezawierającej spacji w ścieżce - unikniemy tym samym potencjalnych problemów w przyszłości. Podobnie postępujemy w przypadku instalacji kompilatora ARM GCC.

Kolejnym krokiem jest instalacja projektu referencyjnego dostarczanego przez Texas Instruments dla środowiska Mentor Sourcery. Z niego pozyskamy kilka podstawowych plików z projektem blinky, kod startowy oraz plik skryptu linkera.


Mając wstępnie skonfigurowane środowisko w Eclipse tworzymy nowy projekt i kopiujemy do niego pliki:
  • startup_gcc.c
  • blinky.ld
  • blinky.c
  • oraz cały folder inc z plikami nagłówkowymi.
We właściwościach projektu konfigurujemy ścieżkę do skryptu linkera wg. poniższego screena.

Dodanie zaimportowanego skryptu linkera:



Warto przy okazji ustawić typ generowanego pliku wynikowego wykorzystywanego do programowania (plik *.bin).

Konfiguracja generowania pliku binarnego po kompilacji:


Możemy już teraz zbudować (skompilować) nasz pierwszy prosty projekt. Pozostaje nam jeszcze konfiguracja OpenOCD aby możliwe było programowanie bezpośrednio z Eclipse.

Konfiguracja OpenOCD:


Jeśli nie skonfigurujemy OpenOCD zawsze można programować układ przy użyciu dostarczanego przez TI programu LM Flash Programmer za pomocą aplikacji z interfejsem graficznym bądź z wiersza poleceń (nie testowałem).

Na koniec warto dodać sobie skrót klawiaturowy do nowo skonfigurowanego narzędzia External Tools.

Dla najwytrwalszych czytelników załączam kompletny plik z projektem :)