IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Arduino Discussion :

HC 06 Bluethooth


Sujet :

Arduino

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Femme Profil pro
    Étudiant
    Inscrit en
    Décembre 2018
    Messages
    106
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 28
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2018
    Messages : 106
    Par défaut HC 06 Bluethooth
    Bonjour à tous,

    Je viens de faire un montage sur carte Uno avec un hc 06 bluethooth et application Ardudroid, j'arrive à communiquer mais j ai quelques problèmes, je me connecte et arrive à allumer une led ( 1 er essai ) la couper mais ensuite je perds la connexion, est ce un problème d'application ou de paramétrage du hc06 ? je mets le code utilisé

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    int ledPin = 13; 
    int state = 0;
     
    void setup() {
     pinMode(ledPin, OUTPUT);
     digitalWrite(ledPin, LOW);
     Serial.begin(9600); // Default connection rate for my BT module
    }
     
    void loop() {
     
     if(Serial.available() > 0)
         state = Serial.read();
     
     if (state == '0') 
        digitalWrite(ledPin, LOW);
     else if (state == '1') 
        digitalWrite(ledPin, HIGH);
     
    }


    Aussi je ne peux communiquer avec AT

    Merci pour vos idées

    Stéphanie

  2. #2
    Membre Expert
    Avatar de jpbbricole
    Homme Profil pro
    Retraité des réseaux informatiques
    Inscrit en
    Février 2013
    Messages
    1 017
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Retraité des réseaux informatiques
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Février 2013
    Messages : 1 017
    Par défaut
    Bonjour Stéphanie13000
    Citation Envoyé par Stéphanie13000 Voir le message
    Aussi je ne peux communiquer avec AT
    Avec HC-06, c'est le truc à savoir, pour envoyer des commandes AT à ces modules, il ne faut surtout pas les taper à la main. Il faut les préparer dans le bloc-notes par exemple, les copier dans le presse-papier et ensuite, depuis un terminal, les coller et le tout, sans CR ou LF.

    Pour ton programme, avec un UNO et un module Bluetooth, c'est source de galères que d'utiliser Tx(1) et Rx(0) pour l'interface BT, c'est ceux de l'interface USB. C'est possible mais...
    C'est mieux d'utiliser la bibliothèque SoftwareSerial et ça donne ceci

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    #include <SoftwareSerial.h>
    SoftwareSerial mySerial(10, 11); // RX, TX
     
    int ledPin = 13;
    int state = 0;
     
    void setup() {
    	pinMode(ledPin, OUTPUT);
    	digitalWrite(ledPin, LOW);
     
        mySerial.begin(9600);
    }
     
    void loop() 
    {
    	if(mySerial.available())
    	{
    		state = mySerial.read();
    		if(state == '0')
    		{
    			digitalWrite(ledPin, LOW);
    		}
    		else if(state == '1')
    		{
    			digitalWrite(ledPin, HIGH);
    		}
     
    	}
    }
    A+
    Bonne journée
    Cordialement
    jpbbri^cole

  3. #3
    Membre confirmé
    Femme Profil pro
    Étudiant
    Inscrit en
    Décembre 2018
    Messages
    106
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 28
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2018
    Messages : 106
    Par défaut
    Bonjour jpbbrile,

    D'accord pour le bloc note je ne savais pas cette manipulation, je vais remplacer mon code par le tiens si la communication est plus facile comme cela, j'imagine que cela ne change rien pour les connexion TX et RX ou j'ai mis un pont diviseur dessus ( 3.3 v ) rx et tx sont croisés aussi

    Cordialement

    StéphanieNom : diviseur2-b2259.png
Affichages : 2035
Taille : 101,3 Ko

  4. #4
    Membre Expert
    Avatar de jpbbricole
    Homme Profil pro
    Retraité des réseaux informatiques
    Inscrit en
    Février 2013
    Messages
    1 017
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Retraité des réseaux informatiques
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Février 2013
    Messages : 1 017
    Par défaut
    Salut Stéphanie
    Citation Envoyé par Stéphanie13000 Voir le message
    Bonjour jpbbrile,

    j'imagine que cela ne change rien pour les connexion TX et RX...
    Nom : diviseur2-b2259.png
Affichages : 2035
Taille : 101,3 Ko
    Le fil sur 0 va sur 10 (Rx) et 1 va sur 11 (Tx)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SoftwareSerial mySerial(10, 11); // RX, TX
    A+
    Cordialement
    jpbbricole

  5. #5
    Membre confirmé
    Femme Profil pro
    Étudiant
    Inscrit en
    Décembre 2018
    Messages
    106
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 28
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2018
    Messages : 106
    Par défaut
    En te remerciant, je viens de faire le transfert ça marche nickel , juste une précision j 'ai mis une résistance de 10 k et une autre de 20k pour faire le pont diviseur, est ce trop parce que je trouve des schémas avec 1k et 2k ?

    Je vais continuer mon montage qui devrait permettre de commander un relais qui activera un moteur de volet roulant électrique

    Cordialement

    Stéphanie

  6. #6
    Membre Expert
    Avatar de jpbbricole
    Homme Profil pro
    Retraité des réseaux informatiques
    Inscrit en
    Février 2013
    Messages
    1 017
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Retraité des réseaux informatiques
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Février 2013
    Messages : 1 017
    Par défaut
    Salut Stéphanie
    Citation Envoyé par Stéphanie13000 Voir le message
    juste une précision j 'ai mis une résistance de 10 k et une autre de 20k pour faire le pont diviseur, est ce trop parce que je trouve des schémas avec 1k et 2k ?
    Je n'ai pas suffisamment d’expertise pour te certifier quoi que se soit, je ne connais pas les caractéristiques d'entrée du Rx, mais je pense que ta solution devrai très bien fonctionner.
    Si ton installation fonctionne dans un milieu perturbé ou que le module Bluetooth est éloigné de l'Arduino, opte pour la 2ème solution.

    Cordialement
    jpbbricole

  7. #7
    Modérateur

    Avatar de Vincent PETIT
    Homme Profil pro
    Consultant en Systèmes Embarqués
    Inscrit en
    Avril 2002
    Messages
    3 252
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Consultant en Systèmes Embarqués
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Avril 2002
    Messages : 3 252
    Par défaut
    Salut,
    Citation Envoyé par Stéphanie13000 Voir le message
    juste une précision j 'ai mis une résistance de 10 k et une autre de 20k pour faire le pont diviseur, est ce trop parce que je trouve des schémas avec 1k et 2k ?
    Le courant d'une entrée de type CMOS, comme l'entrée Rx de ton module HC06, doit consommer quelques µA alors que dans ton pont diviseur circule un courant 100x plus grand. Ça ne devrait pas poser de problème (la formule du pont diviseur n'est pas faussée car la charge que tu tires dessus est négligeable)

  8. #8
    Membre confirmé
    Femme Profil pro
    Étudiant
    Inscrit en
    Décembre 2018
    Messages
    106
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 28
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2018
    Messages : 106
    Par défaut
    Citation Envoyé par jpbbricole Voir le message
    Salut Stéphanie

    Le fil sur 0 va sur 10 (Rx) et 1 va sur 11 (Tx)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SoftwareSerial mySerial(10, 11); // RX, TX
    A+
    Cordialement
    jpbbricole
    Bonjour jpbricole

    Le montage marche bien et j aimerai compléter avec une ligne pour commander un relais, pourrais tu m aider je suis un peu perdue, j ai essayé différente commandes mais ça ne fonctionne pas

    Cordialement

    Stéphanie

  9. #9
    Membre Expert
    Avatar de jpbbricole
    Homme Profil pro
    Retraité des réseaux informatiques
    Inscrit en
    Février 2013
    Messages
    1 017
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Retraité des réseaux informatiques
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Février 2013
    Messages : 1 017
    Par défaut
    Bonjour Stéphanie
    Citation Envoyé par Stéphanie13000 Voir le message
    j aimerai compléter avec une ligne pour commander un relais
    C'est assez simple, si tu arrives à commander une LED, c'est exactement la même chose, tu dédoubles tou ce qui concerne la LED, c'est à dire:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    int ledPin = 13;
    int relaisPin = 7;
    ....
    ....
     
    	pinMode(ledPin, OUTPUT);
    	digitalWrite(ledPin, LOW);
     
    	pinMode(relaisPin, OUTPUT);
    	digitalWrite(relaisPin, LOW);       // ou HIGH si relais actif à 0
     
    ....
    ....
     
    			digitalWrite(ledPin, LOW);
    			digitalWrite(relaisPin, LOW);       // ou inverse si relais actif à 0
    et ainsi de suite.

    Ce n'est pas la façon la plus "élégante" mais ça permet de comprendre, le style sera pour plus tard
    Qu'utilises-tu comme programme sur le smartphone? Androïd ou IOS.

    A+
    Cordialement
    jpbbricole

Discussions similaires

  1. Communication software - bluethooth
    Par brody dans le forum Hardware
    Réponses: 1
    Dernier message: 08/03/2018, 12h14

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo