Využítí ARM GCC vývojového retezce

| Kategorie: Diplomové, bakalářské práce  | Tento dokument chci!

Předmětem této práce je studium stávajícího vývojového řetězce pro mikroprocesor LPC23xx v předmětu MPOA. Hlavním cílem je zkoumání možností realizace nového vývojového řetězce, postaveného na GCC. Výstupy této práce jsou ukázkové aplikace s mikroprocesorem LPC2378 a GCC. Součástí vysledků jsou i návody pro studenty, jak tyto ukázkové aplikace implementovat. Ukázky zahrnují základní aplikace, RTOS aEthernet.

Vydal: FEKT VUT Brno Autor: Jan Ledvina

Strana 23 z 93

Vámi hledaný text obsahuje tato stránku dokumentu který není autorem určen k veřejnému šíření.

Jak získat tento dokument?






Poznámky redaktora
Jedná jednoduchý driver pro LED diody. Poznámka makefile jsou dvě sekce zdrojových kódu: ARM THUMB. Důvodem proč třeba pochopit alespoň některé úseky souboru makefile nutnost modifikovat jej každým přidaným zdrojovým kódem *. Tato úloha velice jednoduchá její účel není tvorbě jednoduchého kódu, ale seznámení vývojovým prostředím prací v tomto prostředí. Přesný vznik této chyby nebyl zjištěn je možné, odstranění chyby lze provést změnou nastavení GCC.16 Tento kód již fungoval byla tedy úspěšně ověřena správnost části řetězce, která je zodpovědná programování MCU.1 B. . Tato kontrola byla provedena přidaný soubor projektu již plně odpovídá tomuto požadavku GCC. Na základě této vlastnosti třeba zkontrolovat, zda soubor skutečně definován správně. Po detailní analýze bylo zjištěno, tato teorie správná. Na základě těchto zjištění lze jednoznačně určit, chyba zdrojových kódech v jazyce Jako další krok bylo otestováno nastavení různých úrovní pinech MCU. 3.2 Aplikace driver LED Další aplikací byla již první úloha podle oficiálních zadání úloh předmětu MPOA.h deklaraci adres registrů. Respektive při linkování dojde k změně hodnot výsledný kód chybný. Pro ilustraci zde uveden příklad: (*(volatile unsigned long 0x3FFFF050 0x000000FF; /*správně*/ (*(unsigned long 0x3FFFF050 0x000000FF; /*špatně*/ Oba zápisy měly uložit adresu 0x3FFFF050 hodnotu 0x000000FF. Avšak případě, student rozhodne nějaký soubor přidat, třeba příslušně upravit soubor makefile. některé vygenerované kódy neuloží zadané hodnoty zadaných registrů.s. V tomto případě jedná seznámení organizací adresářů souborů (příloha B. Samozřejmě, veškeré aplikace této práci mají makefile napsaný přesně odpovídající jejím souborům. Zdálo se, jakoby někdy došlo zápisu do příslušného registru jindy ne.c nebo *. Poznámka Úpravování seznamování souborem makefile bylo nakonec vypuštěno.4. Bylo jednoznačně určeno, jde nedostatek překladu. Zde došlo dalšímu průlomu, při změně zdrojovém kodu došlo občas vygenerování výstupního souboru, který pracoval správně. Tyto sekce určují, jaka instrukční sada bude použita při překladu. konzultaci několika studenty bylo zjištěno, tato část značně matoucí. Druhý zápis však někdy překladač GCC přeloží špatně.2) principem souboru makefile. delší době bylo zjištěno, že problém byl zápisu souboru lpc23xx. Důležité však je, tyto stavy naprosto nezávisí žádných okolních jevech (Reset, Teplota, Napětí Ucc)