User Manual
77
4.6. Knihovna funkcí RP6 (RP6Library)
Knihovna funkcí RP6 (zkráceně RP6Library nebo RP6Lib) poskytuje velké množství lowlevel
funkcí pro ovládání hardware RP6. S touto knihovnou funkcí se obvykle nemusíte zabývat
všemi detailními parametry hardware robotu a mikroprocesoru. Abyste mohli programovat robot
RP6, nemusíte samozřejmě přečíst 300 stránek katalogového popisu mikroprocesoru
ATmega32. Některé důležité části katalogového listu však prostudovat musíte, pro správné
pochopení knihovny RP6Library.
Ve skutečnosti jsme se úmyslně vyhnuli perfektnímu vyladění všech funkcí RP6Library,
abychom nechali nějakou práci také pro vás! Budete vyzvání k přidání několika funkcí a
k optimalizaci existujících! Pokládejte knihovnu RP6Library jako dobrý výchozí bod, ale ne jako
optimální řešení.
Tato kapitola probírá nejdůležitější funkce a ukazuje krátké příklady. Pokud vás zajímají další
podrobnosti, můžete si přečíst komentáře v knihovních souborech a prostudovat funkce a jejich
použití v příkladech.
4.6.1. Inicializace mikroprocesoru
void initRobotBase(void)
Hlavní funkční blok VŽDY začíná voláním této funkce! Inicializuje hardwarové moduly
mikroprocesoru. Pokud program neprovede inicializaci, nemusí mikroprocesor fungovat
správně. Částečně se hardwarové moduly inicializují bootloaderem, ale ne všechny.
Příklad:
Principielně by měl program pro RP6 vypadat podobně. Nekonečná smyčka na řádku 9
funguje jako předpokládaný konec programu. Přeskočení nekonečné smyčky může
vyvolat neočekávané chování programu!
Připomeňme si opět princip nekonečné smyčky: obvykle se bude nekonečná smyčka používat
k provádění vlastního kódu programu. Takže odstraníte středník na řádku 9 a nahradíte ho
blokem příkazů (uzavřeným ve složených závorkách). Na řádcích před hlavní funkcí můžete
definovat vlastní funkce (v tomto případě na řádku 2) a pak lze tyto funkce volat z libovolného
místa hlavní smyčky.