Bonjour,
Je dois envoyer une valeur enregistrée dans un qint16 via le port série.
Il faut par exemple que j'envoie la valeur décimale 5000.
Donc la valeur a envoyer est 0x1388 sur la liaison série. Pour envoyé cette valeur, j'utilise la librairie QextSerialPort. Elle nécéssite de mettre la donnée à envoyer dans un QbyteArray.
Je fais donc :
Dans la variable tmp j'ai bien le "1388".
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 QByteArray tmp = QByteArray().fill('0', 4); // Pour qu'il y ai 4 octets minimum tmp = QByteArray::number(5000 ,16);
Par contre quand j'envoie en faisant :
J'ai en réception :
Code : Sélectionner tout - Visualiser dans une fenêtre à part _extSerialPort->write(tmp);
Car en faite ça a envoyé les caractères ASCII de ma conversion et je ne vois pas dans quelle méthode taper pour palier ce problème.
Code : Sélectionner tout - Visualiser dans une fenêtre à part 0x31 0x33 0x38 0x38
Quelqu'un a une idée ? Merci.
Partager