.NET MICRO FRAMEWORK
          ET
LA PLATEFORME   NETDUINO
PRÉSENTATION

     •   Vincent Hubert
     •   Consultant indépendant
     •   Hubiq (www.hubiq.net)
     •   Travaille proche du
         métal
         – C++, .Net
         – Appareils médicaux,
           TPV, Borne interactive,
           vision artificielle,
           simulateurs ATC
     • Vincent@hubiq.net
• Présentation de .Net
  Micro Framework
• Arduino
• Netduino
• Démonstrations
.NET MICRO FRAMEWORK
• NET Micro Framework .NET
• Runtime de 300KB
• Pas besoin d’un OS
• Beaucoup de
  fonctionalités
  d’interfaces hardware
• SDK fourni
• Émulateur fourni et
  possibilité d’en créer un
.N ET   MICRO FRAMEWORK




   .Net Micro           Windows              Windows
   Framework            Embedded             Embedded
   •Très faible         compact 7            standard 7
    consommation        •Anciennement CE     •Windows 7 d’où on
   •Non-temps réel      •Faible               enlève des
   •ARM                  consommation         composantes
   •Footprint 250-      •Temps réel          •Branché au
    500K                •X86, ARM, MIPS       secteur
   •Seulement du code   •Silverlight /       •Footprint à
    managed              win32 GDI            partir de 40MB
                        •Footprint 500K,     •X86 Seulement
                         12MB pour CF
                        •Code Natif ou
                         Managed avec .Net
                         compact édition
.N ET M ICRO F RAMEWORK - L IBRAIRIES

   • Supporte un sous ensemble du
     namespace System.*
   • Collections:
       – ArrayList, Hashtable, Queue,
         Stack
   • XML:
       – XmlWriter, XmlReader
   •   Timer, AutoResetEvent
   •   Reflection
   •   IO: File, streams
   •   delegate, AppDomain, String,
       Uri, WeakReference
.N ET M ICRO F RAMEWORK - L IBRAIRIES

   • Nouveau Namespace:Microsoft.SPOT.*
   • Microsoft.SPOT.Hardware
      – Battery, PowerState, PowerEvent,
        SleepEvent
      – Cpu
      – I2CDevice
      – Port, InputPort, OutputPort,
        InterruptPort, TristatePort
      – SPI
      – Watchdog, WatchdogEvent
   • Microsoft.SPOT.Hardware.UsbClient
   • SDK spécifique à l’OEM:
      – Secretlabs.NETMF.Hardware.*
.N ET M ICRO F RAMEWORK - L IBRAIRIES

   • Librairie – User Interface
   • Implémentation de WPF!
   • Pas de:
      –   XAML
      –   Binding
      –   API code C# seulement
      –   Microsoft.SPOT.Presentation
      –   Contrôles:
           • Border, Canvas, Image, ListBox,
             Panel, ScrollViewer, StackPanel, Text
           • Color, Pen, ImageBrush,
             DrawingContext
           • Ellipse , Line, Polygon, Rectangle,
             ShapeTouchInk, Touch, TouchEvent,
             TouchPanel
.N ET M ICRO F RAMEWORK - L IBRAIRIES

   • Réseau
      – Socket
      – HttpWebRequest, HttpWebResponse,
        HttpListener
      – Support WiFi possible, dépendant
        de l’EOM
   • Implémente WCF
      – Mais seulement Http binding
   • WSDL 1.1, SOAP 1.2, WS-
     Addressing, WS-
     MetadataExchange, WS-Transfer,
     WS-Discovery, WS-Eventing
L ES   GRANDS ABSENTS


       • Manquent à l’appel
         – Generics
         – Expression trees
         – Anonymous types
         – Partial classes
         – Nullable types
         – Custom attributes
A RCHITECTURE   DU   . NET   MICRO FRAMEWORK
ARDUINO
DU MATÉRIEL OPEN-SOURCE
LA   PLATEFORME ARDUINO

     • Ardui…quoi?
        – Plateforme matérielle open
          source
        – Plateforme logicielle open
          source
        – Facile à utiliser, un langage
          dérivé du C
        – Une manière de connecter
          l’univers à l’internet
        – Port USB pour déployer le code
        – Form factor spécifique
        – Possibilité d’avoir des
          « Shields »
LA   PLATEFORME ARDUINO
NETDUINO
A RDUINO + .N ET   FRAMEWORK   = N ET D UINO
N ETDUINO

    • Le Netduino vient en 3
      saveurs
       – NetDuino
       – NetDuino Plus
       – NetDuino Mini
Netduino      Netduino Plus   Netduino Mini
               Form Factor       Arduino         Arduino      BASIC Stamp 2
Physical                                                       DIP24 (600
               Package             -               -
                                                                  mil)
               Speed             48 MHz          48 MHz          48 MHz
                              ARM7TDMI (32-   ARM7TDMI (32-   ARM7TDMI (32-
Processor      Core
                                   bit)            bit)            bit)
               Model          AT91SAM7X512    AT91SAM7X512    AT91SAM7X512
               Total             512 KB          512 KB          512 KB
               User
Flash Memory                     128 KB           64 KB          152 KB
               Application
               User Storage
               Total             128 KB          128 KB          128 KB
RAM
               User Free         60 KB            28 KB           64 KB
Netduino      Netduino Plus   Netduino Mini
               Digital I/O          20              20              16
               Interrupts           20              20              16
               Analog Input      6× 10-bit       6× 10-bit       4× 10-bit
Input/Output
               Analog
                                 External        External      On-board 3.3V
               Reference
               PWM               4× 16-bit       4× 16-bit       4× 16-bit
               USB (2.0)       1× Full Speed   1× Full Speed         -
                                                               1× TTL, 1× RS-
               Serial (UART)      2× TTL          2× TTL
                                                                     232
Interfaces                                       1× 10/100
               Ethernet             -                                -
                                                  BASE-T
               SPI                  1×              1×               1×
               I2C                  1×              1×               1×
               SD Card slot         -           1× Micro SD          -
Peripherals
               User LED             1×              1×               -
(on-board)
               User Switch          1×              1×               -
D ÉVELOPPER   AVEC   N ETDUINO

   • Ce dont vous aurez besoin
       – Expérience en C#
       – Visual Studio ou Visual C#
         express
       – .Net Micro framework SDK
       – NetDuino SDK
       – De votre patience
       – De la patience de l’être cher
       – De voir un nouveau niveau
         d’abstraction.
ON VEUT DU CODE!!


    En voilà!
MERCI


Bonne Programmation

 Vincent@hubiq.net

Net duino et le .net micro framework

  • 1.
    .NET MICRO FRAMEWORK ET LA PLATEFORME NETDUINO
  • 2.
    PRÉSENTATION • Vincent Hubert • Consultant indépendant • Hubiq (www.hubiq.net) • Travaille proche du métal – C++, .Net – Appareils médicaux, TPV, Borne interactive, vision artificielle, simulateurs ATC • Vincent@hubiq.net
  • 3.
    • Présentation de.Net Micro Framework • Arduino • Netduino • Démonstrations
  • 4.
  • 5.
    • NET MicroFramework .NET • Runtime de 300KB • Pas besoin d’un OS • Beaucoup de fonctionalités d’interfaces hardware • SDK fourni • Émulateur fourni et possibilité d’en créer un
  • 6.
    .N ET MICRO FRAMEWORK .Net Micro Windows Windows Framework Embedded Embedded •Très faible compact 7 standard 7 consommation •Anciennement CE •Windows 7 d’où on •Non-temps réel •Faible enlève des •ARM consommation composantes •Footprint 250- •Temps réel •Branché au 500K •X86, ARM, MIPS secteur •Seulement du code •Silverlight / •Footprint à managed win32 GDI partir de 40MB •Footprint 500K, •X86 Seulement 12MB pour CF •Code Natif ou Managed avec .Net compact édition
  • 7.
    .N ET MICRO F RAMEWORK - L IBRAIRIES • Supporte un sous ensemble du namespace System.* • Collections: – ArrayList, Hashtable, Queue, Stack • XML: – XmlWriter, XmlReader • Timer, AutoResetEvent • Reflection • IO: File, streams • delegate, AppDomain, String, Uri, WeakReference
  • 8.
    .N ET MICRO F RAMEWORK - L IBRAIRIES • Nouveau Namespace:Microsoft.SPOT.* • Microsoft.SPOT.Hardware – Battery, PowerState, PowerEvent, SleepEvent – Cpu – I2CDevice – Port, InputPort, OutputPort, InterruptPort, TristatePort – SPI – Watchdog, WatchdogEvent • Microsoft.SPOT.Hardware.UsbClient • SDK spécifique à l’OEM: – Secretlabs.NETMF.Hardware.*
  • 9.
    .N ET MICRO F RAMEWORK - L IBRAIRIES • Librairie – User Interface • Implémentation de WPF! • Pas de: – XAML – Binding – API code C# seulement – Microsoft.SPOT.Presentation – Contrôles: • Border, Canvas, Image, ListBox, Panel, ScrollViewer, StackPanel, Text • Color, Pen, ImageBrush, DrawingContext • Ellipse , Line, Polygon, Rectangle, ShapeTouchInk, Touch, TouchEvent, TouchPanel
  • 10.
    .N ET MICRO F RAMEWORK - L IBRAIRIES • Réseau – Socket – HttpWebRequest, HttpWebResponse, HttpListener – Support WiFi possible, dépendant de l’EOM • Implémente WCF – Mais seulement Http binding • WSDL 1.1, SOAP 1.2, WS- Addressing, WS- MetadataExchange, WS-Transfer, WS-Discovery, WS-Eventing
  • 11.
    L ES GRANDS ABSENTS • Manquent à l’appel – Generics – Expression trees – Anonymous types – Partial classes – Nullable types – Custom attributes
  • 12.
    A RCHITECTURE DU . NET MICRO FRAMEWORK
  • 13.
  • 14.
    LA PLATEFORME ARDUINO • Ardui…quoi? – Plateforme matérielle open source – Plateforme logicielle open source – Facile à utiliser, un langage dérivé du C – Une manière de connecter l’univers à l’internet – Port USB pour déployer le code – Form factor spécifique – Possibilité d’avoir des « Shields »
  • 15.
    LA PLATEFORME ARDUINO
  • 16.
  • 17.
    A RDUINO +.N ET FRAMEWORK = N ET D UINO
  • 18.
    N ETDUINO • Le Netduino vient en 3 saveurs – NetDuino – NetDuino Plus – NetDuino Mini
  • 19.
    Netduino Netduino Plus Netduino Mini Form Factor Arduino Arduino BASIC Stamp 2 Physical DIP24 (600 Package - - mil) Speed 48 MHz 48 MHz 48 MHz ARM7TDMI (32- ARM7TDMI (32- ARM7TDMI (32- Processor Core bit) bit) bit) Model AT91SAM7X512 AT91SAM7X512 AT91SAM7X512 Total 512 KB 512 KB 512 KB User Flash Memory 128 KB 64 KB 152 KB Application User Storage Total 128 KB 128 KB 128 KB RAM User Free 60 KB 28 KB 64 KB
  • 20.
    Netduino Netduino Plus Netduino Mini Digital I/O 20 20 16 Interrupts 20 20 16 Analog Input 6× 10-bit 6× 10-bit 4× 10-bit Input/Output Analog External External On-board 3.3V Reference PWM 4× 16-bit 4× 16-bit 4× 16-bit USB (2.0) 1× Full Speed 1× Full Speed - 1× TTL, 1× RS- Serial (UART) 2× TTL 2× TTL 232 Interfaces 1× 10/100 Ethernet - - BASE-T SPI 1× 1× 1× I2C 1× 1× 1× SD Card slot - 1× Micro SD - Peripherals User LED 1× 1× - (on-board) User Switch 1× 1× -
  • 21.
    D ÉVELOPPER AVEC N ETDUINO • Ce dont vous aurez besoin – Expérience en C# – Visual Studio ou Visual C# express – .Net Micro framework SDK – NetDuino SDK – De votre patience – De la patience de l’être cher – De voir un nouveau niveau d’abstraction.
  • 24.
    ON VEUT DUCODE!! En voilà!
  • 25.