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

Python Discussion :

Buffer Python Bluetooth [Python 2.X]


Sujet :

Python

  1. #21
    Expert confirmé
    Avatar de jurassic pork
    Homme Profil pro
    Bidouilleur
    Inscrit en
    Décembre 2008
    Messages
    4 210
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Bidouilleur
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2008
    Messages : 4 210
    Par défaut
    Citation Envoyé par guillaume1937 Voir le message
    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
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    #!/usr/bin/env python
    # -*- coding: latin-1 -*-
     
    #!/usr/bin/env python3
     
    import io
    import serial
    import RPi.GPIO as GPIO
    import time
     
     
    PORT = "/dev/rfcomm0"
    BAUDRATE = 9200
    TIMEOUT = 0.05
    ENCODING = "Utf-8"
    LED_PIN = 22
     
    try:
        GPIO.setmode(GPIO.BOARD)
        GPIO.setwarnings(False)
        GPIO.setup(LED_PIN, GPIO.OUT)
        etat = 0
     
        while True :
            ser = serial.Serial(PORT, BAUDRATE, timeout=TIMEOUT)
            #print(ser.inWaiting())
            #buffer = io.BufferedReader(ser)
            sio = io.TextIOWrapper(io.BufferedRWPair(ser, ser))
            sio.flush()
            line = sio.readline().decode('utf-8').strip().lower()
            if len(line)>0 :
                print(line)
                print("line :",line.encode("hex"))                   
                if line in ['on', 'on\r', 'on\n',('on\r\n')]:
                    GPIO.output(LED_PIN, GPIO.HIGH)
                    etat = 1
                elif line in ['off', 'off\r', 'off\n','off\r\n']:
                    GPIO.output(LED_PIN, GPIO.LOW)
                    etat = 0
            if etat == 1 : GPIO.output(LED_PIN, GPIO.HIGH)
     
    finally:
        GPIO.cleanup()
    c'est un peu n'importe quoi le code dans ta boucle tu reprogrammes à chaque fois le port série et tu utilises sio. En plus tu fais le test de présence du on ou off à l'envers line in
    Tu peux essayer 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
    try:
        GPIO.setmode(GPIO.BOARD)
        GPIO.setwarnings(False)
        GPIO.setup(LED_PIN, GPIO.OUT)
        etat = 0
        ser = serial.Serial(PORT, BAUDRATE)
        while True:
            line = str(ser.readline())
            print(line)                 
            if  "on" in line:
                GPIO.output(LED_PIN, GPIO.HIGH)
                etat = 1
            elif "off" in line:
                    GPIO.output(LED_PIN, GPIO.LOW)
                    etat = 0
            if etat == 1 : GPIO.output(LED_PIN, GPIO.HIGH)
     
    finally:
        GPIO.cleanup()

  2. #22
    Membre averti
    Homme Profil pro
    Etudiant
    Inscrit en
    Mars 2022
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 25
    Localisation : France, Gard (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Etudiant

    Informations forums :
    Inscription : Mars 2022
    Messages : 16
    Par défaut
    Problème réglé, merci à tous pour vos réponses !

  3. #23
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 726
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 726
    Par défaut
    Citation Envoyé par jurassic pork Voir le message
    c'est un peu n'importe quoi le code dans ta boucle tu reprogrammes à chaque fois le port série et tu utilises sio. En plus tu fais le test de présence du on ou off à l'envers
    Ce n'est pas n'importe quoi: le PO a juste voulu modifier le code récupéré dans un autre forum.

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

+ Répondre à la discussion
Cette discussion est résolue.
Page 2 sur 2 PremièrePremière 12

Discussions similaires

  1. petit programme python pour recevoir des données en Bluetooth
    Par sergio1958 dans le forum Réseau/Web
    Réponses: 6
    Dernier message: 27/02/2021, 14h31
  2. Réponses: 2
    Dernier message: 20/07/2018, 10h10
  3. [Python 3.X] Nombre d'octets dans le Buffer du Bluetooth série (PyBluez)
    Par Elinux dans le forum Général Python
    Réponses: 1
    Dernier message: 06/07/2018, 11h21
  4. le bluetooth avec Python
    Par PIC83 dans le forum Général Python
    Réponses: 3
    Dernier message: 28/02/2018, 13h59
  5. Réponses: 2
    Dernier message: 19/03/2011, 22h30

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