IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C# Discussion :

Comment charger un port série Com1 aux port RS232


Sujet :

C#

  1. #1
    Nouveau Candidat au Club
    Inscrit en
    Mai 2009
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Mai 2009
    Messages : 7
    Points : 1
    Points
    1
    Par défaut Comment charger un port série Com1 aux port RS232
    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

  2. #2
    Nouveau Candidat au Club
    Inscrit en
    Mai 2009
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Mai 2009
    Messages : 7
    Points : 1
    Points
    1
    Par défaut
    Je me suis aidé de ce site : http://72.14.221.132/translate_c?hl=...FJjtzmKu6d7V0Q Cependant une erreur perdure
    Le type'RS232.fclsRS232Tester' Contient déjà une définition pour 'SetTextCallback'
    . Pouvez -vous m'aider svp

  3. #3
    Expert confirmé

    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Septembre 2006
    Messages
    3 580
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Septembre 2006
    Messages : 3 580
    Points : 5 195
    Points
    5 195
    Par défaut
    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 !
    The Monz, Toulouse
    Expertise dans la logistique et le développement pour
    plateforme .Net (Windows, Windows CE, Android)

  4. #4
    Nouveau Candidat au Club
    Inscrit en
    Mai 2009
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Mai 2009
    Messages : 7
    Points : 1
    Points
    1
    Par défaut
    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

  5. #5
    Nouveau Candidat au Club
    Inscrit en
    Mai 2009
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Mai 2009
    Messages : 7
    Points : 1
    Points
    1
    Par défaut
    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();
                      }
     
                }
     
     
     
            }
     
     
        }

  6. #6
    Nouveau Candidat au Club
    Inscrit en
    Mai 2009
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Mai 2009
    Messages : 7
    Points : 1
    Points
    1
    Par défaut Question
    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();

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    388
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 388
    Points : 502
    Points
    502
    Par défaut
    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.

  8. #8
    Nouveau Candidat au Club
    Inscrit en
    Mai 2009
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Mai 2009
    Messages : 7
    Points : 1
    Points
    1
    Par défaut Merci
    Merci, mais je ne sais pas comment formulé sa. . . Pourrait=s-tu m'aider ?

  9. #9
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    388
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 388
    Points : 502
    Points
    502
    Par défaut
    Memoire tampon du port serie = propriete BytesToRead de la classe SerialPort

  10. #10
    Nouveau Candidat au Club
    Inscrit en
    Mai 2009
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Mai 2009
    Messages : 7
    Points : 1
    Points
    1
    Par défaut Merci
    Merci je vais essayer avec sa ^^

Discussions similaires

  1. Simuler une entrée port série COM1
    Par Homo_Informaticus dans le forum C#
    Réponses: 6
    Dernier message: 18/11/2010, 20h52
  2. port série virtuel sur port usb
    Par Othana dans le forum C#
    Réponses: 3
    Dernier message: 13/09/2010, 10h31
  3. Réponses: 0
    Dernier message: 24/06/2008, 16h12
  4. [Série] Accès au port série sous linux
    Par ghost dans le forum Entrée/Sortie
    Réponses: 10
    Dernier message: 10/10/2007, 10h43
  5. ecoute du port série ( COM1 et COM2 )
    Par g0up1l dans le forum Entrée/Sortie
    Réponses: 2
    Dernier message: 25/03/2007, 21h58

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo