Convertir des caractères recus sur port série

cs_JoSyl Messages postés 9 Date d'inscription mercredi 4 juin 2008 Statut Membre Dernière intervention 19 avril 2010 - 30 avril 2009 à 03:04
cs_JoSyl Messages postés 9 Date d'inscription mercredi 4 juin 2008 Statut Membre Dernière intervention 19 avril 2010 - 6 mai 2009 à 03:27
Bonjour,

J'ai fais des recherches, mais je n'ai pas trouvé ce que je voulais alors voici ma question :

Je recois une série de caratères sur un port série (COM1) et je voudrais les "décoder ou convertir" en String pour pouvoir les traiter dans mon application.

Voici un exemple des données recus :

9 �2;kÄ�3;8�1;AÆ�1;�1;ð�1;�2;�2;�1;Ú�3;�4;�3;¹>(9 �2;kÄ�3;8�1;AÆ�1;�1;ð�1;�2;�2;�1;Ú�3;�4;�3;¹>(9 �2;kÄ�3;8�1;AÆ�1;�1;ð�1;�2;�2;�1;Ú�3;�4;�3;¹>(R

Avant d'aller plus loin... j'aimerais avoir votre avis. S'agit t'il de UTF8 ? qu'est-ce que c'est selon vous ? Comment le convertir en caractères lisible ? Le résultat devrait inclure une série de nombre entier (et autre caractères ?)....  du genre : *1808006991 23 6 303 146 14 271 1070*Ok 278 7 1 3 1 1 244 128.

Après avoir reçus une réponse... je vais pouvoir m'attaquer au code.

Merci d'avance pour vos idées !

4 réponses

Bacterius Messages postés 3792 Date d'inscription samedi 22 décembre 2007 Statut Membre Dernière intervention 3 juin 2016 10
30 avril 2009 à 17:21
Si c'était de l'ASCII (8 bits) (en supposant qu'il t'envoie des caractères lisibles, genre "Salut"), on pourrait le lire directement.
Il y a plusieurs possibilités :
- UTF8. Ceci est impossible sur l'exemple car il comporte 73 caractères. Sachant que l'UTF8 code chaque caractère sur 16 bits (2 octets), le nombre de caractères devrait être pair.
- Texte codé. Pourquoi pas, sais-tu exactement ce que ton port t'envoie ?
- Autre forme de texte.

Cordialement, Bacterius !
0
cs_JoSyl Messages postés 9 Date d'inscription mercredi 4 juin 2008 Statut Membre Dernière intervention 19 avril 2010
4 mai 2009 à 13:18
Salut Bacterius,

Le texte qu'il m'envoie est supposé être de nombre entiers (des température, voltage etc..). (ex: *1808006991 23 6 303 146 14 271 1070*Ok 278 7 1 3 1 1 244 128)

Est-ce que tu as une idée, des pistes à me donner pour réussir à le décoder ? Jusqu'à maintenant, je n'ai pas trouvé... je regarde pour un logiciel de "décodage"... tu en connais un ?

Merci à l'avance !
0
Bacterius Messages postés 3792 Date d'inscription samedi 22 décembre 2007 Statut Membre Dernière intervention 3 juin 2016 10
4 mai 2009 à 17:56
Essaye déjà de te renseigner sur comment il est codé avant de penser à le décoder :p Genre va demander au fabricant de l'"objet" qui t'envoie ces mystérieux messages ?

Cordialement, Bacterius !
0
cs_JoSyl Messages postés 9 Date d'inscription mercredi 4 juin 2008 Statut Membre Dernière intervention 19 avril 2010
6 mai 2009 à 03:27
Bonne idée ! J'vais essayer d'en savoir plus et je te reviens avec plus d'infos, s'il y a lieu !

Merci,

PS: L'object est une sonde de température/tension hydrique sans fils, qui émet à une base reliée à l'ordinateur par le port série. Les anciens modèles envoient des strings (*1808006991 23 6 303 146 14 271 1070*Ok 278 7 1 3 1 1 244 128) , facile à utiliser, mais les nouveaux modèles envoient plutot le texte mystère...
0
Rejoignez-nous