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

Previously on Pinguino …logo-pinguino3

Partie 1 : Présentation

Partie 2 : Hardware

> Partie 3 : Software

Partie 4 : Hello World

Dans le billet précédent (complété depuis avec des infos sur le programmateur de PIC), nous avons réalisé une plaquette open hardware Pinguino.

Nous allons maintenant installer les logiciels et drivers nécessaires pour s’interfacer avec la cible.

Voici les différentes étapes d’installation qui nous attendent dans ce billet :

  1. Installation du bootloader sur la cible Requis : programmateur de PIC, MPLAB IPE, bootloader, plaquette Pinguino, un PC ;
  2. Installation du driver usb libUsb et du driver Pinguino (windows) Requis : plaquette Pinguino, un PC ;
  3. Installation de l’IDE Pinguino Requis : plaquette Pinguino, un PC.

1. Installation du bootloader sur la cible

Cette étape est facultative si vous achetez la plaquette sur la boutique en ligne car le bootloader est déjà chargé sur le micro. Sinon, munissez vous du programmateur de PIC et on continue !

Le bootloader est un petit programmer résident en mémoire permanente (en général la flash interne d’un microcontrôleur) qui est lancé au démarrage (i.e. lorsque le micro est alimenté) un peu à la manière du bios d’un ordinateur.

Une fois lancé, le bootloader peut mettre à jour le logiciel applicatif (i.e. celui que vous avez codé et compilé avec vos petites mainsJ) si cela est nécessaire. Une fois la mise à jour effectuée, ou dans le cas ou aucune mise à jour n’est nécessaire, le bootloader rend la main et le logiciel applicatif peut démarrer. Cela fera probablement l’objet d’un prochain billet où je parlerai de vecteur reset et de jump en mémoire programme J. Pour le moment il faut juste retenir qu’un bootloader est nécessaire sur ce projet et qu’il vous permettra de mettre à jour vos applications sur cible sans la nécessiter d’utiliser un programmateur de PIC.

Téléchargement de l’IDE MPLABX

Une fois le programmateur acheté, il faut un outil pour communiquer avec la cible et y charger le bootloader. Heureusement toutes les ressources en dehors du programmateur sont gratuites et en libre téléchargement sur le site officiel. Le dernier IDE de Microchip est MPLAB X. Lisez la [3] présentation de l’IDE MPLAB X pour en savoir un peu plus.

  Ce n’est pas MPLAB X qui nous intéresse mais le petit logiciel fourni avec, MPLAB IPE (pour Integrated Programming Environment), qui n’est malheureusement pas disponible au téléchargement seul.

Il va donc falloir télécharger et installer MPLAB X : [4] Download MPLAB X.

Chargement du bootloader

Télécharger le bootloader du projet Pinguino (extension hex). Il en existe plusieurs versions selon le projet (8bits/32 bits, le quartz utilisé et le PIC (18F2550/4550).

[5] Download the pinguino bootloader2.12.

Brancher le programmateur de PIC (ICD3 ou PICkit3) sur le connecteur ICSP du Pinguino, et relier le connecteur USB au pc.

Lancer MPLAB IPE. Dans Advance Settings entrer le mot de passe (par défaut : Microchip) et sélectionner Power Target Circuit from Tool (Figure 1) :

Figure 1 Configuration MPLAB IPE – Power

Cette option permet de programmer le PIC sans avoir besoin de l’alimenter, c’est la sonde qui fournira l’alimentation nécessaire (ici 5V).

Dans l’écran principal, sélectionner le PIC 18F2550 et cliquer sur Connect (Figure 2) :

Figure 2 Configuration MPLAB IPE – Connect

Si tout est en ordre le log dans la console devrait afficher Target detected , sinon vérifier dans advance settings que l’option power est bien cochée, et que le programmateur de PIC est correctement branché au connecteur ICSP du Pinguino (pour le brochage du connecteur voir le billet précédent).

Connecting to MPLAB ICD 3…

Firmware Suite Version…..01.28.18

Firmware type…………..PIC18F

Target detected

Device ID Revision = 7

Une fois la cible connectée, il faut importer le .hex du bootloader en cliquant Browse en face de la source, puis cliquer sur Program (Figure 3) :

Figure 3 MPLAB IPE – Program

Si la programmation s’est bien passée, le message Programming/Verify complete

doit apparaître dans la console :

2013-10-06T15:06:19+0200- Programming…

The following memory area(s) will be programmed:

program memory: start address = 0x0, end address = 0x407f

configuration memory

Programming…

Programming/Verify complete

2013-10-06T15:06:22+0200- Programming complete

2013-10-06T15:06:22+0200- Pass Count: 10

C’est terminé pour cette étape. Il faut maintenant installer les drivers usb sur le pc pour que le Pinguino soit reconnu lorsqu’il est branché.

2. Installation du driver usb libUsb sur windows

Maintenant que le bootloader est installé il faut installer un driver usb qui va permettre au système d’exploitation de reconnaître le pinguino lorsqu’il sera branché au pc.

Télécharger et lancer l’éxécutable : [6] driver USB libusb-win32. A la fin de l’installation ne pas lancer le test en décochant l’option (Figure 4) :


Figure 4 Installation de la libusb

Télécharger le [7] driver windows Pinguino et le dézipper dans le répertoire de son choix.

Dézipper une seconde fois le fichier tar.

Il est temps de brancher la plaquette pinguino en usb. Windows va détecter et tenter d’installer le périphérique usb sans succès.

Quitter l’assistant qui s’ouvre. Dans le panneau de configuration windows aller dans Système puis gestionnaire de périphériques. Chercher dans la liste des périphériques usb. Il doit y avoir un périphérique Pinguino avec un point d’exclamation (Figure 5). Si ce n’est pas le cas c’est que le bootloader a mal été chargé dans l’étape précédente.

Figure 5 Périphérique Pinguino non reconnu

Faire un clic droit puis mettre à jour le pilote et sélectionner le dossier contenant le driver Pinguino qui a été dézippé. Le pilote s’installe (Figure 6) :

Figure 6 Installation du pilote Pinguino

Une fois le driver installé dans le dossier d’installation de libusb lancer Test Program.

Le Pinguino doit apparaître (Figure 7) :

Figure 7 Libusb – Test Program

Note : S’il n’apparaît pas, tenter un reset du PIC à l’aide du bouton poussoir et faire un Refresh. Des utilisateurs ont rencontré des problèmes et une réinstallation de libusb a été nécessaire.

3. Installation de l’IDE Pinguino

La dernière étape c’est l’installation de l’IDE Pinguino qui permettra de programmer/compiler ses projets et de charger le logiciel sur le PIC.

Pour télécharger l’IDE rendez-vous sur [8] Download the Pinguino IDE. L’IDE évolue en permanence et de nouvelles versions sont disponibles à cette adresse au fil du temps.

Dans mon cas, j’ai téléchargé puis installé la version 3 (révision 399) :

Figure 8 Installation de l’IDE

Une fois lancé, lancer l’IDE.

Note : inutile d’aller plus loin si votre Pinguino n’est pas reconnu par le système d’exploitation (étapes précédentes).

Figure 9 Fenêtre principale de l’IDE

C’est la fin de ce billet et de l’installation des drivers et logiciels du projet Pinguino. Dans le prochain billet nous réaliserons notre premier programme.

En cas de soucis avec l’une des installations présentées ici, voici quelques aides (en anglais) :

Références :

[1] Achat programmateurs de PIC ;

[2] site officiel Microchip ;

[3] présentation de l’IDE MPLAB X ;

[4] Download MPLAB X ;

[5] Download the pinguino bootloader 2.12 ;

[6] driver USB libusb-win32 ;

[7] driver windows Pinguino ;

[8] Download the Pinguino IDE ;

[9] Pinguino Forum / Software / Troubleshooting ;

[10] Pinguino Software Installation (Windows 7) ;

[11] Pinguino Software Installation (Windows XP).

Publicités