Le forum a migré vers l'adresse suivante:

Forum

Masquer ce message

Simple-Duino Index du Forum



Problème liaison Arduino/Bluetooth


 
Poster un nouveau sujet   Répondre au sujet    Simple-Duino Index du Forum -> Arduino & Électronique -> Questions
Sujet précédent :: Sujet suivant  
Auteur Message
Avrdude37
Débutant

Hors ligne

Inscrit le: 18 Mar 2014
Messages: 6
Masculin
Niveau d'éléctronique: Débutant

MessagePosté le: Mar 18 Mar - 10:59 (2014)    Sujet du message: Problème liaison Arduino/Bluetooth Répondre en citant

PublicitéSupprimer les publicités ?
Bonjour, 

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 : 


 
Code:
#include <SoftwareSerial> //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" 
blueToothSerial.print("\r\n+STPIN=0000\r\n");//Set SLAVE pincode"0000" 
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. 
Serial.println("2 seconds passed"); 
//char recstatus; 
//blueToothSerial.print("\r\n+RTSTA:XX\r\n"); 
// recstatus = blueToothSerial.read(); 
//Serial.print(recstatus); 
blueToothSerial.flush(); 

 

Nous vous remercions de votre aide, 

Cordialement.
Revenir en haut
Admin
Fondateur

Hors ligne

Inscrit le: 12 Avr 2012
Messages: 860
Masculin
Niveau d'éléctronique: Pro

MessagePosté le: Mar 18 Mar - 22:28 (2014)    Sujet du message: Problème liaison Arduino/Bluetooth Répondre en citant

Mhh
As-tu déjà testé si le caractère était reçu ??
Si oui, ça élimine quand même un paquet de cause car cela pourrait dans ce cas venir d'une condition.


Le top pour tester serait d'établir la connexion avec  
Code:
setupBlueToothConnection() 
puis de s'arrêter ici: 
 
Code:
if(blueToothSerial.available()) 
{//check if there's any data sent from the remote bluetooth shield 

serialA = blueToothSerial.read(); 
Serial.print(serialA); 
}  

____________________________
http://simple-duino.com
Revenir en haut
Admin
Fondateur

Hors ligne

Inscrit le: 12 Avr 2012
Messages: 860
Masculin
Niveau d'éléctronique: Pro

MessagePosté le: Mar 18 Mar - 22:30 (2014)    Sujet du message: Problème liaison Arduino/Bluetooth Répondre en citant

Et d'ailleur, à quoi sert le

 
Code:
else{ 
digitalWrite(LED0, HIGH); 
digitalWrite(LED1, HIGH); 
digitalWrite(LED2, HIGH); 
}  

??
____________________________
http://simple-duino.com
Revenir en haut
Avrdude37
Débutant

Hors ligne

Inscrit le: 18 Mar 2014
Messages: 6
Masculin
Niveau d'éléctronique: Débutant

MessagePosté le: Mer 19 Mar - 14:36 (2014)    Sujet du message: Problème liaison Arduino/Bluetooth Répondre en citant

Le

 else{ 
digitalWrite(LED0, HIGH); 
digitalWrite(LED1, HIGH); 
digitalWrite(LED2, HIGH); 


Nous permettait juste de savoir si la condition était bien effectuée.
Et pour ton test nous allons tester ça merci Wink
Revenir en haut
Admin
Fondateur

Hors ligne

Inscrit le: 12 Avr 2012
Messages: 860
Masculin
Niveau d'éléctronique: Pro

MessagePosté le: Mer 19 Mar - 17:34 (2014)    Sujet du message: Problème liaison Arduino/Bluetooth Répondre en citant

D'ailleur les Serial.read ne ne reverront jamais un A, toujours le code ASCII correspondant au caractère A (je le connais pas mais tu trouve ça sur Internet).


Du coup, le 1 devient un 46 ou un truc du genre, le 0 un 45, etc...
Donc ta condition est fausse car même si tu transmet 1 via le module bluetooth, le codage ASCII ne renverra pas 1
____________________________
http://simple-duino.com
Revenir en haut
Avrdude37
Débutant

Hors ligne

Inscrit le: 18 Mar 2014
Messages: 6
Masculin
Niveau d'éléctronique: Débutant

MessagePosté le: Ven 21 Mar - 18:04 (2014)    Sujet du message: Problème liaison Arduino/Bluetooth Répondre en citant

D'accord merci on va changer ça :)

Je vous tiens au courant Wink
Revenir en haut
Avrdude37
Débutant

Hors ligne

Inscrit le: 18 Mar 2014
Messages: 6
Masculin
Niveau d'éléctronique: Débutant

MessagePosté le: Mar 25 Mar - 11:29 (2014)    Sujet du message: Problème liaison Arduino/Bluetooth Répondre en citant

Problème résolu: nous avons testé avec un autre shield bluetooth et tout marche, le problème venait donc de notre ancien shield Wink.

Merci de nous avoir apporté votre aide.
Revenir en haut
Admin
Fondateur

Hors ligne

Inscrit le: 12 Avr 2012
Messages: 860
Masculin
Niveau d'éléctronique: Pro

MessagePosté le: Mar 25 Mar - 19:30 (2014)    Sujet du message: Problème liaison Arduino/Bluetooth Répondre en citant

Ok ok !!
Du coup, quel shield avez-vous choisi ?
____________________________
http://simple-duino.com
Revenir en haut
Avrdude37
Débutant

Hors ligne

Inscrit le: 18 Mar 2014
Messages: 6
Masculin
Niveau d'éléctronique: Débutant

MessagePosté le: Mer 26 Mar - 14:20 (2014)    Sujet du message: Problème liaison Arduino/Bluetooth Répondre en citant

Euh... Je ne sais pas je l'écrirai mardi prochain (quand on sera en projet avec l'arduino et le shield)
Revenir en haut
Avrdude37
Débutant

Hors ligne

Inscrit le: 18 Mar 2014
Messages: 6
Masculin
Niveau d'éléctronique: Débutant

MessagePosté le: Mar 1 Avr - 09:52 (2014)    Sujet du message: Problème liaison Arduino/Bluetooth Répondre en citant

C'est un shield Sparkfun BlueSMiRF
Revenir en haut
Admin
Fondateur

Hors ligne

Inscrit le: 12 Avr 2012
Messages: 860
Masculin
Niveau d'éléctronique: Pro

MessagePosté le: Mar 1 Avr - 10:52 (2014)    Sujet du message: Problème liaison Arduino/Bluetooth Répondre en citant

Merci pour l'info !!
____________________________
http://simple-duino.com
Revenir en haut
Contenu Sponsorisé






MessagePosté le: Aujourd’hui à 01:50 (2017)    Sujet du message: Problème liaison Arduino/Bluetooth

Revenir en haut
Montrer les messages depuis:   
Poster un nouveau sujet   Répondre au sujet    Simple-Duino Index du Forum -> Arduino & Électronique -> Questions Toutes les heures sont au format GMT + 1 Heure
Page 1 sur 1

 
Sauter vers:  

Index | creer un forum | Forum gratuit d’entraide | Annuaire des forums gratuits | Signaler une violation | Conditions générales d'utilisation
Powered by phpBB
Propulsé par Simple-Duino