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

Discussion :

QTcpSocket : problème de communication avec hardware

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    109
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 109
    Points : 55
    Points
    55
    Par défaut QTcpSocket : problème de communication avec hardware
    Bonjour,

    Je travaille sur une appli qui commande des appareils par tcp/ip. Pour tester l'appli, ces appareils peuvent être remplacés par un logiciel de simulation (server tcp) qui reçoit le message et renvoie une réponse adaptée.

    Je cherche à rendre le code de communication tcp/ip du client portable et du coup je recode les méthodes basées sur du code spécifique Linux en Qt via les QtcpSocket.
    Le code basé sur Linux fonctionne correctement lorsqu'on est connecté à l'appareil et au simulateur.

    J'ai fait un code de test basé sur Qt qui envoie une succession de commande :
    - declaration des sockets (deux sur le meme serveur mais qui ont des ports differents) avec un waitForConnected => l'appareil détecte que je suis connecté. A ce niveau, l'état de mes sockets est connecté, valide etc... Tout a l'air correct.

    - write sur une socket avec l'utilisation de waitForBytesWritten. Le nombre d'octets retourné est correct mais l'appareil ne semble pas réagir.

    - lecture de la réponse sur une autre socket avec waitForReadyToRead => rien ne se passe, je lis une chaine vide (normalement le retour est quasi instantané).

    Ce code de test fonctionne bien quand je suis connecté au simulateur qui lui est codé en Qt.

    Y aurait il des particularités pour le transfert de messages vers du hardware ? Pour l'instant je fais juste du write avec un QByteArray en paramètre.

    Merci pour votre aide.

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    109
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 109
    Points : 55
    Points
    55
    Par défaut
    Trouvé. En fait le code Linux envoie un message de n+1 caractères où n est la longueur de la chaine de caractères. L'envoie du QByteArray n'envoyait que n caractères.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Problème de communication avec un usercontrol
    Par jbrasselet dans le forum ASP.NET
    Réponses: 2
    Dernier message: 28/01/2011, 14h10
  2. Problème de communication avec la carte SD
    Par burby dans le forum Débuter
    Réponses: 0
    Dernier message: 30/11/2009, 08h50
  3. Problème de communication avec Postfix
    Par capadona dans le forum Réseau
    Réponses: 2
    Dernier message: 13/08/2009, 09h39
  4. postfix : Problème de communication avec orange.fr
    Par DrDam dans le forum Administration système
    Réponses: 0
    Dernier message: 19/06/2009, 12h56
  5. Problème de communication avec un port série
    Par hélène2 dans le forum C#
    Réponses: 8
    Dernier message: 22/04/2009, 09h26

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