Bonjour, je suis actuellement en train de programmer en C# WindowsFormsApplications et j'aimerai pouvoir charger un port série Com1 aux port RS232. Avec un tampon si quelqu'un pouvais m'aider ! Merci d'avance
Bonjour, je suis actuellement en train de programmer en C# WindowsFormsApplications et j'aimerai pouvoir charger un port série Com1 aux port RS232. Avec un tampon si quelqu'un pouvais m'aider ! Merci d'avance
Je me suis aidé de ce site : http://72.14.221.132/translate_c?hl=...FJjtzmKu6d7V0Q Cependant une erreur perdure. Pouvez -vous m'aider svpLe type'RS232.fclsRS232Tester' Contient déjà une définition pour 'SetTextCallback'![]()
salut
la classe SerialPort est destinée à la communication avec les ports COM.
Regarde de ce coté et tu devrais pouvoir "définir" un peu mieux ta question !
Je suis en train de programmer un Octotuner via Visual C# et il faudrait que le programme me permette de reconnaitre le port. Pour que je puisse communiquer avec la machine. Merci Beaucoup
Voila mon code !
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67 using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using System.IO.Ports; namespace WindowsFormsApplication2 { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) { } private void button1_Click(object sender, EventArgs e) { InitializeComponent(); // Méthode pour parcourir tous les ports disponibles string[] ports = SerialPort.GetPortNames(); // Instancié les ports de communication avec quelques réglages de base. SerialPort port = new SerialPort("COM1", 9600, Parity.None, 8, StopBits.One); // Pour ouvrir le port. port.Open(); if (port.IsOpen) { System.Threading.Thread.Sleep(100); MessageBox.Show("Le Port est ouvert"); } else { // Envoyer un message, si le port n'est pas disponible : MessageBox.Show("Port Série " + port.PortName + " Le port ne peut être ouvert", "RS232 tester", MessageBoxButtons.OK, MessageBoxIcon.Warning); port.Open(); } } } }
J'ai avancé et maintenant le port s'ouvre je peux lui envoyer des commandes mais je n'arrive pas a recevoir de réponse de sa part pouvez-vous m'éclairer je débute ... Merci d'avance
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35 // Instancié les ports de communication avec quelques réglages de base. SerialPort serialPort1 = new SerialPort("COM1", 9600, Parity.None, 8, StopBits.One); // Tenter d'ouvrir le port serialPort1.Open(); MessageBox.Show("L'Octotuner va s'allumer veuillez patienter quelques instant ..."); // si le port est effectivement ouvert alors se met en place la lecture. if (serialPort1.IsOpen == true) { System.Threading.Thread.Sleep(1500); MessageBox.Show("Le Port est ouvert"); serialPort1.WriteLine("NAME?"); System.Threading.Thread.Sleep(1000); serialPort1.Read(buffer, 0, 8); serialPort1.ReadTimeout = 100000; serialPort1.WriteTimeout = 500; System.Threading.Thread.Sleep(1000); // Il s'agit d'un cast : une conversion explicite entre des types de données. int received_byte; int received_char; received_byte = serialPort1.ReadByte(); received_char = serialPort1.ReadChar(); serialPort1.ReadLine(); serialPort1.Close();
Lit la memoire tampon de ton port serie avant de faire des operations de lecture. Attends qu'il y ai quelquechose dans le tampon puis lit.
Merci, mais je ne sais pas comment formulé sa. . . Pourrait=s-tu m'aider ?
Memoire tampon du port serie = propriete BytesToRead de la classe SerialPort![]()
Merci je vais essayer avec sa ^^
Partager