GNU GCC kompilátor
Programy pro Cortex-M3 budete psát převážně v programovacím jazyku C. Zdrojové kódy programů musíte přeložit pomocí překladače do strojového kódu procesoru.
K dispozici je řada komerčních překladačů Céčka, například od firem Keil, IAR, ARM, jsou ale poměrně drahé. Jejich výrobci dávají volně k vyzkoušení verze, které jsou omezené velikostí generovaného kódu. Pro řadu malých projektů lze tato omezení akceptovat, pokud ale velikost výsledného kódu přesáhne omezení testovací verze kompilátoru, musíte najít jiné řešení. Buď si koupíte plnou verzi komerčního překladače nebo můžete použít volně šiřitelný software.
Co nás čeká ...
Instalace GNU GCC
Pro naše příklady budeme používat volně šiřitelný překladač jazyka C z projektu GNU GCC. Kompilátor umožňuje generovat kód pro řadu procesorů, pro nás je důležitá cílová architektura ARM a procesor Cortex-M3. Sada programů překladače kromě GNU kompilátorů C a C++ také obsahuje assembler, linker, knihovny, debugger a řadu utilit pro práci s vygenerovaným kódem. Programy sady GNU GCC jsou šířeny zdarma pod licencí GPL a lze je používat bezplatně i pro komerční účely.
Překlad a program Make
Nebudeme se zabývat triviálním spuštěním překladače pro kompilaci a sestavení programu, který je obsažen v jediném zdrojové souboru. Připravíme si jednoduchý rámec, který můžeme použít pro kompilování dalších příkladů.
Linker script
Při sestavení binárního obrazu programu musíme linkeru říct, kam má v paměťovém prostoru procesoru umístit jednotlivé sekce programu. Jednoduchý příklad takového předpisu, který se nazývá linker script si nyní popíšeme.