IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB.NET Discussion :

Problème avec sérialport


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2010
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2010
    Messages : 44
    Par défaut Problème avec sérialport
    Bonjour

    J'utilise le composant SERIALPORT de Microsoft Visual basic 2008 express pour lire les données du port série.
    Le problème se situe à la lecture des données: les données supérieures à &h7F (&h80 et plus) sont systématiquement remplacées par &h3F.
    J'ai fait les test avec entrée et sortie du port série reliée, à différentes vitesses, rien n'y fait!!
    Avec vb6 et MSComm, il n'y avait pas ce pb.
    Quelqu'un aurait-il une solution à ce pb?
    Voici le code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    t = (Me.SerialPort1.ReadExisting)
    ou bien

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Dim nb_octet As Integer = SerialPort1.BytesToRead 
            Dim trame(nb_octet - 1) As Byte 
            SerialPort1.Read(trame, 0, nb_octet) 'on lit le port
            t = System.Text.Encoding.ASCII.GetString(trame) ' on récupère les données au format ASCII
    Merci pour votre aide

  2. #2
    Membre éprouvé
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Avril 2006
    Messages
    1 627
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 627
    Par défaut
    Ca me semble logique, ASCII code les caractères de 0 à 127, et 0x7F représente la valeur 127. Donc les caractères au dessus ne sont pas intelligibles.

    Utilise un autre encoding
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Encoding.GetEncoding("ISO_8859-1")GetString(); //latin 1
    //ou
    Encoding.GetEncoding("ISO_8859-15").GetString() //Latin 9

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2010
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2010
    Messages : 44
    Par défaut
    Merci pour cette réponse.
    Effectivement en encodant différemment, j'ai correctement les codes au-dessus de &h7F.
    Cependant, je voudrais que serialport me restitue tels quels les octets reçus par Rx SANS LES MODIFIER (de 0 à &HFF), sous forme de chaîne.

  4. #4
    Membre éprouvé
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Avril 2006
    Messages
    1 627
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 627
    Par défaut
    Sans les modifier sous forme de chaine ? Je n'ai pas saisi.
    Par exemple, pour FF, tu attends quel caractère ? J'ai le sentiment que ça dépend de l'Encoding choisi, mais je préfère être sûr qu'on parle du même truc

Discussions similaires

  1. VC++ Direct3D8, problème avec LPD3DXFONT et LPD3DTEXTURE8
    Par Magus (Dave) dans le forum DirectX
    Réponses: 3
    Dernier message: 03/08/2002, 11h10
  2. Problème avec [b]struct[/b]
    Par Bouziane Abderraouf dans le forum CORBA
    Réponses: 2
    Dernier message: 17/07/2002, 10h25
  3. Problème avec le type 'Corba::Any_out'
    Par Steven dans le forum CORBA
    Réponses: 2
    Dernier message: 14/07/2002, 18h48
  4. Problème avec la mémoire virtuelle
    Par Anonymous dans le forum CORBA
    Réponses: 13
    Dernier message: 16/04/2002, 16h10

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo