Voila je réalise un programe qui recupere des donnés par le port série . Sur le port série une epprom type DS1985 et connécte, doc en piéce jointe.
Il est connecter par l'intermaidiaire d'un port RJ11-RS232 DS9097U, doc en piéce jointe.
La memoire est elle relié au connecteur grace a un DS1402D-DR8, doc en piéce jointe.
Mais le prombleme n'est pas la. Le probleme et dans le protocole de lecture et d'écriture sur la ram je n'arrive pas a envoyer des donnés sur TX ou a recevoir les Donné de RX par le port serie avec VB. Donc je suis un peu perdu.
Re : Probleme de dialogue entre VB et le port serie
peut etre ca
dans vb rajout de mscomm32.ocx dans system32 et tant que composant
MSComm, contrôle, exemple
Cet exemple très simple montre comment effectuer des communications élémentaires par l'intermédiaire d'un modem :
Private Sub Form_Load ()
' Tampon devant contenir la chaîne d'entrée
Dim Instring As String
' Utilise COM1.
MSComm1.CommPort = 1
' 9600 bauds, pas de parité, 8 bits de données et 1 bit d'arrêt.
MSComm1.Settings = "9600,N,8,1"
' Indique au contrôle qu'il doit lire la totalité
' du tampon si la propriété Input est utilisée.
MSComm1.InputLen = 0
' Ouvre le port.
MSComm1.PortOpen = True
' Envoie la commande Attention au modem.
MSComm1.Output = "ATV1Q0" & Chr$(13) ' Vérifie que
'le modem répond "OK"
' Attend le retour des données vers le port série.
Do
DoEvents
Buffer$ = Buffer$ & MSComm1.Input
Loop Until InStr(Buffer$, "OK" & vbCRLF)
' Lit les données composant la réponse "OK" au niveau du port série.
' Ferme le port série.
MSComm1.PortOpen = False
End Sub
Note Le contrôle MSComm peut utiliser la méthode d'interrogation ou une méthode événementielle pour extraire les données qui arrivent sur le port de communication. Cet exemple très simple illustre l'utilisation de la méthode d'interrogation. Pour obtenir un exemple de la méthode événementielle, voir l'aide relative à l'événement OnComm.
21/04/2006 - 14h18
marquesni
Date d'inscription
avril 2006
Âge
27
Messages
17
Re : Probleme de dialogue entre VB et le port serie
Merci pour ces premier renseignement sais tu comment marche la méthode événementielle
21/04/2006 - 14h24
cricri
Date d'inscription
juillet 2004
Messages
922
Re : Probleme de dialogue entre VB et le port serie
le plus dur c est d initialiser le bon port pour avoir le serie je connais pas trop
OnComm, événement
L'événement OnComm est généré chaque fois que la valeur de la propriété CommEvent est modifiée pour indiquer qu'une erreur ou un événement de communication s'est produit.
Syntaxe
Private Sub object_OnComm ()
La syntaxe de l'événement OnComm comprend les éléments suivants :
Élément Description
object Expression d'objet qui prend la valeur d'un objet figurant dans la rubrique Application.
Remarques
La propriété CommEvent contient le code numérique de l'erreur ou de l'événement qui a généré l'événement OnComm. Notez que si la valeur 0 est attribuée aux propriétés RThreshold ou SThreshold, la récupération des événements comEvReceive et comEvSend, respectivement, est désactivée.
21/04/2006 - 16h21
umfred
Date d'inscription
mars 2006
Âge
34
Messages
1 344
Re : Probleme de dialogue entre VB et le port serie
Sinon je vient de trouver ça dans une note d'application du ds2480B (le driver série->1-wire du la documentation du module DS9097U:
A ‘C’ code implementation of this application note using the Microsoft Windows 32-bit operating system
RS232 serial port with a DS9097U adapter as the host can be downloaded from the following link: ftp://ftp.dalsemi.com/pub/auto_id/public/an192.zip.
This ‘C’ code implementation is a simplified version of the one provided in the 1-Wire Public Domain
kit. The 1-Wire Public Domain kit also contains device specific modules and examples and can be found
at the following link: http://www.ibutton.com/software/1wire/wirekit.html.
dans le "an192.zip", il y a un executable ( à tester ).
Sinon pour les évenements OnComm, je pense que l'évènement le plus utile est comEvReceive qui arrivent quand le buffer de réception est plein.
exemple d'utilisation:
L'exemple suivant montre comment traiter les erreurs et les événements de communication. Vous pouvez insérer du code pour gérer une erreur ou un événement particulier, à la suite de l'instruction Case correspondante.
Private Sub MSComm_OnComm ()
Select Case MSComm1.CommEvent
' Traite chaque événement ou erreur en insérant du
' code sous chaque instruction Case
' Erreurs
Case comEventBreak ' Un signal d'arrêt a été reçu.
Case comEventCDTO ' Erreur de délai d'attente
' Détection de porteuse.
Case comEventCTSTO ' Erreur de délai d'attente
' Prêt à émettre.
Case comEventDSRTO ' Erreur de délai d'attente
' Modem prêt.
Case comEventFrame ' Erreur de trame
Case comEventOverrun ' Données perdues.
Case comEventRxOver ' Dépassement de la
' capacité du tampon de
' réception.
Case comEventRxParity ' Erreur de parité.
Case comEventTxFull ' Tampon de transmission
' plein.
Case comEventDCB ' Erreur inattendue lors de
' l'extraction du bloc de
' contrôle de périphérique]
' Événements
Case comEvCD ' Modification dans la ligne
' Détection de porteuse.
Case comEvCTS ' Modification dans la ligne Prêt
' à émettre.
Case comEvDSR ' Modification dans la ligne
' Modem prêt.
Case comEvRing ' Modification dans l'Indicateur
' d'appel.
Case comEvReceive ' Nombre de caractères indiqué
' par la propriété RThreshold
' reçus.
Case comEvSend ' Nombre de caractères indiqué
' par la propriété SThreshold
' dans le tampon de transmission.
Case comEvEof ' Caractère de fin de fichier
' trouvé dans le flux en entrée
End Select
End Sub