Bootloader USB pour 18F2550/18F4550

Une question, un problème ou une suggestion, n'hésitez pas : un petit mail

Retour à Outils PIC

Le but de cette page est de décrire :

- L'installation du bootloader HID Microchip,

- Le test du bootloader.

Le logiciel du PC

BOOT001.gif

La première chose est de télécharger le "Microchip Libraries for Applications (MLA)" et de l'installer sur son PC. J'utilise la version v2017_03_06

Le programme côté PC se trouve dans le répertoire "...mla\v2017_03_06\apps\usb\device\bootloaders\utilities\bin\win".

Si tout c'est bien passé pous pouvez executer le "HIDBootLoader.exe" et obtenir la fenêtre de contrôle du bootloader (avec "Device not detected" puisque aucun PIC n'est encore connecté).

Le logiciel du PIC

BOOT002.gif

La deuxième étape est de programmer un PIC avec le firmware du bootloader. J'ai utilisé le "USB Device - HID - HID Bootloader - C18 - PIC18F4550.hex" qui est fourni compilé dans l'ancienne distribution Microchip (Microchip MCHPSUSB v2.3.1).

Il est possible d'utiliser le programme "mla\v2017_03_06\apps\usb\device\bootloaders\firmware\pic18_non_j" qui est à compiler sous MPLAB.X.

Remarque : l'ancien programme PC pour le bootloader HID semble poser des problèmes avec les programmes générés par XC8 et MPLAB.X. Bien utiliser celui de la distribution MLA.

Le montage de test

BOOT003.jpg

J'ai utilisé la carte Interface USB modifiée pour un PIC 18F4550, c'est à dire :

- Quartz de 20 MHz avec les capacités adaptées,

- Pull-up du bus USB enlevé,

- Un switch sur la pin RB4.

La connection

BOOT004.gif

Une fois la carte connectée au bus USB, avec RB4 du PIC mis à la masse pendant le power on, Windows reconnait interface USB HID et "Device atached" doit appraitre sur le panneau de contrôle du Bootloader.

Le programme de test

BOOT005.gif

Selectionner le fichier hexa à charger, programmer le PIC puis faire un reset avec RB4 au +5V et le programme doit tourner.

Vous trouverez un programme de test dans la page "Programmes de test pour PIC 18F2550 et 18F4550" par exemple "test05".

Le programme tourne !

BOOT006.jpg

Ce programme fait compter en binaire les leds connectées à RB0,... RB3.

Il est écrit en XC8 sous MPLAB.X.

Il suffit d'écrire son programme à partir de l'adresse 0x1000 (code offset sous MPLAB.X, l'espace 0x0000 à 0x0FFF étant réservé au bootloader.

PIC 18F2550

BOOT008.jpg

Pour le PIC18F2550, on utilise le même logiciel côté PC et côté PIC que pour le PIC18F4550.

A gauche,le montage de test sur une platine de test Labdec.