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 :

Envoi "short" avec serialport


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Octobre 2005
    Messages
    71
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 71
    Par défaut Envoi "short" avec serialport
    Bonjour à tous,
    Je souhaite envoyer une serie de variable "short" donc 16 bits chacune via la classe serialport.
    Mon problème c'est que si je fais :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    dim short1 = 3000 as short 
    SerialPort1.WriteLine(EvOn)
    Il envoie 4 octets 3, 0, 0 et 0
    Comment le faire pour envoyer ma variable sous forme de 2 octets ?

  2. #2
    Expert éminent Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 204
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 204
    Par défaut
    envoyer des octets plutot qu'un string
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  3. #3
    Membre confirmé
    Inscrit en
    Octobre 2005
    Messages
    71
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 71
    Par défaut
    Citation Envoyé par Pol63 Voir le message
    envoyer des octets plutot qu'un string
    SerialPort1.Write(EvOn)

    Ca me fait la meme choe, ca envoie 4 octets.
    Il faudrait que je decoupe ma variable en 2 octets "brut".
    Mais je ne sais pas comment faire ...

  4. #4
    Expert éminent Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 204
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 204
    Par défaut
    bitconverter peut etre
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  5. #5
    Membre confirmé
    Inscrit en
    Octobre 2005
    Messages
    71
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 71
    Par défaut
    Citation Envoyé par Pol63 Voir le message
    bitconverter peut etre
    Ah oui pas mal ! On avance


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    dim tableau(20) as byte 
     
    tableau(0) = BitConverter.GetBytes(EvOn)
    J'ai une erreur sur tableau(0) :

    Erreur 1 Une valeur de type 'Tableau à 1 dimension(s) de Byte' ne peut pas être convertie en 'Byte'. C:\Users\Administrator\Documents\ArduGrow\Software\placOS\placOS\mainform.vb 138 26 placOS
    Je sais que BitConverter.GetBytes(EvOn) me retourne 2 octets et que tableau(0) m'en retourne 1 seul donc ca coince, comment indiquer 2 octets d'un tableau ?

  6. #6
    Expert éminent Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 204
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 204
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    dim tableau() as byte 
     
    tableau = BitConverter.GetBytes(EvOn)

    le tableau sera dimensionné à la taille qu'il faut automatiquement
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

+ Répondre à la discussion
Cette discussion est résolue.

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