Bonjour à tous,

Je commence à utiliser le les fonctions concernant le port série de QT.
Je souhaite afficher les données que je reçois dans un QTPlaintText mais cela me pose des problèmes.

En effet, sur mon port série j'affiche le message suivant : "Bonjour le numéro est ?" où ? est un nombre qui s'incrémente à chaque nouvel envoi de ce message. Ceci n'est que pour le test de mon application QT.

Mais quand j'affiche ce que j'ai reçu cela se mélange comme on peut le voir sur la capture d'écran suivante :

Nom : Sortie.png
Affichages : 936
Taille : 43,1 Ko

Mon code est classique :

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
 
serial = new QSerialPort(this);
serial->setPortName("COM6");
serial->setBaudRate(115200);
serial->setDataBits(QSerialPort::Data8);
serial->setParity(QSerialPort::NoParity);
serial->setStopBits(QSerialPort::OneStop);
serial->setFlowControl(QSerialPort::NoFlowControl);
serial->setReadBufferSize(20000);  // J'ai essayé plusieurs valeur dont 0 mais cela ne change rien
 
if (serial->open(QIODevice::ReadWrite))
{
    connect(serial,SIGNAL(readyRead()),this,SLOT(serialReceived()));
    qDebug("Connection OK");
}
else
{
    qDebug("Connection Error");
}
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
 
void MainWindow::serialReceived(){
    Editors[0].editor->appendPlainText(serial->readAll());
}
Je ne vois pas comment résoudre ce problème. Cela est-il seulement un problème d'affichage ?

J'espère que vous pourrez m'aider.

Merci d'avance

Cordialement