Construire une plaquette de développement (Pinguino – partie 1/4)

Après une courte introduction sur le logiciel embarqué, nous allons maintenant réaliser une plaquette de développement pour microcontrôleur 8 bits et faire un premier programme. Ce projet est basé sur le projet open-hardware [1] Pinguino que j’ai découvert dans le magazine Open Silicium #4 (magazine mort-né dédié à l’open source et l’électronique embarqué, aujourd’hui disponible sous la forme d’une rubrique dans linux magazine ; dommage. Edit: ah non).

Sommairelogo-pinguino1

> Partie 1 : Présentation

Partie 2 : Hardware

Partie 3 : Software

Partie 4 : Hello World

 

Pinguino ?

Image

Pinguino est un projet open-source et open-hardware multi-platforme (GNU/Linux-Max OS X-Windows). On parle aussi parfois de projet DIY (Do It Yourself).

Image Image

Ceci signifie que les ressources disponibles (essentiellement en langue anglaise) sont mises à disposition gratuitement sur divers sites (par exemple : [1], [4]).

Ce projet largement inspiré du projet Arduino possède de nombreux points communs avec ce dernier, à commencer par le format ouvert. Il existe une communauté d’entraide qui permet à chacun d’échanger et s’entraider, mais celle-ci est encore réduite. C’est pour cela que j’ai eu l’idée d’écrire ce billet pour y rassembler le résultat de mes recherches. Les deux projets utilisent un langage de programmation dédié, le langage Arduino qui est une sorte de langage dérivé du C, accessible aux débutants. Selon le wiki du projet Pinguino les librairies utilisées par les deux projets sont pratiquement compatibles. La liste des incompatibilités peut se trouver sur [6] cette page.

La principale différence entre les deux projets se situe au niveau de la famille de microcontrôleur. Un Atmel AVR côté Arduino, un Microchip PIC du côté Pinguino qui gère nativement l’USB.

Vous trouverez sur le site officiel anglophone toutes les ressources nécessaires ([2] wiki, [3] forum) et pourrez même acheter directement le produit fini moyennant un peu moins de 20€ (voir Figure 1). Deux versions de plaquettes sont proposées, une pour micro 8 bits, une autre _ plus complexe _ pour micro 32 bits. Nous nous limiterons ici au modèle 8 bits.

Image

Figure 1 Le produit clef en main en vente sur le site.

Pour notre projet nous allons commencer par réunir les composants nécessaires et les câbler sur une plaquette d’essais (breadboard ou plaque à trous).  Le résultat donnera quelque chose comme ça (Figure 2) : Image

Figure 2 Notre projet. C’est moins beau mais ça fonctionne !

Petit tour d’horizon de la maquette. Au centre, le cœur du système : il s’agit d’un microcontrôleur 8-bits de chez Microchip (référence : [5] 18F2550). Pourquoi ce modèle plutôt qu’un autre ? Car ce modèle possède un périphérique USB. Cette caractéristique est essentielle dans ce projet car les programmes seront chargés en mémoire depuis le pc hôte par une liaison USB. Il est possible aussi d’utiliser le modèle 18F4550 en modifiant légèrement le cablage. Le PIC est alimenté en 5V par le connecteur USB que l’on aperçoit à droite sur la photo.

Entre le micro et le connecteur USB un bouton poussoir permettant de réinitialiser le micro.

A gauche du micro un quartz 20 Mhz.

Quelques capas de découplages, quelques résistances et deux leds 🙂

Dans le prochain billet je présenterai le montage électronique et quelques astuces pour trouver les composants nécessaires.

L’article concernant le Pinguino dans le magazine Open Silicium est disponible à cette adresse : [7] Les PIC aussi ont leur arduino

image open silicium

Références :

[1] Site officiel : http://pinguino.cc/

[2] Le wiki : http://wiki.pinguino.cc/index.php/Main_Page

[3] Le forum : http://forum.pinguino.cc/

[4] La présentation du projet sur Hacking labs : http://www.hackinglab.org/pinguino/index_pinguino.html

[5] La datasheet du micro : http://ww1.microchip.com/downloads/en/DeviceDoc/39632e.pdf

[6] Compatibilités Arduino – Pinguino : http://wiki.pinguino.cc/index.php/Compatibility

[7] Les PIC aussi ont leur arduino : http://www.ed-diamond.com/feuille_os4/index.html

Publicités