21
Introduzione a Microsoft .NET Gadgeteer Mirco Vanini Are you a Gadgeteer ? Microsoft® MVP Device Application Development

Are you a Gadgeteer ?

  • Upload
    coye

  • View
    52

  • Download
    0

Embed Size (px)

DESCRIPTION

Are you a Gadgeteer ?. Introduzione a Microsoft .NET Gadgeteer Mirco Vanini. Microsoft® MVP Device Application Development. Agenda. Genesi Che cos’è .NET Gadgeteer Caratteristiche principali Hardware Moduli Socket DaisyLink VS Integration / Tools Licenze Demo. - PowerPoint PPT Presentation

Citation preview

Page 1: Are  you  a  Gadgeteer  ?

Introduzione a Microsoft .NET GadgeteerMirco Vanini

Are you a Gadgeteer ?

Microsoft® MVP Device Application Development

Page 2: Are  you  a  Gadgeteer  ?

Agenda

GenesiChe cos’è .NET GadgeteerCaratteristiche principaliHardwareModuliSocketDaisyLinkVS Integration / ToolsLicenzeDemo

Page 3: Are  you  a  Gadgeteer  ?

Genesi .NET Gadgeteer

Creato da Steve Hodges e dal Sensors and Devices Team di Microsoft Research Cambridge.

Presentata ufficialmente da Microsoft Research Cambrige nell’Agosto 2011 durante lo sviluppo del progetto SenseCam, una fotocamera da indossare che cattura le foto automaticamente.

Nic Villars e James Scott hanno collaborato nella ricerca di un'alternativa al lento processo di prototipazione per nuovi dispositivi basati su microcontrollori.

Il progetto, gestito da Kerry Hammil, è disponibile su CodePlex.

Page 4: Are  you  a  Gadgeteer  ?

Che cos’è .NET Gadgeteer? (1/2)

Una piattaforma hardware e software open source (Apache 2.0) per la progettazione e lo sviluppo di device embedded basati sul .NET Micro Framework.

.NET Gadgeteer combina un microcontrollore ARM7, moduli hardware programmabili e il .NET Micro Framework.

Questo rende accessibile lo sviluppo di dispositivi a qui programmatori .NET la cui competenza è focalizzata nel software, piuttosto che nell’elettronica.

Permette ad appassionati, educatori e sviluppatori senza conoscenze di elettronica di realizzare prototipi di dispositivi in modo molto semplice e veloce.

Page 5: Are  you  a  Gadgeteer  ?

Che cos’è .NET Gadgeteer? (2/2)

Verticalizzazione del .NET MF prevalentemente per hobbisti.

Programmazione ad alto livello, non si ha a che fare con porte di ingresso/uscita e scritture di byte, bensì con oggetti

Ideale per chi ha paura del saldatore .

Il progetto .NET Gadgeteer è una collaborazione aperta tra Microsoft, fabbricanti di hardware e gli utenti finali.

Futuro: Microsoft continuerà il supporto attivo a questo progetto migliorando il .NET MF su cui si basa. La collaborazione stretta tra i principali costruttori HW ed il mantenimento del sito web Gadgeteer sono le principali azioni.

Page 6: Are  you  a  Gadgeteer  ?

Caratteristiche principali

Piattaforma hardware per la progettazione di device embedded.

Una scheda madre a cui collegare moduli di espansione (al momento ne sono disponibili 48, ma crescono ).I collegamenti sono effettuati tramite cavi di connessione, senza richiedere saldature o specifiche conoscenze di elettronica.

Piattaforma software per lo sviluppo ad alto livello basato su .NET Micro Framework. La progettazione dell’assemblato è completamente visuale.

L’SDK mette a disposizione oggetti in grado di eseguire operazioni complesse (visualizzare un messaggio su un display, attivare un motore, leggere un sensore, scattare una foto, creare un servizio Web, ecc.) in modo molto semplice.

Page 7: Are  you  a  Gadgeteer  ?

Hardware

GHI Electronics, Sytech Designs, Love Electronics, Seeed Studio, Oberon Microsystems, CSA Engineering, Mountaineer Group

Page 8: Are  you  a  Gadgeteer  ?

Moduli

Sensori, pulsanti, LED, connessioni Ethernet, Wi-Fi, Bluetooth, ZigBee, infrarossi, RFID, GPS, Cellular Radio, display, audio, memorie, accelerometro, bussola, giroscopio, relays, controller per motori, scheda audio, uscita vga, ecc.

Page 9: Are  you  a  Gadgeteer  ?

FEZ Spider è l’attuale riferimento

Prima scheda rilasciata, con il supporto al maggior numero di moduli

Processore ARM7 a 32 bit operante a 72 MHz

4,5 MB di Flash

16 MB di RAM

14 socket

.NET Micro Framework 4.1 (4.2 in Beta 2)

Page 10: Are  you  a  Gadgeteer  ?

EMX• Microsoft .NET Micro

Framework• 72Mhz 32-bit Processor

(LPC2478 – ARM7)• 16MB RAM• 4.5MB FLASH• Embedded LCD

controller• Embedded Ethernet

PHY with DMA communication.

• Runtime Loadable Procedure

• Full TCP/IP Stack• SSL• ZG2100 WiFi Driver• PPP ( GPRS/ 3G )• DPWS• Embedded USB

host/device

• 76 GPIO Pins• 39 Interrupt Inputs• 2 SPI (8/16bit)• I2C• 4 UART• 2 CAN Channels• 7 10-bit Analog Inputs.• 10-bit Analog Output• 4-bit SD/MMC Memory

card interface• 6 PWM• 160 mA current

consumption with everything enabled

• 40mA Hibernate Mode• -40ºC to +85ºC

Operational• RoHS Lead Free

Page 11: Are  you  a  Gadgeteer  ?

Spider - Socket

Page 12: Are  you  a  Gadgeteer  ?

Socket

• GPIO A general-purpose digital input/output pin, operating at 3.3 Volts

• (G) In addition to another functionality, a pin that is also usable as a GPIO.

• (OPT) A socket type that is optionally supported by a mainboard or a module.

• [UN] Modules must not connect to this pin if using this socket type. Mainboards can support multiple socket types on one socket, as long as individual pin functionalities overlap in a compatible manner. A pin from one socket type can overlap with a [UN] pin of another

• [MS] A manufacturer-specific pin. See the documentation from the manufacturer of the board.

• ! Interrupt-capable and software pull-up capable GPIO (the pull-up is switchable and in the range of 10,000 to 100,000 ohms).

• * Socket type * should not appear on a mainboard, only on DaisyLink modules. The [MS] pins on this socket type can optionally support reflashing the firmware on the module NET Gadgeteer Module Builder's Guide version 1.8

Page 13: Are  you  a  Gadgeteer  ?

DaisyLink - Nuovo tipo interfaccia

Condivisione socket per moduli diversiCollegamento a catena dei moduli invece che a stellaUtilizza solo 3 dei pin del socketIndirizzamento sempliceRilevamento automatico del tipo e dei moduli collegatiOgni modulo ha il suo MCU che implementa il protocollo

DaisyLink comprende due bus I2C: un bus condiviso di dati per il trasferimento e un bus neighbor che viene utilizzato per assegnare l'ID I2C di ciascun modulo sul bus condiviso.

Open DaisyLink Project

Page 14: Are  you  a  Gadgeteer  ?

VS Integration / Tools

Page 15: Are  you  a  Gadgeteer  ?

VS Integration / Tools

Page 16: Are  you  a  Gadgeteer  ?

VS Integration / Tools

Page 17: Are  you  a  Gadgeteer  ?

Licenze

Le specifiche hardware e gli schemi elettrici delle schede madri e dei moduli sono rilasciati con licenza Creative Commons

Le librerie software di .NET Micro Framework e .NET Gadgeteer sono disponibili con licenza Apache 2.0

Il codice sorgente di .NET Micro Framework è pubblicato su http://netmf.codeplex.com

Il codice sorgente di .NET Gadgeteer è pubblicato su http://gadgeteer.codeplex.com

Page 18: Are  you  a  Gadgeteer  ?

Demo

FEZ Spider Mainboard

Display T35 Module (3.5" with touchscreen)USB Client DP Module (with USB cable)Camera ModuleMulticolor LED Module (DaisyLink)Button ModuleEthernet J11D ModuleSD Card ModuleJoystick Module

Page 19: Are  you  a  Gadgeteer  ?

Q&A