Utiliser une carte relai USB

Signaler
Messages postés
48
Date d'inscription
lundi 11 février 2008
Statut
Membre
Dernière intervention
22 mai 2010
-
Messages postés
48
Date d'inscription
lundi 11 février 2008
Statut
Membre
Dernière intervention
22 mai 2010
-
Bonjour,

Je cherche de l'aide car j'ai acheter depuis peu une carte comportant 8 relais et pour faire fonctionner ces derniers il faut brancher la carte d'interface sur un port usb. J'ai un bout de code sous VB6 fournit avec la documentation de la carte. Mais travaillant sous Visual Studio Express je n'arrive pas à utiliser le code. J'ignore si je doit également intégrer la DLL. D'aprés ce que j'ai compris la carte simule un port Serie (COM) et le code donné dans la doc et le suivant :

Private Sub cmdOff_Click()
With MSComm1
'make sure the serial port is open
If .PortOpen False Then .PortOpen True
'send the data
.Output = Chr$(255)
.Output = Chr$(1)
.Output = Chr$(0)
End With 'MSComm1
End Sub

Private Sub cmdOn_Click()
With MSComm1
'make sure the serial port is open
If .PortOpen False Then .PortOpen True
'send the data
.Output = Chr$(255)
.Output = Chr$(1)
.Output = Chr$(1)
End With 'MSComm1
End Sub


Si quelqu'un pouvait m'orienter pour me permettre de réécrire le code, je lui serais trés reconnaissant.

D'avance merci.

Cordialement

4 réponses

Messages postés
7741
Date d'inscription
mercredi 1 septembre 2004
Statut
Membre
Dernière intervention
24 septembre 2014
37
Ce qui doit te poser problème est l'objet MSCOMM1, je pense. Ce contrôle est utiliser en VB6 pour s'interfacer avec le port série.

Si en .Net on peut aussi l'utiliser, il vaut mieux utiliser le contrôle SerialPort.


Pour ce qui est d'integrer la dll, il faut regarder la doc. Mais, à priori si tu passe par un port série, tu n'as pas de dll à intégrer dans ton programme.

Il faut bien évidemment installer les drivers de ta carte relais, pour que le port série correspondant soit créé.

[i][b]---- Sevyc64 (alias Casy) ----
[hr]# LE PARTAGE EST NOTRE FORCE #/b/i
Messages postés
48
Date d'inscription
lundi 11 février 2008
Statut
Membre
Dernière intervention
22 mai 2010

Bonsoir,

Donc si je comprend bien cela devrait donné :

Private Sub cmdOff_Click()
With SerialPort1
'make sure the serial port is open
If .PortOpen False Then .PortOpen True
'send the data
.Output = Chr$(255)
.Output = Chr$(1)
.Output = Chr$(0)
End With 'SerialPort1
End Sub

Private Sub cmdOn_Click()
With SerialPort1
'make sure the serial port is open
If .PortOpen False Then .PortOpen True
'send the data
.Output = Chr$(255)
.Output = Chr$(1)
.Output = Chr$(1)
End With 'SerialPort1
End Sub

Merci de confirmer. Si cela s'avère correct je vous remercie infiniment car sa m'enlève une énorme épine du pied.

Cordialement
Messages postés
7741
Date d'inscription
mercredi 1 septembre 2004
Statut
Membre
Dernière intervention
24 septembre 2014
37
Changer l'objet ne suffit pas, il faut bien évidement aussi adapter le code.
Dans le cas présent le code ressemblera plus à ceci :

	Private Sub cmdOn_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdOn.Click
With SerialPort1
'make sure the serial port is open
If .IsOpen = False Then .Open()
'send the data
.Write(Chr(255))
.Write(Chr(1))
.Write(Chr(1))
End With 'SerialPort1
End Sub

Private Sub cmdOff_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdOff.Click
With SerialPort1
'make sure the serial port is open
If .IsOpen = False Then .Open()
'send the data
.Write(Chr(255))
.Write(Chr(1))
.Write(Chr(0))
End With 'SerialPort1 
End Sub



[i][b]---- Sevyc64 (alias Casy) ----
[hr]# LE PARTAGE EST NOTRE FORCE #/b/i
Messages postés
48
Date d'inscription
lundi 11 février 2008
Statut
Membre
Dernière intervention
22 mai 2010

Bonsoir,

Merci encore pour votre aide, dés que j'ai un moment je test sa et je vous redit quoi. Si cela marche c'est vraiment le top ^^.

Cordialement