Articoli e codice: Blog: Profilo MVP: Scoprire il Micro Framework con C#
Il mondo dei device Ieri – PC Full Windows – Apparati industriali Windows Embedded / CE – PDA, Cellulari Windows CE – Piccole schede Micro Framework Domani – PC Full Windows – Apparati industriali Windows Embedded / CE – PDA, Cellulari Full Windows vNext (SoC) – Piccole schede Micro Framework
Caratteristiche dell'hardware
Caratteristiche del MF Nasce nel 2001 dal progetto "Smart Personal Object Technology" (SPOT) usata per gli orologi MSN Codebase indipendente da CF o fx.net – Open source Subset del full fx.net Il runtime del CLR interpreta il codice IL Pieno controllo delle periferiche hardware Supportato da VS2010 (anche express) – Wizard, emulatore, esempi, help – Tool diagnostici e conversione font truetype
Architettura XML Parser DPWS SSL Advanced Graphics USB client Touch Panel Managed Application Application Services Managed Libraries Managed Run-Time CLR, Interpreter, Executive, and Interop PAL – Platform Abstraction Layer approximately 40 functions (preferred) HAL - Hardware Abstraction Layer approximately 60 functions (optional) Host OS Hardware I/O: USB, UART, SPI, I 2 C Threading Basic Graphics Collections Security Sockets Porting Kit (PK) SDK File System Reflection HTTP(S)
AMBIENTE DI SVILUPPO
Librerie – Supporto Base Suddivise tra i namespace System.* e SPOT.* – ArrayList (unica collection), Hashtable, Queue, Stack – XmlWriter, XmlReader, XmlTextReader – Thread, Timer, AutoResetEvent, … – Reflection – IO: File, streams, SerialPort – Crypto API – GC, delegate, AppDomain, String, Uri, WeakReference, …
Librerie - Hardware Microsoft.SPOT.Hardware – Battery, PowerState, PowerEvent, SleepEvent – Cpu – I2CDevice – Port, InputPort, OutputPort, InterruptPort, TristatePort – SPI – Watchdog, WatchdogEvent Microsoft.SPOT.Hardware.UsbClient SDK Specifici dei produttori OEM. Per es. GHI Electronics: – CAN, PWM, RealtimeClock, OneWire – USB client (mouse, kbd, …), USB host (mouse, kbd, …) – …
Librerie – User Interface
Librerie - Network
Librerie - DPWS
C# nel Micro Framework Non implementati: – Generics – Linq Workaround: – Expression trees – anonymous types – partial classes – nullable types – tipi puntatori (e.g. IntPtr) – supporto limitato per unsafe code blocks Solo unsafe/fixed in un numero di casi limitati e su array – custom attributes
Real-world samples by GHI by Netduino Micro Framework sources (+ contributions) by NetMF team –
Votate le feature per la prossima release! Login via LiveId 3.Issue Tracker 4.Votate! – REST: – Generics: – Video Streaming: Il team del Micro Framework legge tutte le richieste – È possibile collaborare al source tree ufficiale (direttamente sul TFS di codeplex)
Domande ? Uno grazie speciale a Lorenzo Tessiore e Zach Libby del team di Micro Framework per la disponibilità e i suggerimenti