1 pièce(s) jointe(s)
Lecture du port série en temps réel
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 :
Pièce jointe 222899
Mon code est classique :
Code:
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:
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