Lecture sur port com

cs_SEB73460 Messages postés 271 Date d'inscription vendredi 15 avril 2005 Statut Membre Dernière intervention 29 novembre 2022 - 3 janv. 2008 à 18:24
NHenry Messages postés 15112 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 13 avril 2024 - 8 janv. 2008 à 09:05
Bonsoir à tous,

J'ai ecrit un bout de code pour envoyer des données sur la broche tx de mon port serie
avec  SerialPort.Write(TextBox1.Text)

je souhaiterai maintenant faire l'inverse recevoir des données sur ma broche RX et les affichées dans un textbox

je pensais faire : Serialport.read(textbox2) Est-ce correct ?

Est-ce que je dois redeterminer les parametres de mon port pour la reception ?

Merci pour votre aide

A+

10 réponses

cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
3 janv. 2008 à 19:02
Je dirais qu'à priori tout est correct.

Rien à redéterminer au niveau du port, à partir du moment ou les paramètres de communications avec le périphérique ne changent pas.

Avant de lire, il faudra peut-etre juste vérifier que des octets ont été reçus, ou que, si tu sais combien d'octets tu attend, vérifier qu'ils sont bien tous arrivés avec la méthode BytesToRead.
La transimission prennant un certain temps, ton programme va certainement etre pret à lire avant que la totalité des données soient reçues, il faudra soit attendre, soit lire les données petit bout par petit bout.

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #    http://aide-office-vba.monforum.com/index.php
0
cs_SEB73460 Messages postés 271 Date d'inscription vendredi 15 avril 2005 Statut Membre Dernière intervention 29 novembre 2022
3 janv. 2008 à 19:23
Merci Casy pour ta réponse

Pour me faire la main sur "Le port com" je pensais faire un cable de test en reliant TX à RX pin 2 et pin 3 sur mon cable serie
Donc si j'envoi quelque chose sur mon port je le recoie immediatement sur ma broche RX
Mais comment traiter cela par programme ?
0
cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
3 janv. 2008 à 20:17
Oui, à condition de ne définir aucun protocole de transmission (propriété Handshakes sur None)

Comment le traiter par programme ? c'est simple, dès que tu vas faire un .Write, tes octets seront envoyés sur le Tx et donc reçus sur le Rx.

Il ne te restera plus qu'à aller lire ce que tu as reçu avec un .Read

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #    http://aide-office-vba.monforum.com/index.php
0
cs_SEB73460 Messages postés 271 Date d'inscription vendredi 15 avril 2005 Statut Membre Dernière intervention 29 novembre 2022
3 janv. 2008 à 20:42
j'ai une erreur du genre

La résolution de surcharge a échoué, car aucun 'Read' accessible n'accepte ce nombre d'arguments. 
0

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

Posez votre question
cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
3 janv. 2008 à 21:14
qu'utilise-tu comme code pour lire les données ?

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #    http://aide-office-vba.monforum.com/index.php
0
NHenry Messages postés 15112 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 13 avril 2024 159
4 janv. 2008 à 14:02
Bonjour

Normal, tu lui passe une TextBox, et pas une chaine ...
Regarde dans l'infobulle qui apparait, tu verra toutes les surcharges (ou l'aide MSDN est aussi bonne conseillère).

Balèse la personne qui a pensé au pansement à penser (ou à panser, pensée).
VB (6, .NET1&2), C++, C#.Net1
Mon site
0
cs_SEB73460 Messages postés 271 Date d'inscription vendredi 15 avril 2005 Statut Membre Dernière intervention 29 novembre 2022
4 janv. 2008 à 17:43
Bonsoir à tous

Merci à vous 2 pour votre aide

J'ai toujours mon erreur
Voici mon code :

Private

Sub Button1_Click(
ByVal sender
As System.Object,
ByVal e
As System.EventArgs)
Handles Button1.Click 

SerialPort.Write(TextBox1.Text.ToString)

SerialPort.Read(TextBox2.Text.ToString)

 

End
Sub

A+
0
NHenry Messages postés 15112 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 13 avril 2024 159
7 janv. 2008 à 09:49
Bonjour

Une erreur, laqualle ?
aus fait, pas desoin de .ToString, .Text suffit, cela retourne déjà un String, pas besoin de String.ToString

Balèse la personne qui a pensé au pansement à penser (ou à panser, pensée).
VB (6, .NET1&2), C++, C#.Net1
Mon site
0
cs_SEB73460 Messages postés 271 Date d'inscription vendredi 15 avril 2005 Statut Membre Dernière intervention 29 novembre 2022
7 janv. 2008 à 18:07
Voila mon erreur à la reception des données :

La résolution de surcharge a échoué, car aucun 'Read' accessible n'accepte ce nombre d'arguments. 
A+
0
NHenry Messages postés 15112 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 13 avril 2024 159
8 janv. 2008 à 09:05
Bonjour

Regarde dans l'aide MSDN (F1 sur Write) et tu auras la liste des surcharges.

Balèse la personne qui a pensé au pansement à penser (ou à panser, pensée).
VB (6, .NET1&2), C++, C#.Net1
Mon site
0
Rejoignez-nous