Récupérer l'état d'un capteur bouton

Signaler
Messages postés
4
Date d'inscription
mardi 3 février 2009
Statut
Membre
Dernière intervention
25 février 2009
-
Messages postés
4
Date d'inscription
mardi 3 février 2009
Statut
Membre
Dernière intervention
25 février 2009
-
Bonsoir,

Concernant un projet de BAC (PPE), je dois récupéré l'état d'un capteur bouton à partir du langage VB.NET.

J'ai dans un premier temps cherché avec la liaison série, comment lire, concernant le cablage mais je n'y arrive pas !

Dans un premier temps, la liaison série me correspond-t-elle ? USB c'est mieux ? Autre chose ?
Dans un second temps, je souhaite utilisé pas mal d'interrupteurs, donc comment réalisé cela, j'ai pensé aussi au binaire...

J'attends vos réponses :p

Merci d'avance !

5 réponses

Messages postés
14008
Date d'inscription
samedi 29 décembre 2001
Statut
Modérateur
Dernière intervention
28 août 2015
74
Salut
"capteur bouton" : Tu veux dire "bouton poussoir" = état 0 ou 1 ?

USB :
Non, il te faudrait un protocole d'échange, donc de l'électobique entre ton bouton et le PC

Liaison série :
Pourquoi pas : Parmi les informations disponibles sur une DB9, il y a des entrées tout-ou-rien.
En tapant simplement "cablage DB9" sur mon moteur de recherche favori, je suis tombé sur ce http://www.itechno.com/download/doc/fr/SupportXVoies_fr.pdf
Il ne reste plus qu'à récupérer l'état du signal que tu auras choisi (sauf le Received Data, bien sur) pour afficher son état.
--> Insère un objet "SerialPort" sur ta forme et dans le code, par exemple pour le "Data Set Ready" :
   Dim EtatBouton As Boolean = SerialPort1.DsrHolding

Sinon, il y a aussi le clic de souris :
Si tu bricoles une vieille souris et raccord ton contact sur le clic-droit ou gauche, tu peux le détecter facilement dans le code

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

<hr />Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
Messages postés
4
Date d'inscription
mardi 3 février 2009
Statut
Membre
Dernière intervention
25 février 2009

Oui je dis bien Bonton poussoir !

USB : Un exemple de protocole d'échange ? Coté cablage ou programmation ?

Liaison série : Je vais tester cela ce soir ou demain aprem ! J'avais déjà vu ces tableaux là mais ne savait pas du tout comment m'y prendre pour cablage...

J'avais déjà vu aussi des codes VB.NEt sur le port série, avec SerialPort !

Pour la vieille souris, je pense pas car il y a une partir mécanique à côté..

Combien de capteurs je peux utiliser par liaison ?
Je pense en utilisé environ 10 ... j'ai d'autres informations à récupérer...

Merci en tout cas !
Messages postés
14008
Date d'inscription
samedi 29 décembre 2001
Statut
Modérateur
Dernière intervention
28 août 2015
74
Re
USB : Aucune idée
Port série : Non, tu n'as que 3 entrées possibles : CTS, DSR et DCD et pas vérifier si chaque signal était lisible par le composant PortSerial.
Si tu en as une dizaine, va falloir bidouiller un multiplexeur, hors de mes compétences.

Sinon, si ton PC en est équipé, il y a le port parallèle avec 8 entrées / sorties, mais sous XP et Vista, il est géré par un buffer système, difficile d'accès. Pas d'expérience non plus.

Tout cela relève plus de l'électronique que de la programmation.

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

<hr />Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
Messages postés
4
Date d'inscription
mardi 3 février 2009
Statut
Membre
Dernière intervention
25 février 2009

Et par entrées, pas possible de renvoyer plus que un bit de donnée ?

Sinon comment le cabler ! une broche du bouton sur le SDR (ou CTS, DCD) et l'autre broche ?

Je regarderai pour le port parallèle car j'en possède un !
Messages postés
4
Date d'inscription
mardi 3 février 2009
Statut
Membre
Dernière intervention
25 février 2009

Je suis en train d'essayer là et je ne réussi a trouver aucun signal quand j'appui sur le bouton :(

Voici mon code, je pense correct ! Il tourne dans le vide et me signl l'état de la sortie ...
        _serialport = New SerialPort()
        _serialport.ReadTimeout = 500
        _serialport.PortName = "COM1"

        Dim statut As String
        statut = True
        Dim Rts As Boolean

        While (statut)
            Rts = _serialport.RtsEnable

            Console.WriteLine("   {0}", Rts)
        End While

Quelquechose de pas bon ? Concernant le cablage, j'ai cabler le bouton entre CTS et RTS !