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 82 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
této úloze bude systémový čas generován pomocí přerušení vyvolaného časovačem Základní funkce jsou modulu timer_drv. souboru timer_drv. Řešení bez ošetření zákmitů by mohlo vypadat následovně: unsigned char cnt=0; /* LCD */ lcd_init(); lcd_clrscr(); /* KBD */ kbd_init(); lcd_puts("0x00"); while (1) { while (!b0psh()); /*čekání stisk*/ cnt++; lcd_gotoxy(0,0); lcd_puts("0x"); lcd_putc(NumToHex((cnt 0xF0) 4)); lcd_putc(NumToHex(cnt 0x0F)); while (b0psh()); /*čekání uvolnění*/ } Úkol Stavový automat Použití stavových automatů vyžaduje existenci systémových hodin.c Základem programu bude nekonečná smyčka.75 Zpoždění Pro pokusy klávesnicí vhodné mít dispozici funkci pro zpoždění.h předpřipravené makro pro výpočet času. . Čas je reprezentován celočíselným údajem, který vyjadřuje počet násobků základního časového kvanta. Možné řešení může být následující: #define DCONST 6000U void delay_ms(unsigned int ms) { volatile unsigned int i; for(; ms; ms--) for(i=0; i<DCONST; i++); } Výpis proměné LCD Pro výpis proměné LCD již předpřipraveno makro pomocná tabulka. const char hex[16] '0','1','2','3','4','5','6','7', '8','9','A','B','C','D','E','F' }; #define NumToHex(i) (hex[(i)]) S využitím tohoto makra pak zápis proměnné unsigned char LCD může vypadat takto: lcd_putc(NumToHex((cislo 0xF0) 4)); lcd_putc(NumToHex(cislo 0x0F)); Hlavní modul main