Lektor:
Ing. Jaroslav Lepka (Freescale Polovodiče, s.r.o.)
Ing. Libor Prokop (Freescale Polovodiče, s.r.o.)
Datum akce:
Čtvrtek, 27. Květen 2010 - 9:00 - Pátek, 28. Květen 2010 - 17:00
Mikropočítače a především aplikace řízené mikropočítači zasahují v současné době prakticky do všech oblastí lidské činnosti. S mikropočítačovými systémy se dnes setkáváme od hraček, přes domácí spotřebiče, spotřební elektroniku, lékařskou techniku, meřicí a diagnostické systémy, komunikace, automobilový a letecký průmysl až po kosmické technologie. Cílem kurzu je seznámení s novými trendy v mikropočítačích pro embedded systémy, způsoby programování a ladění komplexních aplikací, možnostmi použití nástrojů výrazně urychlujících vývojový proces. Součástí kurzu bude i praktická část, během které si účastníci budou moci vyzkoušet praktické aspekty programování mikroprocesorových systémů.
Dvoudenní intenzivní kurz bude rozdělen do následujících logických celků:
-
Úvod do mikroprocesorové techniky v embedded systémech. V úvodu se zaměříme na mikropocesory / mikropočítače obecně, zrekapitulujeme základní pojmy jako jsou architektury procesorů typu CISC, RISC, DSP, sběrnicový systém, paměť (RAM, Flash, MRAM), atd. Jelikož je kurz zaměřen na mikropočítače v embedded systémech, budou zmíněna specifika použití mikropočítačů v této oblasti (napájení, typické periferie, pouzdření, podpora pro zabezpečení aplikací běžících na embedded mikropočítačích, atd.).
-
Rodina embedded mikropočítačů Freescale. Abychom poměrně komplexně probrali všechny důležité vlastnosti embedded mikropočítačů z hlediska hardware, programování a debuggování, zvolíme jednoho typického zástupce z rodiny embedded mikropočítačů Freescale. Stručně bude zmíněna tzv. road mapa rodiny mokropočítačů, jejich vlastnosti a možné oblasti použití.
-
Jádro mikropočítače. V této části se detailně zaměříme na architekturu jádra mikropočítače, budou probrány základní systémové moduly jako: generace hodin, ALU, adresovací jednotka, řídicí jednotka, sběrnicový systém, paměťový interface a specifické moduly. Detailně se zaměříme obzvláště na ALU a podporu integer a především fractional aritmetiky. Stručně bude zmíněna instrukční sada mikropočítače.
-
Typické periferie mikropočítače pro embedded systémy. Specifické požadavky embedded systémů vyžadují poměrně komplexní množinu periferií, které ve spojení s jádrem mikropičítače tvoří systém umožnující řídit různé typy aplikací. Z velké množiny periferií budou podrobně probrány univerzální periferie typu SCI, SPI, GPIO a některé specifické periferie jako např. ADC, PWM, časovače/čítače, dekodér podporující zpracovaní signálů z inkrementálních čidel, atd.
-
Programovací nástroje. Samotný mikropočítač bez komplexní podpory tvorby řídicího software je v podtatě bezcenný kus křemíku. Softwarové nástroje v současné době tvoří jeden z rozhodujících faktorů při výběru vhodného mikropočítače pro danou aplikaci. Proto v této části budeme věnovat poměrně dost času integrovanému prostředí CodeWarrior obsahujícímu editor, kompilátor, linker a debugger. Prakticky bude vysvětleno základní nastavení celého integrovaného prostředí, vytváření nových projektů, modifikace nastavení projektů, debuggování, atd.
-
Práce se simulátorem. Součástí integrovaného prostředí CodeWarrior je i simulátor mikropočítače, který zvláště oceníme během psaní a ladění algoritmů různé obtížnosti. Umožňuje poměrně efektivní práci, jejíž cílem může být rychle napsaný funkční zdrojový kód nebo cíleně optimalizovaný kód z hlediska velikosti nebo výpočetní rychlosti. Simulátor využijeme při objasnění rozdílů mezi integer a fractional aritmetikou, ukážeme si jakým způsobem kompilátor překládá zdrojový kód napsaný v ANSI C, případně si ukážeme použití tzv. intrinsic funkcí.
-
Pomocné nástroje. V této části se zaměříme na konkrétní nástroj zvaný QuickStart tool, který umožňuje uživateli rychle a efektivně pracovat s mikropočítačem, aniž by vyžadoval detailní znalost mikropočítače na ůrovni jednotlivých bitů. Součástí nástroje je rovněž kompletní nastavení mikropočítače, které si detailněji probereme v této části.
-
Run-time debugging. Drtivá většina embedded aplikací běží v reálném čase, což omezuje nebo prakticky znemožňuje použití klasického debuggeru pro ladění aplikací. FreeMaster tool nám umožní překonat i tento problém a dokonce díky pokročilému zobrazování, možnosti modifikovat libovolné paměťové místo, případně emulovat digitální osciloskop, dokážeme ladit proměnné, které nelze měřit a monitorovat běžnými prostředky.
-
Hands on training. Hands on training se bude prolínat celým seminářem a umožní účastníkům se podrobněji seznámit s praktickými aspekty programování mikropočítače. Na řadě příkladů budou demonstrovány možnosti samotného mikropočítače a jeho programovacích a ladicích nástrojů. Účastníci semináře budou mít možnost vytvořit řídicí software pro mikropočítač od samotného začátku. Příklady budou kombinovat práci s kompilátorem, jádrem mikropočítače a některými periferiemi.
Místo konání:
Ústav automatizace a měřicí techniky
FEKT VUT v Brně
Kolejní 2906/4
612 00 Brno
(počítačová učebna E-240)
Kde nás najdete
Kontakt:
Na seminář je nutné se předem registrovat. Přihlášky na seminář zasílejte prostřednictvím níže uvedeného formuláře. Registrace byla již uzavřena z důvodu naplnění maximální kapacity. Vzhledem k omezené kapacitě kurzu budou mít přednost příslušníci cílové skupiny projektu - akademičtí pracovníci, doktorandi a zaměstnanci výzkumných organizací (VŠ, akademie věd,...)
Registrace na tuto akci již byla ukončena.