Az első projekt létrehozása

A fejezet tartalma:

  1. Új projekt létrehozása
  2. A forráskód elkészítése
  3. A Makefile létrehozása
  4. A program lefordítása és futtatása
  5. A gcc4mbed fontosabb Makefile paraméterei

1. Új projekt létrehozása

Első programunkban egy egyszerű LED-villogtató alkalmazást készítünk. A példaprogram célja nem a programozási nyelv vagy az Mbed programkönyvtár megismerése, hanem a gcc4mbed fejlesztői környezet használatának elsajátítása. A gyakorlat során létrehozzuk a projektet, elkészítjük a szükséges állományokat, lefordítjuk a programot, majd feltöltjük azt a mikrovezérlőre.

A gcc4mbed könyvtárszerkezetében a mintaprogramok a Samples könyvtárban találhatók. Saját programjainkat célszerű ettől elkülönítve tárolni, ezért hozzunk létre a gcc4mbed gyökérkönyvtárában egy Projects nevű könyvtárat. Ebben hozzuk létre első projektünk könyvtárát, amelynek neve legyen: 01_ledblink

Az új projektkönyvtár létrehozása után el kell készítenünk a projekt két legfontosabb állományát (a legegyszerűbb projekthez is szükséges ez a két fájl):

A következő lépésekben ezt a két fájlt készítjük el és helyezzük el a könyvtárstruktúrában, ahogy az alábbi ábra is mutatja.

Projektstruktúra
1. ábra: A 01_ledblink projekt struktúrája

2. A forráskód elkészítése

A main.cpp állományt bármilyen szövegszerkesztővel létrehozhatjuk (például Notepad). A fájl tartalma:


#include "mbed.h"

DigitalOut led1(LED1);
DigitalOut led2(LED2);

int main()
{
    while (true)
    {
        led1 = 1;
        led2 = 0;
        wait(0.5);

        led1 = 0;
        led2 = 1;
        wait(0.5);
    }
}

A program a kártya két beépített LED-jét felváltva kapcsolgatja. A program részletes ismertetésére később térünk vissza; elsőként a teljes fejlesztési folyamat működését ellenőrizzük.

3. A Makefile létrehozása

A gcc4mbed fordítási rendszerét a projekt könyvtárban található Makefile vezérli. Ez határozza meg többek között a projekt nevét, a célhardvert és a fordítás néhány fontos beállítását.

A 01_ledblink projekt Makefile állománya:


PROJECT         := 01_ledblink
DEVICES         := KL25Z
GCC4MBED_DIR    := ../..
GCC4MBED_TYPE   := Release
MBED_OS_ENABLE  := 0
NEWLIB_NANO     := 1
NO_FLOAT_SCANF  := 1
NO_FLOAT_PRINTF := 1

include $(GCC4MBED_DIR)/build/gcc4mbed.mk

A Makefile-ban használt paraméterek jelentése:

Az utolsó sor a gcc4mbed saját Makefile-rendszerét tölti be, amely tartalmazza a fordításhoz szükséges általános szabályokat.

4. A program lefordítása és futtatása

  1. A Buildshell.cmd script elindításával nyissunk egy parancsablakot, és navigáljunk a 01_ledblink projekt mappájába, például: cd C:\gcc4mbed\Projects\01_ledblink.
  2. Adjuk ki a make parancsot. Többmagos számítógépen a fordítás párhuzamos futtatással gyorsítható. például: make -j8 vagy make -j16.
  3. Sikeres fordítás után az eszköz nevével (esetünkben KL25Z) létrejövő kimeneti könyvtárban találjuk meg a mikrokontrollerre tölthető programfájl. A legfontosabb formátumok:
    01_ledblink.bin – közvetlenül a kártyára másolható bináris program,
    01_ledblink.hex – Intel HEX formátumú programfájl.
  4. Csatlakoztassuk a FRDM-KL25ZJ kártyát a számítógéphez normál üzemmódban (csatlakoztatáskor ne nyomjuk le a RESET gombot).
  5. Másoljuk át a generált 01_ledblink.bin fájlt a PC-n megjelenő FRDM-KL25ZJ meghajtó gyökerébe. A másolás befejeztével a RESET gomb megnyomásával vagy a kártya újracsatlakoztatásával az új program azonnal elindul.
Projek filestruktúra
2. ábra: A 01_ledblink projekt bináris állományai

5. A gcc4mbed további Makefile paraméterei

A gcc4mbed számos további beállítási lehetőséget biztosít. A leggyakrabban használt paramétereket az előző rész ismertette; a további lehetőségek részletes leírása a csomaghoz mellékelt makefile.creole dokumentációban található.