gadgteteer clean code

19
PROTOTYPAGE FACILE AVEC GADGETEER Le hardware rendu accessible

Upload: eric-de-carufel

Post on 20-Jan-2017

293 views

Category:

Software


0 download

TRANSCRIPT

Page 1: Gadgteteer   clean code

PROTOTYPAGE FACILE AVEC GADGETEER

Le hardware rendu accessible

Page 2: Gadgteteer   clean code

© Pyxis Technologies inc.

/studio

ExpertiseQualité

Respect

Agile Big Data custom CQRS Desktop Event

Sourcing Microsoft .NET C# Scrum Software development Training

Web

nous

som

mes

Page 3: Gadgteteer   clean code

© Pyxis Technologies inc.

POURQUOI GADGETEER?

Page 4: Gadgteteer   clean code

© Pyxis Technologies inc.

AVEC ARDUINO (NETDUINO) C’EST MIEUX

Page 5: Gadgteteer   clean code

© Pyxis Technologies inc.

GADGETEER PLUG & PLAY

Page 6: Gadgteteer   clean code

© Pyxis Technologies inc.

ManagedNative

QU’EST-CE GADGETEER?

Hardware

ORHAL Drivers OS Emulator

PAL Timers RAM I/O

CLR Execution

EngineInterop

TypeSyste

mGarbageCollector

Libraries .NET …WPF COMM

Gadgeteer CoreSocket

Interfaces

Micr

o Fr

amew

ork

Tiny

CLR

Page 7: Gadgteteer   clean code

© Pyxis Technologies inc.

GPIO (General Purpuse Input/Output) avec ou sans interruption

UART (Universal Asynchronous Receiver/Transmitter) I²C Bus (Inter-Integrated Circuit)SPI Bus (Serial Peripheral Interface)Analog Input/OutputUSB Host/ClientCAN Bus (Controller Area Network)Graphics DisplayTouchscreenPWM (Pulse Width Modulation)EthernetSD (Secure Digital)Autre spécifique aux manufacturier

LES FONCTIONS HARDWARE

Page 8: Gadgteteer   clean code

© Pyxis Technologies inc.

A QUOI RESSEMBLE UN MAIN BOARD?

57 mm

52 mm

Page 9: Gadgteteer   clean code

© Pyxis Technologies inc.

A QUOI RESSEMBLE UN MAIN BOARD?

Reset Button

Socket number

Socket types

Page 10: Gadgteteer   clean code

© Pyxis Technologies inc.

A QUOI RESSEMBLE UN DEVICE?

Page 11: Gadgteteer   clean code

© Pyxis Technologies inc.

Type Letter Pin 1 Pin 2 Pin 3 Pin 4 Pin 5 Pin 6 Pin 7 Pin 8 Pin 9 Pin 10Analog In A +3.3V +5V AIN (G!) AIN (G) AIN GPIO [UN] [UN] [UN] GND

LCD B +3.3V +5V LCD B0 LCD B1 LCD B2 LCD B3 LCD B4 LCD EN LCD CLK GNDCAN C +3.3V +5V GPIO! TD (G) RD (G) GPIO [UN] [UN] [UN] GND

USB Device D +3.3V +5V GPIO! D- D+ GPIO GPIO [UN] [UN] GNDEthernet E +3.3V +5V [UN] LED1? LED2? TX D- TX D+ RX D- RX D+ GNDSD Card F +3.3V +5V GPIO! DAT0 DAT1 CMD DAT2 DAT3 CLK GND

LCD G +3.3V +5V LCD G0 LCD G1 LCD G2 LCD G3 LCD G4 LCD G5 BL GNDUSB Host H +3.3V +5V GPIO! D- D+ [UN] [UN] [UN] [UN] GND

I²C I +3.3V +5V GPIO! [UN] [UN] GPIO [UN] SDA SCL GNDUART +

Handshaking K +3.3V +5V GPIO! TX (G) RX (G) RTS CTS [UN] [UN] GND

Analog Out O +3.3V +5V GPIO! GPIO AOUT [UN] [UN] [UN] [UN] GNDPWM P +3.3V +5V GPIO! [UN] [UN] GPIO PWM (G) PWM (G) PWM GNDLCD R +3.3V +5V LCD R0 LCD R1 LCD R2 LCD R3 LCD R4 VSYNC HSYNC GNDSPI S +3.3V +5V GPIO! GPIO GPIO GPIO MOSI MISO SCK GND

Touch T +3.3V +5V [UN] YU XL YD XR [UN] [UN] GNDUART U +3.3V +5V GPIO! TX (G) RX (G) GPIO [UN] [UN] [UN] GND

3 GPIO X +3.3V +5V GPIO! GPIO GPIO [UN] [UN] [UN] [UN] GND7 GPIO Y +3.3V +5V GPIO! GPIO GPIO GPIO GPIO GPIO GPIO GND

Manufacturer Specific Z +3.3V +5V GPIO! [MS] [MS] [MS] [MS] [MS] [MS] GND

DaisyLink Downstream * +3.3V +5V GPIO! GPIO GPIO [MS] [MS] [MS] [MS] GND

ALL SOCKETS TABLE

Page 12: Gadgteteer   clean code

© Pyxis Technologies inc.

SOCKET SAMPLE

Type Letter Pin 1 Pin 2 Pin 3 Pin 4 Pin 5 Pin 6 Pin 7 Pin 8 Pin 9 Pin 10

Analog In A +3.3V +5V AIN (G!) AIN (G) AIN GPIO [UN] [UN] [UN] GNDI²C I +3.3V +5V GPIO! [UN] [UN] GPIO [UN] SDA SCL GND

Touch T +3.3V +5V [UN] YU XL YD XR [UN] [UN] GND3 GPIO X +3.3V +5V GPIO! GPIO GPIO [UN] [UN] [UN] [UN] GND

Page 13: Gadgteteer   clean code

© Pyxis Technologies inc.

Visual Studio 2013 Express (ou +)Microsoft NETMF (Visual Studio

Extension)Microsoft NETMF SDK (Librairies)Microsoft .NET Gadgeteer (Designer &

gabarit de projets)GHI Electronics’ SDK (Drivers pour les

microcontrôleur et les modules)

COMMENT DÉMARRER?

https://www.ghielectronics.com/downloads/Gadgeteer/NET_Gadgeteer_for_beginners.pdf

Page 14: Gadgteteer   clean code

© Pyxis Technologies inc.

Hello world « à la » Gadgeteer

ENVIRONNEMENT DE DÉVELOPPEMENT

Page 15: Gadgteteer   clean code

© Pyxis Technologies inc.

UNE CAMÉRA

Page 16: Gadgteteer   clean code

© Pyxis Technologies inc.

UNE CAMÉRA (AVEC HUB)

Page 17: Gadgteteer   clean code

© Pyxis Technologies inc.

PROJET D’ IRRIGATION AUTOMATIQUE

Page 18: Gadgteteer   clean code

© Pyxis Technologies inc.

PROJET D’ IRRIGATION AUTOMATIQUE

Page 19: Gadgteteer   clean code

© Pyxis Technologies inc. 19

Rappelez-vousComprendre le système de connecteurs

Toujours penser asynchroneEcrire du code « clean »

Questions?

LA FIN