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 86 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
Úlohu vytváříme tak, jakoby MCU byla sama zároveň komunikovala jinými úlohami „jiných“ procesorech. Základní konfigurace FreeRTOS provádí souboru FreeRTOSConfig. Možné řešení tohoto tasku může vypadat takto: void task_adc( void *pvParameters ) { char uart_out[5]; short napeti; portTickType xNextWakeTime; xNextWakeTime xTaskGetTickCount(); while(1) { vTaskDelayUntil( &xNextWakeTime, DelayMS(200*rychlost) ); if(vzorkovani ON) { napeti adc_get0(); napeti napeti 4; uart_out[0] 'A'; uart_out[2] NumToHex(napeti 0x000F); uart_out[1] NumToHex((napeti 0x00F0) 4); uart_out[3] CR; uart_out[4] LF; UARTSend(0,uart_out,5); } } } . Jednoduché RTOS neomezují přístup hardwarovým prostředkům tomu není ani podpora použitém MCU). Nejpodstatnější parametry jsou: #define configUSE_PREEMPTION 1 použití preemptivního multitaskingu #define configTICK_RATE_HZ portTickType 1000 ) nastavení kmitočtu tiků Hz #define configTOTAL_HEAP_SIZE size_t 8192 )) nastavení velikosti Heap, jde paměť kde FreeRTOS ukláda Stacky jednotlivých úloh V dodané kostře projektu třeba dokončit task pro adc. V předpřipraveném projektu MPOA_CV_5b jsou již připraveny soubory jádra systemu FreeRTOS.79 Úkol 2 Použití RTOS mění filozofii programování. možné paralelně RTOS např. Každá úloha obsahuje vlastní nekonečnou smyčku. Ochrana paměti systém privilegovaných úloh výsadou „výšších“ procesorů. využívat systém přerušení. Zde již přednastaveno vše potřebné. Nevhodně napsaná úloha tak může znehodnotit celou aplikaci.h. úlohy, které spolu komunikují prostřednictvím některého standardního mechanismu (semafory, zprávy, mailboxy). Základem již není hlavní smyčka, ale tzv