Tworzenie oprogramowania dla systemów wbudowanych

Transkrypt

Tworzenie oprogramowania dla systemów wbudowanych
Tworzenie oprogramowania dla systemów wbudowanych
Cel i zakres ćwiczenia:
Eclipse to wolne oprogramowanie napisane w języku Java stanowiące platformę do
tworzenia aplikacji. Na jej bazie powstało zintegrowane środowisko programistyczne do
tworzenia programów w różnych językach - przede wszystkim Java oraz C/C++. Projekt
został stworzony przez firmę IBM, a następnie udostępniony na zasadach otwartego
oprogramowania. W chwili obecnej jest on rozwijany przez Fundację Eclipse.
Celem ćwiczenia jest zapoznanie ze sposobem instalacji i konfiguracji środowiska Eclipse
do pracy z cross-kompilatorem oraz zapoznanie ze sposobem konfiguracji Eclipse do
uruchamiania i debugowania aplikacji bezpośrednio na urządzeniu wbudowanym.
Sposób wykonania ćwiczenia:
1. Zainstaluj wersję Linuksową Eclipse dla programistów C/C++..
sudo apt­get install eclipse­cdt
2. W katalogu domowym utwórz katalog openwrt­sdk i przejdź do tego katalogu.
3. Pobierz archiwum OpenWrt-SDK przeznaczone na platformę raspberry pi 2.
wget –c teleinfo.pb.edu.pl/sswb/download/openwrt­
toolchain.tar
3. Rozpakuj archiwum:
tar -xf openwrt­toolchain.tar
4. Uruchom środowisko eclipse
eclipse
5. Po uruchomieniu Eclipse, wyświetlana jest zakładka Welcome. Należy ją zamknąć, aby
wyświetlić domyślną perspektywę
6. Tworzymy nowy projekt w języku C. Z menu File → New → Project
7. Wybieramy nazwę projektu i typ toolchaina jako Cross Gcc (typ projektu jako „Hello
World ANSI C Project”)
8. Następnie określamy opcje naszego toolchaina:
Cross compiler prefix: arm­openwrt­linux­
Cross compiler path: {tu podajemy ścieżkę do katalogu ...staging_dir/toolchain­... z rozpakowanego archiwum OpenWrt­SDK}
Po kliknięciu Finish - projekt jest tworzony i pojawia się w perspektywie.
9. Wybieramy Project → Properties następnie C/C++ General i klikamy na
link Configure Workspace Settings. Następnie wybieramy C/C++ → Build → Environment,
i klikamy Add... następnie dodajemy nową zmienną STAGING_DIR i określamy jej
wartość na równą ścieżce do katalogu ...staging_dir/toolchain­... z
rozpakowanego archiwum OpenWrt-SDK.
Zamykamy preferencje. Eclipse jest gotowy do tworzenia i kompilowania kodu w C.
10. Edytujemy przykładowy program „hello world” dodając np. jakąś funkcję, która
zmienia i wyświetla wartość jakieś zmiennej. Funkcję wywołujemy z głównej procedury
programu.
11. Zdalne uruchamianie aplikacji. Zanim zaczniemy konfigurować eclipse należy
dodatkowo zainstalować dodatkowe wtyczki. W tym celu z menu Help → Install New
Software… Wybieramy Indigo Update Site i zaznaczamy i instalujemy z Mobile and Device
Development następujące wtyczki:
•
•
•
•
C/C++ GCC Cross Compiler Support
C/C++ GDB Hardware Debugging
C/C++ Remote Launch
Remote System Explorer End-User Runtime
Następnie z menu Window → Show view → Other… i Remote Systems. Następnie
tworzymy nowe połączenie: klikając na Local następnie New → Connection…. i wybieramy typ
Linux. Następnie ustawiamy parametry zdalnego Linuksa. (w polu Host Name wpisujemy adres
naszego openwrt). Następnie konfigurujemy sposób przesyłania plików jako ssh.files, sposób
pozyskiwania informacji o procesach: processes.shell.linux i sposób zdalnego uruchamiania
poleceń ssh.shells.
Zdalny system został skonfigurowany. Poprawność działania połączeń, można sprawdzić klikając
na nazwę naszego systemu i wybierając Connect.
12. Pliki można przenosić między katalogami na zasadzie przeciągnij i upuść. Przenosimy nasz
skompilowany program do katalogu domowego na systemie wbudowanym. Można też skorzystać z
bezpośredniego dostęp do terminala naszego OpenWrt w celu uruchomienia naszego programu.
13. Następnie instalujemy na OpenWrt debuger gdb i program gdbserver
opkg update
opkg install gdb
opkg install gdbserver
12. Uruchamiamy nasz program w terminalu pod kontrolą debuggera:
gdb ./HelloWorld
debugger umożliwia dostęp do wielu komend, (informacje o poszczególnych komendach
wyświetlają się za pomocą komendy help). Korzystając np. z komend break, run,
continue i print przeanalizuj działanie programu. Następnie zamknij debugger za
pomocą komendy quit.
13. Skonfiguruj eclipse do zdalnego debugowania aplikacji. W tym celu wybieramy z menu
Run → Debug Configuration, a następnie klikamy na C/C++ Remote Application i
wybieramy New. W zakładce main ustawiamy ścieżki dostępu do programu
wykonywalnego na naszym komputerze i systemie wbudowanym. W zakładce Debugger ustawiamy właściwą ścieżkę do cross-debuggera gdb.
Konfiguracja eclipse zakończona można zdalnie debugować naszą aplikację.
i to już koniec :)
Opracowanie sprawozdania
Nie ma potrzeby sporządzania sprawozdania z tego ćwiczenia.
Wymagania BHP
W trakcie realizacji programu ćwiczenia należy przestrzegać zasad omówionych we wstępie
do ćwiczeń, zawartych w: „Regulaminie porządkowym w laboratorium” oraz w „Instrukcji
obsługi urządzeń elektronicznych znajdujących się w laboratorium z uwzględnieniem
przepisów BHP”. Regulamin i instrukcja są dostępne w pomieszczeniu laboratoryjnym w
widocznym miejscu.
Literatura
1. Bis M.: „Linux w systemach embedded”, Wydawnictwo BTC, Warszawa, 2011
2. https://openwrt.org/

Podobne dokumenty