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 :

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);
Dans la variable tmp j'ai bien le "1388".

Par contre quand j'envoie en faisant :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
_extSerialPort->write(tmp);
J'ai en réception :

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.

Quelqu'un a une idée ? Merci.