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 :

Contrôle clavier interface visual studio et arduino [Débutant]


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Etudiant
    Inscrit en
    Novembre 2014
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : Belgique

    Informations professionnelles :
    Activité : Etudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2014
    Messages : 13
    Par défaut Contrôle clavier interface visual studio et arduino
    Bonjour à tous, dans le cadre d'un projet arduino, j'aimerais faire une interface graphique pour contrôler ce projet.

    Pour mes tests, j'ai voulu contrôler l'allumage et l'extension d'une LED en appuyant sur les boutons que j'ai créés.
    Pour ça pas de soucis, tout fonctionne.

    Après ça, j'ai voulu contrôler le tout avec l'appui d'une touche de mon clavier, mais je bloque complètement.
    voici mon code arduino et visual si ça peut aider.
    Si quelqu'un a déjà fait ce genre de contrôle je suis preneur de conseils car je suis bloqué et je deviens fou

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
     
    Imports System.IO
    Imports System.IO.Ports
    Imports System.Threading
     
    Public Class Form1
     
        Shared _continue As Boolean
        Shared _serialPort As SerialPort
     
        Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
            SerialPort1.Close()
            SerialPort1.PortName = "com6"
            SerialPort1.BaudRate = 9600
            SerialPort1.DataBits = 8
            SerialPort1.Parity = Parity.None
            SerialPort1.StopBits = StopBits.One
            SerialPort1.Handshake = Handshake.None
            SerialPort1.Encoding = System.Text.Encoding.Default
        End Sub
     
        Private Sub btnOn_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnOn.Click
     
            SerialPort1.Open()
            SerialPort1.Write("a")
            SerialPort1.Close()
        End Sub
     
     
        Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
            SerialPort1.Open()
            SerialPort1.Write("b")
            SerialPort1.Close()
        End Sub
    End Class
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
     
     
    int led=6;    // led sur port6
    int val;
     
     
    void setup() 
    {
     
      Serial.begin(9600);   // INITIALISE l'interface serie à 9600
      pinMode (led,OUTPUT);  // broche 6 en sortie
      digitalWrite(led,HIGH);  // INITIALISE LED A L'ETAT coupé
     
     
    }
     
    void loop() {
     
     
     
     
     
      if( Serial.available() )       // vérifie si des données sont disponible pour la lecture
      {;}
        val = Serial.read();         // stocke la donnée reçu dans la variable "val"
     
      if( val == 'a' )              
     
      {
         digitalWrite(led,HIGH);  
      }
     
        if( val == 'b' )              
     
      {
         digitalWrite(led,LOW);  
      }
     
    }

  2. #2
    Membre très actif
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2007
    Messages
    871
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Février 2007
    Messages : 871
    Par défaut
    Salut,


    Tu en es ou ?
    Cela ne marche pas cote arduino, cote dontet ?

    T'es sur de ce if ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    if( Serial.available() )       // vérifie si des données sont disponible pour la lecture
      {;}

  3. #3
    Membre averti
    Homme Profil pro
    Etudiant
    Inscrit en
    Novembre 2014
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : Belgique

    Informations professionnelles :
    Activité : Etudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2014
    Messages : 13
    Par défaut
    Bonsoir,
    la partie code arduino est ok car j'arrive à communiquer avec mon interface visual mais seulement en cliquant sur le bouton, moi j'aimerais pouvoir faire l'action en appuyant sur la touche de mon clavier, mais je ne comprend pas comment faire coté visual.

  4. #4
    Membre très actif
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2007
    Messages
    871
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Février 2007
    Messages : 871
    Par défaut
    Ca doit etre l'evenemtn keydown qure tu cherches:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
        Private Sub Form1_KeyDown(ByVal sender As Object, ByVal e As KeyEventArgs) Handles MyBase.KeyDown
            If e.Control AndAlso e.KeyCode = Keys.A Then
     
                SerialPort1.Open()
                SerialPort1.Write("a")
                SerialPort1.Close()
            End If
        End Sub

  5. #5
    Membre averti
    Homme Profil pro
    Etudiant
    Inscrit en
    Novembre 2014
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : Belgique

    Informations professionnelles :
    Activité : Etudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2014
    Messages : 13
    Par défaut
    j'avais déjà été avec cet événement mais rien n'y fais, que ce soit avec ta version ou la mienne rien ne se passe.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Private Sub button1_KeyDown(ByVal sender As Object, ByVal e As KeyEventArgs) Handles MyBase.KeyDown
            If e.Control AndAlso e.KeyCode = Keys.A Then
                SerialPort1.Open()
                SerialPort1.Write("a")
                SerialPort1.Close()
            End If
        End Sub
    End Class

  6. #6
    Expert éminent Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 197
    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 197
    Par défaut
    mettre keyupreview à true sur le form, et voir s'il y a un event previewkeydown

    par défaut c'est le control ayant le focus qui recoit le keydown
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

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

Discussions similaires

  1. [Débutant] Importer des données Excel sur une interface Visual Studio
    Par Nicoow44 dans le forum Visual Studio
    Réponses: 0
    Dernier message: 07/07/2014, 11h48
  2. Raccourci clavier dans Visual Studio 2010
    Par dvdavid dans le forum Visual Studio
    Réponses: 7
    Dernier message: 03/08/2011, 18h07
  3. Réponses: 4
    Dernier message: 01/07/2009, 19h20
  4. Supprimer TOUS les raccourcis clavier dans Visual Studio
    Par jo_dalton dans le forum Visual Studio Team System
    Réponses: 5
    Dernier message: 05/08/2008, 00h01

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