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 85 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
Platné příkazy jsou: R<CR><LF> spuštění vzorkování S<CR><LF> zastavení vzorkování Ix<CR><LF> nastaví interval podle vzorce Tvz=T0+200*x; (např. Druhá část úlohy realizující příjem dat řízení vzorkování bude realizována ve funkci task_cmd. této funkci již předpřipravena část kódu realizující příjem dat. . Toto zastavení mělo následek zastavení celé aplikace. Funkci třeba předat dva argumenty, číslo portu UART požadovanou rychlost. Funkce UARTInit inicializační funkce, která volá při startu procesoru a nastaví příslušné parametry UARTu. První úlohu realizující odesílání dat UART bude realizovat funkce task_adc. První číslo portu UART, druhý ukazatel paměť, kde leží data poslední délka dat. Funkci předávají celkem tři parametry. Pro dokončení této funkce třeba dopsat kód pro vyhodnocování příkazů PC.78 Funkci třeba předávat parametr číslo portu UARTu, kterého chceme číst. V této funkci třeba vždy změřit napětí ADC převodníku, zpracovat jej poslat v příslušném tvaru rozhraní UART Formát komunikace měl vypadat takto: Axy<CR><LF> (0x41 0x0D 0x0A) kde znak CR(Carriage Return) návrat vozíku, znak (line feed) znak konce řádku. Poslední funkce ovladače slouží odesílání dat přes UART. Znaky jsou ASCII znaky hexadecimálního vyjádření naměřené hodnoty. příkazech rozlišují malá velká písmena. Pro snadný převod je předpřipraveno makro: NumToHex(i); Toto makro vrátí ASCII kód spodního nibble proměné i. Znak vyšší část (horní nibble 4b), znak pak část nižší. Např: UARTInit(0,9600); Toto zavolání funkce inicializuje UART (na desce konektor COM nastaví rychlost komunikace 9600 Bd. Tyto hodiny budou řídit obě úlohy. Pro řízení aplikace využijeme opět modul Timer0, který bude realizovat funkci systémových hodin. I5<CR><LF>) kde výchozí interval 200ms, číslo mezi přičemž 0=0ms 9=1800ms. Tuto funkci třeba volat ještě před vstupem do nekonečné smyčky. Připravení dat následné odesílaní UART může vypadat např. takto: uart_out[0] 'A'; uart_out[1] 'h'; uart_out[2] 'o'; uart_out[3] 'j'; uart_out[4] '!'; UARTSend(0,uart_out,5); Provedení aplikace kooperativním multitaskingu znamená, oba procesy musí vědomě předávat řízení nesmí stát, program jednom procesů zastaví