Page 1 of 6 Bez zb?dnego lania wody przejd?my do rzeczy... Do wygodnego tworzenia oprogramowania dla ARMów potrzeba nam:
- edytora (IDE),
- toolchaina (kompilator, assembler, linker, binutils, biblioteki, ...),
- oprogramowania do debuggowania.
Edytor (IDE)
W roli edytora lub IDE dla ARMów spotykany jest zwykle jeden z dwóch programów - Programmers Notepad albo Eclipse. Poza tymi dwoma mo?liwe jest oczywi?cie zastosowanie wielu innych aplikacji, takich jak cho?by CodeBlocks lub DevC++. Poniewa? moim zdaniem ogromne mo?liwo?ci i du?a popularno?? Eclipse rekompensuj? jego niewielkie wady (jest napisany w Javie, wi?c czasem potrafi si? przyci??), tutorial ten bazowa? b?dzie w?a?nie na Eclipse. ?rodowisko Eclipse umo?liwia nam pisanie kodu, zarz?dzanie projektem, programowanie uk?adu oraz jego debuggowanie - czego chcie? wi?cej? (;
ARM toolchain
Na chwil? obecna dost?pnych jest wiele kompletnych i gotowych toolchainów dla ARMa - jedne s? na wiele platform, inne tylko na jedn?. Warto wymieni? takie pakiety jak WinARM, GNUARM i Yagarto. Tutorial ten jednak oparty b?dzie jednak o inne rozwi?zanie, a mianowicie o Sourcery G++ Lite pochodz?ce z CodeSourcery. Dlaczego? Przede wszystkim istotne jest to, ?e rozwój toolchaina firmy CodeSourcery jest sponsorowany przez ARM Ltd., dzi?ki czemu jest on zawsze najbardziej zgodny ze standardami ARM, a usprawnienia wprowadzane s? najszybciej - dopiero po pewnym czasie trafiaj? one do oficjalnej dystrybucji GCC, a stamt?d dopiero do innych toolchainów. Poza tym warto nadmieni?, ?e toolchain ten jest dost?pny zarówno dla platformy Windows jak i Linux, obs?uguje instrukcje typu ARM, Thumb i Thumb-2 oraz najnowsze architektury ARMów - takie jak cho?by Cortex. Nowe wersje toolchaina od CodeSourcery wydawane s? w pó?rocznych odst?pach.
Oprogramowanie do debuggowania
Debugger GDB (GNU Debugger) potrzebuje tak zwanego "klienta GDB", który przyjmowa?by i wykonywa? jego rozkazy. W ?wiecie ARMów rol? t? doskonale spe?nia OpenOCD, które równie? jest aplikacj? wieloplatformow?. Obecnie OpenOCD obs?uguje praktycznie wszystkie istniej?ce JTAGi do ARMa (m.in. klony Wigglera (LPT), uk?ady oparte o FT2232 (USB), JLink, RLink i wiele innych) oraz wi?kszo?? istniej?cych rodzajów ARMów (w tym ARM7, ARM9 i Cortex-M3).
Instalacja krok po kroku...
Poni?szy tutorial oparty jest o system Windows, niemniej jednak nie ma ?adnego problemu, aby porady tu przedstawione zastosowa? dla systemu Linux (oczywi?cie nie dos?ownie).
|