Communication série/USB [VB 2010 Express]

lilight Messages postés 11 Date d'inscription lundi 9 avril 2012 Statut Membre Dernière intervention 28 avril 2012 - 9 avril 2012 à 20:17
NHenry Messages postés 15037 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 6 février 2023 - 17 avril 2012 à 09:17
Bonjour,

Je cherche à réaliser un programme me permettant de récupérer les données d'un multimètre sur un PC à l'aide de VB 2010 express étant débutante sur VB j'éprouve quelque difficultés...
J'ai téléchargé MSCOMM32.ocx mais je ne parviens pas à l'intégrer à VB.
J'ai pour contrainte une liaison série/USB puisque le PC ne dispose pas de port série...
Après de nombreuses recherches je ne parvient pas à résoudre mes problèmes.
Quelqu'un pourrait t'il me donner des exemples de programmes permettant la communication série/USB ou m’aiguiller sur la manière d'y parvenir.

Merci d'avance.

10 réponses

NHenry Messages postés 15037 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 6 février 2023 156
9 avril 2012 à 20:38
Bonjour,

Si tu as un adaptateur USB/RS232, il faut ouvrir le port COM virtuel menant vers l'adaptateur.
Pour voir le port COM, je pense qu'il faut aller voir dans le gestionnaire de périphériques.

---------------------------------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS, celui-ci pour bien poser votre question ou encore celui-ci pour les PFE et autres exercices[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : )
[*]En VB.NET pensez à activer Option Explicit et Option Strict (propriété du projet) et à retirer l'import automatique de l'espace de nom Microsoft.VisualVasic (onglet Références dans les propriétés du projet).
[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés./list
---
0
lilight Messages postés 11 Date d'inscription lundi 9 avril 2012 Statut Membre Dernière intervention 28 avril 2012 1
9 avril 2012 à 20:47
Tout d'abord merci pour votre réponse.

Je dispose d'un adaptateur USB/RS232 cependant je ne sais pas comment ouvrir les ports virtuels
0
NHenry Messages postés 15037 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 6 février 2023 156
9 avril 2012 à 22:23
Bonjour,

En .NET, il y a Io.Ports.SerialPort pour les ports COM.
Sinon, il te faut le numéro de port généré, quels numéros as-tu essayés ?
Quel montage as-tu mis en face pour tester ?

---------------------------------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS, celui-ci pour bien poser votre question ou encore celui-ci pour les PFE et autres exercices[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : )
[*]En VB.NET pensez à activer Option Explicit et Option Strict (propriété du projet) et à retirer l'import automatique de l'espace de nom Microsoft.VisualVasic (onglet Références dans les propriétés du projet).
[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés./list
---
0
lilight Messages postés 11 Date d'inscription lundi 9 avril 2012 Statut Membre Dernière intervention 28 avril 2012 1
10 avril 2012 à 10:32
J'ai fait des tests de connections sur les ports mais aucun n'est détecté...
Le PC est directement connecter au multimetre via un cable série/USB.
Auriez vous un exemple de programme utilisant les ports série afin que je puisse comprendre le fonctionnement ?
De plus une autre contrainte se présente est-il pratique de programmer en SCPI avec VB 2010 ?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
NHenry Messages postés 15037 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 6 février 2023 156
10 avril 2012 à 12:49
Bonjour,

"mais aucun n'est détecté", comment as-tu testé ? (Envoi de trame, boite à LED , ... ou erreur (laquelle ? ))

Dsl, mais je n'ai pas vraiment de programme en stock à ce sujet.

---------------------------------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS, celui-ci pour bien poser votre question ou encore celui-ci pour les PFE et autres exercices[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : )
[*]En VB.NET pensez à activer Option Explicit et Option Strict (propriété du projet) et à retirer l'import automatique de l'espace de nom Microsoft.VisualVasic (onglet Références dans les propriétés du projet).
[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés./list
---
0
Genildf Messages postés 272 Date d'inscription lundi 12 janvier 2009 Statut Membre Dernière intervention 30 décembre 2015 1
11 avril 2012 à 15:37
pour verifier si cela fonctionne bien tout multimetre a un systeme de communication une sorte de ping qui lui est propre

pour ton test tu devrai faire
 
Dim ENQ = chr(5)

  SerialPort1.Open()
        SerialPort1.Write(ENQ)


Normalement sur l'evenement de retour ton multimetre devrai te renvoyer un ACK qui a normalement comme valeur (chr(6))

verifie egalement les bit vitesse et paritée du port com
0
lilight Messages postés 11 Date d'inscription lundi 9 avril 2012 Statut Membre Dernière intervention 28 avril 2012 1
14 avril 2012 à 15:09
Merci pour vos réponses.
J'ai finalement abandonné VB pour la communication rs232...
J'arrive désormais à le faire fonctionner grâce à l'hyper terminal, je cherche maintenant une manière d'ouvrir l'hyper terminal et d'y écrire automatiquement via VB.
Quelqu'un aurait une idée ?
0
NHenry Messages postés 15037 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 6 février 2023 156
14 avril 2012 à 15:16
Bonjour,

Oui, System.Serial.IO.Ports.SerialPort.

---------------------------------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS, celui-ci pour bien poser votre question ou encore celui-ci pour les PFE et autres exercices[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : )
[*]En VB.NET pensez à activer Option Explicit et Option Strict (propriété du projet) et à retirer l'import automatique de l'espace de nom Microsoft.VisualVasic (onglet Références dans les propriétés du projet).
[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés./list
---
0
lilight Messages postés 11 Date d'inscription lundi 9 avril 2012 Statut Membre Dernière intervention 28 avril 2012 1
16 avril 2012 à 12:56
System.Serial.IO.Ports.SerialPort ne fonctionne pas
ereur : 'Serial' n'est pas un membre de 'system'

Je cherche à écrire automatiquement dans une fenetre (Hyperterminal par exemple), existe t'il des fonctions qui permettent d'écrire de cette manière ?
0
NHenry Messages postés 15037 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 6 février 2023 156
17 avril 2012 à 09:17
Bonjour,

Cette classe accède au port COM, si tu n'y arrives pas, il faut regarder tout les exemples dispo sur le net.
http://msdn.microsoft.com/fr-fr/library/system.io.ports.serialport.aspx

0
Rejoignez-nous