.NET Micro Framework
... programování pro embedded systémy
» Jak začít s .NET Micro Framework «
Rychlá navigace:
Požadavky
Výběr vhodné platformy
Vlastnosti
Požadavky
- Visual Studio 2008 (nebo vyšší) v edici Express (nebo vyšší)
Edice Express ke stažení zdarma z webu Microsoftu - .NET Micro Framework SDK
Taktéž ke stažení zdarma, po nainstalování přibude ve Visual Studiu možnost vytvářet .NET Micro Framework projekty
Obsahuje: knihovny, příklady, vzory projektů, nástroje a emulátor - Ovládat programovací jazyk C# alespoň na základní úrovni
- Hardware (vývojovou desku, do které je možné nahrát výsledný kód), pokud Hardware nemáte a přesto chcete začít, je možné si vystačit pouze s emulátorem, který je součástí SDK
- Výhodou je základní elektrotechnické vybavení a základní součástky (nepájivé pole, vodiče, led diody, základní odpory, …) a čidla na zkoušení (teplotní čidlo, ultrazvukový dálkoměr, …)
Výběr vhodné platformy
Při plánování využití .NET Micro Frameworku je nutné vzít v úvahu omezené prostředky a zdroje, které nám takové řešení poskytne. Ještě před samotným výběrem této platformy proto zhodnoťte Vaše požadavky na finální produkt nebo plánované užití. V případě, že by .NET Micro Framework nesplňoval patřičné požadavky, uvědomte si, že se jedná pouze jeden z rodiny produktů určených pro embedded systémy.
Následující obrázek pak přehledně vystihuje možnosti užití jednotlivých embedded řešení od Microsoftu:
Jak obrázek naznačuje, při volbě vhodné embedded technologie jde vždy o výběr správného poměru mezi nároky na funkce a nároky na prostředky.
Následující tabulka přehledně shrnuje požadavky a možnosti jednotlivých embedded platforem:
| .NET Micro Framework | Windows Embedded CE | Windows XPe | |
|---|---|---|---|
| Vzorový produkt | Sensorové body, SideShow, Monitoring, Dálkové ovladače, Robotika | GPS navigace, PDA, Automotive, Set Top Boxy | Tencí klienti, Bankomaty, Kiosky |
| Vlastnosti produktu | Malý, Připojený, Nositelný, Grafické UI | Připojený, Grafické UI, Server, Prohlížeč, Vzdálený přistup, DirectX | Výkon a konektivita PC |
| Velikost | 200-400Kb managed code |
300Kb + native kernel podle požadavků |
40Mb + podle požadavků |
| Napájení | Velmi nízká spotřeba | Nízká spotřeba | Běžná spotřeba |
| CPU | ARM7, ARM9, Cortex No MMU |
X86, MIPS, SH4, ARM nutné MMU |
X86 |
| Real-time | Soft Real-time v řízeném kódu | Hard Real-time | Real-time (s přidáním komponent třetí strany) |
| Řízený X nativní | Řízený | Obojí, řízený kód vyžaduje Compact Framework | Obojí, řízený kód vyžaduje .NET Framework |
.NET Micro Framework není rozhodně technologií pro všechny případy a v případě náročnějšího řešení je vhodnější nasadit technologii, která splní patřičné nároky na funkce. Na druhé straně, .NET Micro Framework díky unikátním vlastnostem, vysoké přizpůsobitelnosti a minimálním nárokům jak na prostředky, tak i prostor, v řadě implementací vítězí na plné čáře. Je tedy na každém zvlášť aby zhodnotil využití pro své vlastní potřeby.
Vlastnosti
- Nároky na paměť okolo 300 KB; v porovnání s nejmenší dosavadní .NET implementací - .NET Compact Framework běžící na Windows CE, potřebuje okolo 12 MB
- Výsledný programový kód může běžet přímo na hardwaru bez operačního systému (běh pod operačním systém je taktéž možný)
- Podporuje běžné embedded periferie a propojení, včetně flash pamětí, EEPROM, GPIO, I2C, SPI, USB
- Optimalizováno pro energeticky efektivní běh v zařízeních napájených bateriemi
- Nepotřebuje MMU (memory management unit, jednotku pro řízení paměti)
- Podpora pro více-vláknovost přes to že kód běží na jedno-vláknovém operačním systému
- Hardwarová abstrakční vrstva umožňuje portování na jiné architektury
- Model managovaných ovladačů zařízení umožňuje ovládat řadu zařízení pomocí C# kódu
- Nástroje omezující zatuhnutí nebo pády zařízení
- Transparentní podpora pro uchovávání objektů ve stálých pamětích
Z následujícího přehledu vlastností si můžete všimnout řady unikáních vlastností v porovnání s ostatními .NET Platformami.
Na druhé straně tyto vlastnosti přináší logicky i řadu omezení. V .NET Micro Framework nejsou podporovány více-rozměrná pole, některé specifické datové typy nebo unsafe bloky kódu. CLR je v tomto případě spíše interpreter než just-in-time kompilátor. Používá se pouze jednoduchý garbage collector. K dispozici je pouze programovací jazyk C#.
.NET Micro Framework je v současnosti možné provozovat na architektuře procesorů ARM (včetně ARM7 a ARM9) a procesorech Blackfin od firmy Analog Devices. Od verze 4 je .NET Micro Framework šířen jako open source pod licencí Apache 2.0. Současně s tímto krokem vznikl i porting kit, který do budoucna umožní rozšíření i na další platformy.




