Nous sommes un groupe de trois élèves de terminale SSi. Notre projet cette année est de connecter une tablette Android à un Arduino en Bluetooth, lui-même équipé de Leds. Nous avons un Arduino Mega 2560 avec un "bluetooth shield v1.1 by Seeedstudio", et une Galaxy Tab 2. L’appairage entre les deux appareils se fait bel et bien, seulement le transfert de données n’aboutit pas… Le principe est d’envoyer la valeur 1 à l’Arduino lorsque le bouton « Allumer la Led 1 » est activé sur l’application développée par nos soins. Même idée pour les LED 2 et 3.
Il semble donc que ce soit le programme de liaison Bluetooth qui présente un problème car celui de base sans fonction Bluetooth a passé les tests avec succès.
Voici donc le code :
#include <SoftwareSerial.h> //Software Serial Port
#define RxD 7
#define TxD 6
SoftwareSerial blueToothSerial(7,6); //(RxD, TxD)
const int LED0 = 0;
const int LED1 = 1;
const int LED2 = 2;
char serialA = 0;
void setup() {
Serial.begin(9600);
pinMode(RxD, INPUT);
pinMode(TxD, OUTPUT);
setupBlueToothConnection();
pinMode(LED0, OUTPUT);
pinMode(LED1, OUTPUT);
pinMode(LED2, OUTPUT);
digitalWrite(LED0, LOW);
digitalWrite(LED1, LOW);
digitalWrite(LED2, LOW);
}
void loop() {
char serialA;
if(blueToothSerial.available()){//check if there's any data sent from the remote bluetooth shield
serialA = blueToothSerial.read();
Serial.print(serialA);
}
else{
digitalWrite(LED0, HIGH);
digitalWrite(LED1, HIGH);
digitalWrite(LED2, HIGH);
}
switch (serialA)
{
case 1:
digitalWrite(LED0, HIGH);
break;
case 2:
digitalWrite(LED0, LOW);
break;
case 3:
digitalWrite(LED1, HIGH);
break;
case 4:
digitalWrite(LED1, LOW);
break;
case 5:
digitalWrite(LED2, HIGH);
break;
case 6:
digitalWrite(LED2, LOW);
break;
}
}
void setupBlueToothConnection()
{
blueToothSerial.begin(38400); //Set BluetoothBee BaudRate to default baud rate 38400
blueToothSerial.print("\r\n+STWMOD=0\r\n"); //set the bluetooth work in slave mode
blueToothSerial.print("\r\n+STNA=SeeedBTSlave\r\n"); //set the bluetooth name as "SeeedBTSlave"
/*
Programme de reception Bluetooth via le logiciel APP Inventor
- connectez une led sur la sortie digitale 11
- connecter le module bluetooth sur les broches 0 et 1 , puis l'alim GND 5V (une fois le programme uploadé)
Attention, avant d'uploader ce programme, veillez à débrancher le module bluetooth
car celui-ci utilise les broches 0 et 1 utilisées aussi pour uploader
un programme dans arduino
Les Petits Débrouillards 2013 GNU-GPL
*/
const int ledPin = 13; // la led sera fixée à la broche 13
byte serialA; // variable de reception de donnée via RX
void setup()
{
Serial.begin(115200); // initialisation de la connexion série (avec le module bluetooth)
setupBlueToothConnection(); // démarrage liason série bluetooth cf fonction en bas
pinMode(ledPin, OUTPUT); // fixe la pin "ledpin" en sortie
}
void loop() {
switch (serialA) {
case 1: // si arduino reçois le chiffre 1 alors
digitalWrite(ledPin, HIGH); // allume sur la broche "ledpin"
break;
case 2: // si arduino reçois le chiffre 2 alors
digitalWrite(ledPin, LOW); // eteins la led sur la broche "ledpin"
break;
case 3: // si arduino reçois le chiffre 3 alors clignote
digitalWrite(ledPin, HIGH);
delay(100);
digitalWrite(ledPin, LOW);
delay(100);
}
}
void serialEvent(){ // si arduino reçois quelquechose en sur l'entrée RX
serialA = Serial.read(); // stocker la valeur reçue dans la variable SerialA
}
void setupBlueToothConnection() // fonction de configuration du module bluetooth
{
Serial.begin(115200); //vitesse de bluetooth
Serial.print("\r\n+STBD=115200\r\n"); // fixe la vitesse du bluetooth
Serial.print("\r\n+STWMOD=0\r\n"); //bluetooth en mode esclave
Serial.print("\r\n+STNA=Arduino"); //nom de l'appareil
Serial.print("\r\n+STPIN=0000\r\n");//code pin "0000"
Serial.print("\r\n+STOAUT=1\r\n"); // Permit Paired device to connect me
Serial.print("\r\n+STAUTO=0\r\n"); // Auto-connection should be forbidden here
delay(2000); // This delay is required.
Serial.print("\r\n+INQ=1\r\n"); //make the slave bluetooth inquirable
delay(2000); // This delay is required.
Serial.flush();
}
Avec ce programme nous n'arrivons pas à établir la connexion bluetooth entre l'arduino et nos téléphones portables ... Il n'est pas détecté ... Le programme fonctionne t-il pour vous ou faut-il que nous le modifions pour qu'il soit adapté à nos demandes ?
#include <SoftwareSerial.h> //Software Serial Port
#define RxD 6 // This is the pin that the Bluetooth (BT_TX) will transmit to the Arduino (RxD)
#define TxD 7 // This is the pin that the Bluetooth (BT_RX) will receive from the Arduino (TxD)
#define DEBUG_ENABLED 1
SoftwareSerial blueToothSerial(RxD,TxD);
//The following code is necessary to setup the bluetooth shield ------copy and paste----------------
void setupBlueToothConnection()
{
blueToothSerial.begin(38400); //Set BluetoothBee BaudRate to default baud rate 38400
blueToothSerial.print("\r\n+STWMOD=0\r\n"); //set the bluetooth work in slave mode
blueToothSerial.print("\r\n+STNA=SeeedBTSlave\r\n"); //set the bluetooth name as "SeeedBTSlave"
blueToothSerial.print("\r\n+STOAUT=1\r\n"); // Permit Paired device to connect me
blueToothSerial.print("\r\n+STAUTO=0\r\n"); // Auto-connection should be forbidden here
delay(2000); // This delay is required.
blueToothSerial.print("\r\n+INQ=1\r\n"); //make the slave bluetooth inquirable
Serial.println("The slave bluetooth is inquirable!");
delay(2000); // This delay is required.
blueToothSerial.flush();
}
/*----------------------SETUP----------------------------*/
void setup() {
Serial.begin(9600); // Allow Serial communication via USB cable to computer (if required)
pinMode(RxD, INPUT); // Setup the Arduino to receive INPUT from the bluetooth shield on Digital Pin 6
pinMode(TxD, OUTPUT); // Setup the Arduino to send data (OUTPUT) to the bluetooth shield on Digital Pin 7
setupBlueToothConnection(); //Used to initialise the Bluetooth shield
}
/*----------------------LOOP----------------------------*/
void loop() {
char recvChar;
int len = blueToothSerial.available();
if (len != 0) {
recvChar = blueToothSerial.read();
Serial.print(recvChar);
}
}
nous avons rencontré le même problème.. quelqu'un peut nous aider à envoyer des données par bluetooth du smartphone android vers la carte arduino mega 2560, merci
Problème Android/Arduino par bluetooth
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
aide toi de ca si tu veux
essaye comme ca