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 :

Communication usb entre arduino uno et raspberry pi


Sujet :

Arduino

  1. #1
    Membre averti
    Homme Profil pro
    Enseignant
    Inscrit en
    Octobre 2016
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Octobre 2016
    Messages : 20
    Par défaut Communication usb entre arduino uno et raspberry pi
    Bonjour
    Je rencontre des pbs pour les faire communiquer ensemble
    1/Programme pour l'arduino

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    void setup()
    {
    Serial.begin(9600);
    }
     
    void loop()
    {
    Serial.println(“Hello Pi”);
    delay(2000);
    }

    2/Programme pour le PI

    Code Python : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    import serial
    ser = serial.Serial('/dev/ttyACM0', 9600)
    while 1 :
       print(ser.readline())

    Lorsque je visualise sur l arduino : pas de bp

    Lorsque je visualise sur le PI il m écrit :
    b' Hello Pi\r\n'

    Peut on supprimer ces caractères indésirables ?

  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 college62137
    Citation Envoyé par college62137 Voir le message
    Peut on supprimer ces caractères indésirables ?
    Oui, en écrivant
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Serial.print(“Hello Pi”);
    // à la place de
    Serial.println(“Hello Pi”);
    c'est le println qui ajoute \r\n.

    Cordialement
    jpbbricole

  3. #3
    Responsable Arduino et Systèmes Embarqués


    Avatar de f-leb
    Homme Profil pro
    Enseignant
    Inscrit en
    Janvier 2009
    Messages
    13 197
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Janvier 2009
    Messages : 13 197
    Billets dans le blog
    47
    Par défaut
    Salut,

    C'est aussi un souci d'encodage des caractères en Python :
    Code python : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    >>> 
    >>> a = b'Hello Pi\r\n'
    >>> a
    b'Hello Pi\r\n'
    >>> type(a)
    <class 'bytes'>
    >>> b = a.decode("utf-8")
    >>> b
    'Hello Pi\r\n'
    >>> type(b)
    <class 'str'>
    >>>

  4. #4
    Membre averti
    Homme Profil pro
    Enseignant
    Inscrit en
    Octobre 2016
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Octobre 2016
    Messages : 20
    Par défaut
    Merci d avoir pris le temps de me répondre

  5. #5
    Membre averti
    Homme Profil pro
    Enseignant
    Inscrit en
    Octobre 2016
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Octobre 2016
    Messages : 20
    Par défaut
    Bonjour

    Encore merci pour vos réponses

    J ai fait juste un print mais plus rien ne passe

    Par contre étant donné que je débute je n ai pas tout compris de ton code f-leb

  6. #6
    Responsable Arduino et Systèmes Embarqués


    Avatar de f-leb
    Homme Profil pro
    Enseignant
    Inscrit en
    Janvier 2009
    Messages
    13 197
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Janvier 2009
    Messages : 13 197
    Billets dans le blog
    47
    Par défaut
    Salut,

    Citation Envoyé par college62137 Voir le message
    Lorsque je visualise sur le PI il m écrit :
    b' Hello Pi\r\n'

    Peut on supprimer ces caractères indésirables ?
    le b qui précède indique que le type retourné est un tableau d'octets (b pour Bytes array), un type de données utilisé dans les versions anciennes Python 2.x pour les chaînes de caractères, mais ce type est utilisé dans la communication série. En Python 3.x, les chaînes de caractères sont maintenant en 'unicode' par défaut. Il faut donc décoder ce tableau d'octets en Unicode pour afficher correctement :

    Code python : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    chaine_caracteres = b'Hello World' # type tableau d'octets
     
    print(chaine_caracteres.decode('utf-8'))
    Hello World


    D'ailleurs, si tu veux écrire du Pi vers l'Arduino en Python 3.x, il faudra je suppose faire l'opération inverse : encodage Unicode vers bytes array :
    Code python : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    chaine_caracteres = 'Hello World' # de type str, donc Unicode en Python 3.x
    port_serie.write(chaine_caracteres.encode('ascii'))

Discussions similaires

  1. Réponses: 1
    Dernier message: 11/06/2018, 11h41
  2. Communication ethernet entre Arduino et QT
    Par PetitTonnerre dans le forum Arduino
    Réponses: 1
    Dernier message: 30/05/2018, 10h01
  3. Communication UART entre deux UNO dont une avec clavier
    Par piedacoulisse dans le forum Arduino
    Réponses: 3
    Dernier message: 29/01/2017, 21h55
  4. Communication USB entre WP8 et pc
    Par VeloO dans le forum Windows Phone
    Réponses: 4
    Dernier message: 31/01/2013, 15h57
  5. Communication USB entre Tablette et carte electronique
    Par SilisElectronique dans le forum Android
    Réponses: 0
    Dernier message: 24/09/2012, 11h09

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