Het .NET Micro Framework is een .NET-variant voor resource-beperkte embedded apparaten. Het bevat een verkleinde versie van de .NET-CLR (Common Language Runtime). Ontwikkeling in C# en foutopsporing is mogelijk in Microsoft Visual Studio. Er is een emulator beschikbaar zodat er zonder hardware ontwikkeld kan worden. Deze emulator is aanpasbaar zodat ook externe hardware geëmuleerd kan worden.
.NET Micro Framework bevat een subset van de .NET-basisklassen, een UI-framework dat is gebaseerd op het Windows Presentation Framework (WPF) en er zijn klassen beschikbaar die speciaal zijn gericht op het werken met embedded hardware (I2C, SPI, GPIO, PWM enzovoorts).
Het .NET Micro Framework heeft als doel het ontwikkelen van embedded software gemakkelijker, sneller en goedkoper te maken. Het geeft ontwikkelaars de mogelijkheid gebruik te maken van de tools en de code die al beschikbaar is voor de desktop, waardoor de kloof tussen de twee werelden kleiner wordt.
Eigenschappen
Volgens Microsoft heeft het .NET Micro Framework de volgende eigenschappen:
- Klein geheugengebruik: ongeveer 300 KB, de eerstvolgende kleine .NET-variant het .NET Compact Framework gebruikt ongeveer 12 MB.
- Draait zonder besturingssysteem (al is dit wel mogelijk)
- Ondersteuning voor typische embedded onderdelen zoals EEPROM, SPI, I2C, GPIO en USB.
- Geoptimaliseerd voor energie-efficiëntie en batterijgevoede apparaten.
- Kan werken op systemen zonder MMU (geheugenmanagement).
- Ondersteuning voor multi threaded software, ook op apparaten met één processorkern.
- Heeft een HAL (Hardware Abstraction Layer) zodat verschillende architecturen ondersteund worden.
- Ondersteuning voor het opslaan van gegevens in het flashgeheugen.
- SideShow-ondersteuning
Beperkingen
Door de beperkte grootte van het .NET Micro Framework heeft hij enkele beperkingen tegenover zijn grotere varianten. De belangrijkste beperking is het ontbreken van ondersteuning voor rijen (arrays) met meer dan één dimensie. Tot en met versie 2.5 van het .NET Micro Framework was het ook niet toegestaan unmanaged code toe te voegen. Op dit moment biedt .NET Micro Framework geen ondersteuning voor andere .NET-talen dan C#.
Het .NET Micro Framework ondersteunt op dit moment de ARM-processorarchitectuur (ARM7 en ARM9) en de Analog Devices Blackfin. Voor het ondersteunen van andere architecturen is toegang tot de .NET Micro Framework-broncode nodig, en dit wordt uitgevoerd door Microsoft en hardwarepartners onder licentie van Microsoft. Deze partners brengen vervolgens ontwikkelsets en modules aan die .NET Micro Framework ondersteunen.
Licentie
Microsoft verspreidt de SDK gratis. Ook kan vanaf .NET Micro Framework versie 3.0 gewerkt worden met de gratis Express-versies van Visual Studio. Echter bij het verkopen van apparaten die gebruikmaken van de .NET Micro Framework is wel een licentie met royalty's op basis van volume nodig. Veel leveranciers van .NET Micro Framework-ready-apparaten leveren hun apparaat met zo'n licentie.
Externe links