Bonjour,

Je suis en train de réaliser un projet utilisant le port série pour récupérer des trames sur un convertisseur CAN/USB.
Les trames que je récupérer ressemble a ceci :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
Z\n\r
T00000001402542607\n\r
Dans mon programme j'utilise le signal ReadyRead() pour lancer un slot de lecture que voici :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
 
void CMesure::Lire()
{
    int bytesRead=0;
    QByteArray Data;
    char buffer[1024];
    bytesRead=lePort->peek(buffer,1024);
    for(int i=0;i<bytesRead;i++)
        Data+=buffer[i];
    buffer[bytesRead]='\0';
    qDebug()<<Data;
}
Mon soucis c'est que je ne reçois que la première partie de la trame. La réception se stoppe après le premier \n\r
Je récupére donc uniquement Z.

J'ai tenter de nombreuses fonction, Read, ReadAll,ReadLine ou encore lecture en deux fois.. Rien n'y fait je ne parviens pas a lire quoi que ce soit.

Quelqu'un a déjà rencontrer ce soucis ?