Le bluetooth

Accueil/Le bluetooth
Le bluetooth 2016-12-20T11:38:32+00:00

Project Description

Aujourd’hui, nous allons voir comment permettre a notre Arduino et communiquer par bluetooth avec différents dispositifs comme votre téléphone, votre ordinateur ou une autre Arduino.

Matériel

Nous avons décider de réaliser ce tutoriel avec un certain type de puce, vous pouvez bien sur la changer et adapter le tutoriel. Voila le matériel nécessaire (nous avons aussi crée un mini shield pour le brancher) :

  • Une Arduino
  • Un module bluetooth HC-05
  • Tout dispositif que vous souhaitez controller (dans notre exemple on prendra la led 13 déjà soudée sur la carte)
  • Un appareil bluetooth avec terminal, par exemple un téléphone Android avec l’application Bluetooth Terminal

Les branchements

Pour ce montage, il y a deux possibilités :

  • Si vous avez une Arduino mega et vous pouvez brancher le module avec +5v au +5v de l’Arduino, le GND à la masse de l’Arduino, le Rx du module au pin Tx1 (ou Tx2 ou Tx3…) de l’Arduino et enfin le Tx du module au pin Rx1 (ou Rx2 ou Rx3…) de l’Arduino
  • Si vous n’avez pas d’Arduino mega, reliez le pin +5v au +5v, le GND au GND, ensuite le Rx à un pin quelconque et le Tx à un autre pin.
Si vous possédez une Arduino Leonardo seuls les pins 8, 9, 10, 11, 14 (MISO), 15 (SCK), 16 (MOSI) peuvent être utilisez pour brancher le pin Tx du module.

Les commandes de bases

//Avec Arduino Mega

Serial1.begin(9600); //initialise la liaison

if(Serial1.available()) // regarde si il y a des caractères en attente

Serial1.read(); // lit le caractère

Serial1.write(data); // envoie un caractère

Serial1.print(data); Serial1.println(data); //envoie des chaines de caractères

//Sans Arduino Mega

#include <SoftwareSerial.h>

SoftwareSerial mySerial(10, 11); // RX de l'Arduino(=Tx du module), TXde l'Arduino(=Rx du module)

mySerial.begin(9600); // initialise la liaison
mySerial.read(); // regarde s'il y a des caractères en attente

//et toutes les fonctions précedantes...

Alors la rien de sorcier, si vous avez une Arduino mega, il vous faut utiliser la liaison série classique, avec les mêmes fonctions, mis à part que l’objet ne sera plus Serial mais Serial1 ou Serial2 ou 3… en fonction de là où vous avez branchez le module.

Sinon, on utilise la librairie SoftwareSerial, il faut tout d’abord l’inclure, puis déclarer un objet de type SoftwareSerial en indiquant les pin (dans l’ordre) Tx du module et Rx du module, puis vous pouvez utiliser cet objet comme une liaison série normale!

Exemple de programmation

Voila un exemple qui affiche sur chacune des liaison ce que l’autre lui envoie, pour communiquer par exemple (code basé sur une Arduino autre que la mega, pins 10 et 11) :

#include <SoftwareSerial.h>

SoftwareSerial mySerial(10, 11);

void setup(){
Serial.begin(9600);
mysSerial.begin(9600);
}

void loop() {
if(mySerial.available()) Serial.write(Serial1.read());
if(Serial.available()) mySerial.println(Serial.read());
}

 

Et un autre exemple qui allume la led 13 si on lui envoie ‘1’ par bluetooth et l’éteint si elle recoit ‘0’ :

#include <SoftwareSerial.h>

SoftwareSerial mySerial(10, 11);
void setup() {

pinMode(13, OUTPUT);

mySerial.begin(9600);

}

void loop() {

if (mySerial.available())

char c = mySerial.read();

if(c =='1') {

digitalWrite(13, HIGH);

}

if(c == '0'){

digitalWrite(13, LOW);

}

delay(500);
  }
}

12 Commentaires

  1. PETROLINI 27 mars 2016 à 10 h 05 min␣- Répondre

    Bonjour
    Je n’arrive pas a ouvrir la liaison entre la carte bleutooth et ma tablette iPad
    Quelle est la solution ?
    Cordialement

    • arnaud9212 30 mars 2016 à 16 h 11 min␣- Répondre

      Il existe surement des applications sur l’Apple Store pour ouvrir un terminal bluetooth non?

  2. coco-xxx 6 avril 2016 à 14 h 23 min␣- Répondre

    je t’aime

  3. coco-xxx 6 avril 2016 à 14 h 23 min␣- Répondre

    i love duret

  4. Pierre 15 avril 2016 à 18 h 15 min␣- Répondre

    Bonjour, il manque la déclaration char c; avant la phase SETUP
    et une accolade de trop à la fin…
    Super tuto en tout cas Merci bcp !

  5. houssem 5 novembre 2016 à 10 h 48 min␣- Répondre

    mon bluetooth ne se detecte pas sur aucune appareil

  6. ben 4 décembre 2016 à 2 h 27 min␣- Répondre

    salut j’ai un idee de faire un mini projet c est commander une lampe avec carte arduino par bluetooth vous pouvez ma explique comment faire cela

  7. diablox9 19 janvier 2017 à 10 h 46 min␣- Répondre

    2017

  8. moh 15 février 2017 à 18 h 02 min␣- Répondre

    bonjour voila j’aurais besoin d’aide afin de mettre un programme qui me permet d’envoyer un fichier audio par Bluetooth , pourriez vous m’aider merci .

  9. enedya 6 mars 2017 à 15 h 31 min␣- Répondre

    ! etup la erem at

  10. enedya 6 mars 2017 à 15 h 32 min␣- Répondre

    #ComprendraQuiPourra

Laisser un commentaire