Programování vestavěných systémů

B171 - Zimní 17/18

Programování vestavěných systémů - A7B35PES

Kredity 6
Semestry zimní
Zakončení zápočet a zkouška
Jazyk výuky čeština
Rozsah výuky 2+2L
Anotace
Předmět se zabývá programovacími technikami vhodnými pro malé počítačové systémy, které jsou často používané ve vestavěných řídicích jednotkách. Výklad je založen na architektuře ARM, jejích vlastnostech a filozofii. Programovací techniky jsou zaměřeny specielně na jazyk C, který se často používá k programování vestavěných systémů.
http://support.dce.felk.cvut.cz/e-kurzy/course/view.php?id=19
Cíle studia
Žádná data.
Osnovy přednášek
1. Úvod do vestavěných systémů, motivace jejich návrhu, příklady. Vlastnosti VS a fáze návrhu VS. Základy funkce mikroprocesoru, rozdíly mezi rodinami RISC a CISC, výklad základních pojmů (pipelining atd.) Rozdíly mezi mikroprocesory, mikrokontroléry a SOC (System-on-Chip).
2. Popis jádra ARM a jeho filozofie. Příklad mikrokontroléru založeného na jádře ARM. Základní HW periferie a jejich použití (TPU, UART, PWM, CAN, watchdog?). Rozhraní JTAG.
3. Základy assembleru jádra ARM. Základní rozdíly mezi jazyky C a Java. Fáze překladu programu v jazyce C. Základní struktura programu v C.
4. Pointry a jejich souvislost s asm. Pole a stringy. Scope proměnné. Funkce, volání funkcí a předávání parametrů. Dekompozice programu v C, makefile.
5. Vyjímky a přerušení v ARM a jejich obsluha v C. Psaní handleru přerušení, Atmel Advanced Interrupt Controller (AIC). Proměnné typu volatile a bezpečnost programů.
6. Pokročilé metody programování v C. Inline kód. Přenositelnost programů v C. Operace v reálném čase. Elektrické a mechanické požadavky na vestavěné systémy, spolehlivost, bezpečnost a testování VS.
Osnovy cvičení
1. Seznámení s vývojovými nástroji, sestavení a překlad jednoduchého programu.
2. I/O porty
3. Časovače a PWM
4. Komunikace po UART
5. Sběrnice I2C
6. A/D převodník
7. Sběrnice Dallas 1-wire bus
8. Test (jednoduchý program)
9. rezerva
10. Samostatná práce na semestrální úloze
11. Samostatná práce na semestrální úloze
12. Samostatná práce na semestrální úloze
13. Samostatná práce na semestrální úloze
14. Odevzdávání úloh, zápočet
Literatura
Herout P.: Ucebnice jazyka C, KOPP Ceske Budejovice 2005
Požadavky
Přednášky i cvičení předpokládají u studentů pouze znalosti získané v povinných předmětech z 1. ročníku STM, a to Programování v jazyku Java (Y36PJV)a Struktura a architektura počítačů (Y36SAP).
Stránky předmětu: https://moodle.dce.fel.cvut.cz/