Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //**************************************************************************************************************************************************************************
- //********************************************************* Démo commande Bluetooth v1.0 - Carte Uno (com22) ***************************************************************
- //**************************************************************************************************************************************************************************
- #include <SoftwareSerial.h> // Librairie pour le gestion série du module Bluetooth
- #define BrocheBuzzer 5 // Broche du Buzzer 5v
- #define BrocheLedBleue 2 // Broche de la Led bleue
- #define BrocheLedRouge 3 // Broche de la Led rouge
- #define BrocheLedVerte 4 // Broche de la Led verte
- String StringMessageBT = ""; // Chaine de caractères reçus par bluetooth
- boolean etatLedBleue = LOW; // Indicateur de l'état courant de la led bleue
- boolean LastetatLedBleue = LOW; // Indicateur du dernier état courant de la led bleue
- boolean etatLedRouge = LOW; // Indicateur de l'état courant de la led rouge
- boolean LastetatLedRouge = LOW; // Indicateur du dernier état courant de la led rouge
- boolean etatLedVerte = LOW; // Indicateur de l'état courant de la led verte
- boolean LastetatLedVerte = LOW; // Indicateur du dernier état courant de la led verte
- boolean etatBuzzer = LOW; // Indicateur de l'état courant du buzzer
- SoftwareSerial BluetoothSerie(10, 11); // Crée l'objet "BluetoothSerie" (TXD BT sur broche 10 Arduino (RX), RXD BT sur broche 11 (TX)Arduino)
- void setup()
- {
- Serial.begin(9600); // Démarre la communication série avec la console
- BluetoothSerie.begin(9600); // Démarre le port de communication avec le module Bluetooth HC06
- pinMode(BrocheBuzzer, OUTPUT); // Configure les broches en sorties
- pinMode(BrocheLedBleue, OUTPUT);
- pinMode(BrocheLedRouge, OUTPUT);
- pinMode(BrocheLedVerte, OUTPUT);
- delay(1000); // Temporise une seconde
- Buzzer(20, 0, 1); // Active le buzzer 20ms
- //**************************************************************************************************************************************************************************
- }
- void loop()
- {
- //**************************************************************************************************************************************************************************
- //********************************************************************************************************************* // COMMUNICATION SERIE AVEC LE MODULE BLUETOOTH HC06
- if (BluetoothSerie.available() > 0) // ****************************************************************************** // S'il y a des données disponibles sur le module bluetooth
- {
- while (BluetoothSerie.available() > 0) // +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ // Tant qu'il y a des données disponibles
- {
- char c = BluetoothSerie.read(); // Lecture d'un caractère à la fois
- delay(1);
- //Serial.println(c); // Débug
- if (c == -87) {StringMessageBT += "é";} else if (c == -88) {StringMessageBT += "è";} // -------------------- // Gestion des caractères accentués
- else if (c == -86) {StringMessageBT += "ê";} else if (c == -85) {StringMessageBT += "ë";}
- else if (c == -96) {StringMessageBT += "à";} else if (c == -71) {StringMessageBT += "ù";}
- else if (c == -68) {StringMessageBT += "ü";} else if (c == -69) {StringMessageBT += "û";}
- else if (c == -81) {StringMessageBT += "ï";} else if (c == -82) {StringMessageBT += "î";}
- else if (c == -94) {StringMessageBT += "â";}
- if (c < 32 || c == -61) continue;
- StringMessageBT += c; // Stocke le caractère dans "StringMessageBT"
- }
- //Serial.println(StringMessageBT); // Débug
- if (StringMessageBT == "ledbleueon") {etatLedBleue = HIGH;} // ---------------------------------------------- // Exécute les ordres reçus par bluetooth
- else if (StringMessageBT == "ledbleueoff") {etatLedBleue = LOW;}
- else if (StringMessageBT == "ledrougeon") {etatLedRouge = HIGH;}
- else if (StringMessageBT == "ledrougeoff") {etatLedRouge = LOW;}
- else if (StringMessageBT == "ledverteon") {etatLedVerte = HIGH;}
- else if (StringMessageBT == "ledverteoff") {etatLedVerte = LOW;}
- else if (StringMessageBT == "buzzeron") {etatBuzzer = HIGH;}
- StringMessageBT = ""; // Réinitialise la chaine de caractères reçus en bluetooth
- }
- //**************************************************************************************************************************************************************************
- if (LastetatLedBleue != etatLedBleue) // **************************************************************************** // Si l'état de la led bleue a changé
- {
- if (etatLedBleue == HIGH) {digitalWrite(BrocheLedBleue, HIGH);} // +++++++++++++++++++++++++++++++++++++++++++ // Active la led bleue
- else if (etatLedBleue == LOW) {digitalWrite(BrocheLedBleue, LOW);} // ++++++++++++++++++++++++++++++++++++++++++++ // Désactive la led bleue
- LastetatLedBleue = etatLedBleue; // Mémorise le dernier état de la led bleue
- }
- if (LastetatLedRouge != etatLedRouge) // **************************************************************************** // Si l'état de la led rouge a changé
- {
- if (etatLedRouge == HIGH) {digitalWrite(BrocheLedRouge, HIGH);} // +++++++++++++++++++++++++++++++++++++++++++ // Active la led rouge
- else if (etatLedRouge == LOW) {digitalWrite(BrocheLedRouge, LOW);} // ++++++++++++++++++++++++++++++++++++++++++++ // Désactive la led rouge
- LastetatLedRouge = etatLedRouge; // Mémorise le dernier état de la led rouge
- }
- if (LastetatLedVerte != etatLedVerte) // **************************************************************************** // Si l'état de la led verte a changé
- {
- if (etatLedVerte == HIGH) {digitalWrite(BrocheLedVerte, HIGH);} // +++++++++++++++++++++++++++++++++++++++++++ // Active la led verte
- else if (etatLedVerte == LOW) {digitalWrite(BrocheLedVerte, LOW);} // ++++++++++++++++++++++++++++++++++++++++++++ // Désactive la led verte
- LastetatLedVerte = etatLedVerte; // Mémorise le dernier état de la led verte
- }
- if (etatBuzzer) // ************************************************************************************************** // Si l'état du buzzer est activé
- {
- Buzzer(250, 0, 1); // Active le buzzer 250ms
- etatBuzzer = LOW; // Désactive l'indicateur d'état du buzzer
- }
- //**************************************************************************************************************************************************************************
- }
- //**************************************************************************************************************************************************************************
- //*** Fonction Gestion Buzzer **********************************************************************************************************************************************
- //**************************************************************************************************************************************************************************
- void Buzzer (int TempsH, int TempsL, int nb) // TempsH => délai buzzer ON, TempsL => délai buzzer OFF, nb => nombre de bips
- {
- for (int x = 1; x <= nb; x++) // ************************************************************************************ // Boucle le nombre de fois voulu passé par l'argument "int nb"
- {
- digitalWrite(BrocheBuzzer, HIGH); // Active le buzzer
- delay (TempsH); // Temporisation à l'état haut du buzzer pendant la durée passée par l'argument "int TempsH"
- digitalWrite(BrocheBuzzer, LOW); // Désactive le buzzer
- delay (TempsL); // Temporisation à l'état bas du buzzer pendant la durée passée par l'argument "int TempsL"
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement