Partage
  • Partager sur Facebook
  • Partager sur Twitter

Qt problème de read à partir d'un QSerialPort

QSerialPort::read > fail

Sujet résolu
    16 juillet 2019 à 15:35:02

    Bonjour,

    j'ai un soucis avec mon programme Qt, il envoie des données à une carte arduino, ces données sont entièrement récupérées et le côté arduino marche.

    Cependant suite à ça mon arduino renvoie des données dans l'autre sens. J'essaie alors de les lire. Je récupère des données mais des fois tronquées. Je fais actuellement ceci avec la méthode bloquante > QSerialPort::waitForReadyRead(), j'ai essayé de mettre des timers après celles ci attendre puis lire mais rien y fait je n'ai pas TOUT LE TEMPS toute les données. Parceque des fois oui j'arrive avoir tout complet. Je me demandais alors peut-être que si j'utilise readyRead en tant que Signal je pourrai peut-être lire quand toute les data seront prêtes ? Merci d'avance et désolé du pâté. Je posterai le code un peu plus tard. 

    • Partager sur Facebook
    • Partager sur Twitter
      17 juillet 2019 à 11:48:10

      Bonjour,

      Tu peux mettre plusieurs waitForReadyRead jusqu'à ce que toutes les données soient arrivées, mais pour ça il te faut un moyen de déterminer à la réception, si c'est effectivement le cas (caractère/octet de fin de message, message à taille fixe ou calculable, temps de pause entre chaque message...).

      Donc au minimum, il faudrait montrer la forme des données que tu envoies de l'arduino vers Qt.

      • Partager sur Facebook
      • Partager sur Twitter
        23 juillet 2019 à 12:02:35

        C'est ce que j'ai trouvé de mieux merci

        • Partager sur Facebook
        • Partager sur Twitter

        Qt problème de read à partir d'un QSerialPort

        × 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.
        • Editeur
        • Markdown