table des matières
  1. Principales commandes mbed_cli
    1. Configuration de l’environnement
    2. Vérification et mise à jour de la version
    3. Gestion des versions du projet
  2. Librairies de composants
    1. Gérer les librairies : Cas général
    2. Exemple de la librairie mbed-cloud-client
  3. Librairie de composants : section CIEL-IR
    1. Librairie sonde BME280 (BME280t)
    2. Librairie Écran LCD Grove-LCD RGB BackLight
    3. Librairie ServoMoteur (Grove Servo)
    4. Librairie Robotics RFID Reader
    5. Librairie Capteur CO2 MQ135
  4. Gérer plusieurs projets Mbed

mbed-cli est l’interface en ligne de commande utilisé pour gérer les projets mbed. Nous allons résumer ci-après les principales commandes utilisées.

Principales commandes mbed_cli

  • Vérifier l’installation
mbed --help

Configuration de l’environnement

  • Configurer le PATH de gcc-arm (configuration globale)
mbed config -G ARM_PATH /usr/bin
  • Lister la configuration (Se placer dans le dossier du projet)
mbed config --list
  • Supprimer une configuration

Exemple : Suppression de la configuration MBED_OS_DIR en global

mbed config -G --unset MBED_OS_DIR

Vérification et mise à jour de la version

  • Vérifier la version de mbed.

Information : La sortie de mbed releases pointe sur le tag courant de la version

cd mbed-os
mbed releases
  • Mise a jour de mbed-os (exemple ici en 6.15.1)
cd mbed-os
mbed update 6.15.1

Gestion des versions du projet

  • Publier son travail

Information : Soit vous pouvez faire git add, git commit et git push, soit vous utilisez la commande mbed pour ces 3 actions

mbed publish 

Librairies de composants

mbed permet récupérer les librairies d’éléments matériels supplémentaires et de les intégrer à un projet

Gérer les librairies : Cas général

  • Ajouter une librairie de composant
mbed add <adresse librairie>
  • Lister les librairie installées
mbed ls -a
  • Supprimer une librairie existante
mbed remove <nom_librairie> 

Exemple de la librairie mbed-cloud-client

  • Ajouter la librairie au projet
mbed add https://github.com/ARMmbed/mbed-cloud-client
  • Lister les librairies du projet
mbed ls
[mbed] Working path "~/tmp/Mbed6_Template_JLink" (program)
Mbed6_Template_JLink (#dc524271d409)
|- mbed-cloud-client (#8a30590179cd, tag: 4.11.1)
`- mbed-os (#4cfbea43cabe, tags: mbed-os-6.15.0, mbed-os-6.15.0-rc3)      
  • Enlever la librairie du projet
mbed remove mbed-cloud-client        

Librairie de composants : section CIEL-IR

Nous avons à notre disposition un certain nombre de composants matériels à intégrer à nos projets. Vous trouverez ci-dessous les plus courants avec la documentation et les librairies associés.

Librairie sonde BME280 (BME280t)

mbed add http://os.mbed.com/users/MACRUM/code/BME280/

Librairie Écran LCD Grove-LCD RGB BackLight

mbed add http://os.mbed.com/users/sepro/code/Grove_LCD_RGB_BacklightvMbed6/

Librairie ServoMoteur (Grove Servo)

Information : Il n’y a pas de librairie spécifique à importer. Le servomoteur se commande en PWM

Principe de commande d’un servomoteur

  • Cas de notre servomoteur (Ref : Microservo 9G-SG90)

Le servo se commande avec un PulseWidth entre 500 et 2500us

  1. Initialiser la période à 20ms.
  2. Ensuite gérer le duty cycle
    1. Pour 500us -> position 0°
    2. Pour 2500us -> position 180°

Librairie Robotics RFID Reader

mbed add http://os.mbed.com/users/sepro/code/Robotics-RFID-Reader/

Librairie Capteur CO2 MQ135

https://os.mbed.com/users/readysteadygo2006/code/MQ135/

https://github.com/ViliusKraujutis/MQ135

http://davidegironi.blogspot.com/2014/01/cheap-co2-meter-using-mq135-sensor-with.html

  • Importation de la librairie
mbed add http://os.mbed.com/users/sepro/code/MQ-135/

Gérer plusieurs projets Mbed

Quand on gère plusieurs projets mbed, cela devient lourd de télécharger à chaque fois une version de mbed-os pour tous ces projets.

Il est possible de télécharger le dossier mbed-os une fois sur son poste et de faire référence à ce dossier dans son projet.

  • Choisir un emplacement pour importer mbed-os
  • Importer mbed-os
  • Ajouter le chemin dans la configuration globale (MBED_OS_DIR)
cd /absolute/path/to/project/dir
$ mbed import mbed-os
$ mbed config -G MBED_OS_DIR /absolute/path/to/project/dir/mbed-os
[mbed] /absolute/path/to/project/dir/mbed-os now set as global MBED_OS_DIR

Dans le projet, modifier la ligne de compilation dans le fichier task.json en ajoutant dans source le chemin vers mbed-os

// Ancienne ligne
// "args": ["compile", "--profile=debug", "-t", "GCC_ARM", "-m", "NUCLEO_F746ZG"],

// Nouvelle ligne
"args": ["compile", "--source=.", "--source=/absolute/path/to/project/dir/mbed-os", "--profile=debug", "-t", "GCC_ARM", "-m", "NUCLEO_F746ZG"],