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.
- 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:
Konfiguracja OpenOCD:
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 :)