top of page

LE MODULE ME BLUETOOTH

Le module "Me Bluetooth" permet de recevoir des informations depuis un périphérique Bluetooth 'Smartphone, tablette). Ce module comporte une led bleue qui clignote lorsque le module n'est pas appairé et reste allumé dans le cas contraire. La vitesse de transmission de la liaison série est de 115200 bit/s.Les fonctions contenues dans la bibliothèque Makeblock sont :

  • MeBluetooth bluetooth(PORT_X) où PORT_X est le port sur lequel est branché le module. Cette fonction permet de créer l'objet.

  • bluetooth.write() : envoi de l’octet compris entre les parenthèses.

  • bluetooth.read() : lit l’octet reçu sur la liaison série.

  • bluetooth.avaible() : renvoie le nombre d'octets présents sur la liaison série.

Le tableau ci- dessous donne les ports des cartes "Me Orion" et "Me Auriga" pouvant être connectés à ce module.

 

Exemple :

Nous souhaitons échanger des messages entre le moniteur série et une application installée sur un Smartphone ou une tablette.

Programme :

/*Bluetooth_Makeblock est un programme qui, grâce à un module "Me Bluetooth", échange des données (chaine de caractères)
entre une application Android et une carte "Me Orion" ou "Me Auriga".*/
 
#include "MeOrion.h"                                             // appel des bibliothèques
#include <SoftwareSerial.h>

MeBluetooth bluetooth(PORT_3);                         // création de l'objet bluetooth (module branché sur le port 3)                                             

unsigned char tableau[128] = {0};
int indata = 0;
int i = 0;
int count = 0;
char outDat;

void setup()
{
  Serial.begin(115200);                                        // initialisation de la liaison série (moniteur)
  bluetooth.begin(115200);                                  // initialisation de la liaison série (bluetooth)
  Serial.println("Veuillez connecter la carte en cliquant sur le logo Bluetooth");
}

void loop()
{
  if (bluetooth.available())                                    // si des données sont présentes sur la liaison Bluetooth (de l'application vers le module Bluetooth)
  {
    while((indata = bluetooth.read()) != (int)-1)  // tant que des données sont présentes
    {
      tableau[count] = indata;                               // on les stocke dans le tableau
      count++;
      delay(1);
    }


    for(i = 0;i<count;i++)                                       // boucle pour écrire les données dans le moniteur série
    {
      if (tableau[i]!=char(13))                                // si le caractère n'est pas "retour chariot"
      {
        Serial.write(tableau[i]);                             // on écrit les caractères
      }
      else                                                               // sinon
      {
        Serial.println();                                           // on va à la ligne pour écrire la prochaine de caractères
      }
     }
  }


  if(Serial.available() )                                        // si des données sont présentes sur la liaison série (du module Bluetooth vers l'application)
  {
    outDat = Serial.read();                                  // on les lit
    bluetooth.write(outDat);                               // et on les renvoie sur la liaison Bluetooth
  }
}

L'application :

L'application est proposée en téléchargement au format :

  • apk pour être installée directement sur un Smartphone.

  • aia pour être importée sous App Inventor. Nous pouvons, dans ce cas, modifier l'interface graphique. L'application peut également servir de support pour créer une autre application.

bottom of page