begin process at 2012 02 14 00:16:43
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Visual Basic 6

 > 

Système

 > 

Périphériques

 > 

echanges port série


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

echanges port série

mercredi 27 juin 2007 à 14:51:35 | echanges port série

adri85

Bonjour,

Je cherche à récupérer les informations d'une station météo pro sans le logiciel fourni avec ( appli en VB6).
J'utlise le MScomm comme les exemples du site mais je n'arrive pas a envoyer une requete (hexa) à la station afin qu'elle m'envoie les données??

Merci de m'apporter un peu d'aide
voici mon code:

Private Sub Form_Load()

Form1.Caption = "App1"
With MSComm1 'configuration du port
.CommPort = 1 'On utilise le port COM1:
.Handshaking = 2 'RTS
.RThreshold = 1
.RTSEnable = True 'mieux pour le port COM:
.Settings = "9600,n,8,1"
.SThreshold = 1
.PortOpen = True 'ouverture du port
End With

Text1.Text = "attente"

Command1.Caption = "&Send"

End Sub

Private Sub MSComm1_OnComm()
Dim InBuff As String

Select Case MSComm1.CommEvent
' On effectue la gestion des erreurs (cf. le modèle ci-dessus)
' Ici, on gère en fait pas grand-chose, mais c'est pour illustrer la démarche ;)

'liste des erreurs possibles
Case comEventBreak 'On a reçu un signal d'interruption (Break)
Case comEventCDTO ' Timeout de la porteuse
Case comEventCTSTO ' Timeout du signal CTS (Clear To Send)
Case comEventDSRTO ' Timeout du signal de réception
Case comEventFrame ' Erreur de trame
Case comEventOverrun ' Des données ont été perdues
Case comEventRxOver ' Tampon de réception saturé
Case comEventRxParity ' Erreur de parité
Case comEventTxFull ' Tampon d'envoi saturé
Case comEventDCB ' Erreur de réception DCB (jamais vu)

'liste des événements possibles qui sont, eux, normaux
Case comEvCD 'Changement dans la broche CD (porteuse)
Case comEvCTS 'Changement dans broche CTS
Case comEvDSR 'Changement dans broche DSR (réception)
Case comEvRing 'Changement dans broche RING (sonnerie)

'Chouette! on a reçu des données :)
Case comEvReceive
      tampon = MSComm1.Input
      Call Traitement(tampon) 'traitement données

Case comEvSend ' il y a des caractères à envoyer

Case comEvEOF 'on a reçu le caractère EOF
End Select
End Sub

Sub Traitement(tampon As Variant)
'cette procédure sert à traiter l'information reçue dans le tampon
     Text1.SelStart = Len(Text1.Text)
     Text1.SelText = tampon 'ici, on affiche le résultat dans un champ de texte
End Sub
mercredi 27 juin 2007 à 19:18:44 | Re : echanges port série

jack

Administrateur CodeS-SourceS
Salut
Le paramétrage que tu utilises sous-entend que tu vas cabler tous les RTS-CTS ...
Le handshaking XonXoff est beaucoup plus simple et ne nécessite que 3 fils. A retravailler.

Tu dis que tu n'arrives pas à émettre une requète. Le code que tu nous montre ne s'occupe que de l'initialisation et de la réception.
Qu'as-tu fais pour émettre ?
Que dois-tu émettre ?
Qu'appelles tu une 'requète' ?

Pour info :
Emettre "A" équivaut à envoyer le code décimal ou hexa équivalent au code ascii associé : décimal 65 ou 41 hexa.
et peut s'écrire indifféremment : "A",  Chr$(65) ou Chr$("&h41")

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés
jeudi 28 juin 2007 à 10:05:35 | Re : echanges port série

adri85

Bonjour et merci,

Je n'ai pas mis tout le code en effet.
Dans un commandbutton  ( voir ligne Command1.Caption = "&Send" ),j'utilise MSComm1.Output = 05h.

Ce que j'entend par requete c'est une demande du programme a la station afin que celle-ci transmette. Je pense que la staion attends cette requete car MSComm1_OnComm() ne se déclenche jamais sinon.

@ +
jeudi 28 juin 2007 à 18:47:43 | Re : echanges port série

jack

Administrateur CodeS-SourceS
Re
Ok, donc ta syntaxe  MSComm1.output = 05h  est incorrecte. (05h n'est pas reconnu sous VB)
Comme je te l'ai dit, pour envoyer 5 hexa, il te suffit d'envoyer Chr$("&h05")


Cette discussion est classée dans : port, case, changement, mscomm1, tampon


Répondre à ce message

Sujets en rapport avec ce message

URGENT pb d'affichage recption port com [ par cliclic1234 ] je n'ariive pas afficher ce que je recois de mon port seriela chaine que je recois ' 12120kg 02' est variable en fonction du poidssi je veut l'affiche Afficher la donnée reçue via un port Com [ par basamir ] Bonjour,je suis un débutant en VB et je suis chargé de créer une application en VB qui permet d'afficher le poids d'une balance liée à un PC à travers Lire info du port com [ par vlef0186 ] Bonjour a tousVoila g un petit soucis pour lire les info d'une interface de 4 capteurs de temperatureje me suis renseigne sur le net et g trouver ca:P Lire info du port com [ par vlef0186 ] Bonjour a tousJ'ai une interface pour 4 capteur de temperature, et j'aimerai faire un prog vb pour les gerer. Je suis brancher sur le port com, et en pb reception trame [ par jerome57440 ] Bonjour,J'ai un petit probleme lorsque je receptionne une trame par le port serie.Lorsque je l'affiche dans une textbox j'ai 5 point d'interogation qu Scanpal2, probleme de recuperation d'informations [ par hbvb6 ] Bonjour j'ai un scanpal2 qui est lié a mon PC par un cable RS232je veux faire une application VB pour recuperer les informations de scanpal2 j'ai u communication VB6.0 et port série [ par melimeli1 ] j'ai téléchargé le programme d'émission et de réception ci dessous et j'ai fait la communication par un cable croisés mais malheureusement la connecti [Catégorie modifiée .Net -> VB6] Problème d'affichage de données d'un port com [ par mah00 ] Bonjour, J'ai une carte avec des interrupteurs communicant avec un port com. Je veux savoir ce qu'envoie cette carte quand j'appuie sur un des interr Code qui freeze excel et Vba (Problème) [ par choupinoob ] Bonjour à tous. Voila j'ai adapté un code permettant de récupérer les valeurs d'un port série pour m'en servir sur Excel. Malheureusement ce code, m


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,515 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales