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 :

Mise en oeuvre en C# d'un adaptateur USB vers RS-232


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    retraité
    Inscrit en
    Juillet 2018
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Juillet 2018
    Messages : 23
    Par défaut Mise en oeuvre en C# d'un adaptateur USB vers RS-232
    Bonjour je cherche a utiliser un adaptateur USB vers RS-232.
    Dans Windows 11 l'adaptateur est reconnu comme USB Sérial Port (COM3).
    Quelqu'un a t'il déjà utiliser cet adaptateur pour communiquer à travers le port USB vers une interface série.
    Merci d'avance pour vos réponses.
    astvt

  2. #2
    Modérateur
    Avatar de sevyc64
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2007
    Messages
    10 254
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 10 254
    Par défaut
    Normalement tu vas l'utiliser comme un port série RS232 classique, avec les outils de la classe System.IO.Port.SerialPort.

    Le fait qu'il soit sur un port usb est, normalement, totalement transparent pour ton code, c'est le driver monté par Windows qui se charge de faire la transformation.

  3. #3
    Membre Expert
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    1 586
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 1 586
    Par défaut
    tu demandes pour "cet adaptateur" mais on ne sait pas duquel il s'agit
    Mais à partir du moment où il est reconnu comme un port série, il est utilisable comme tel.
    Donc dans ton cas, c'est le port série n°3 ou COM3
    (son numéro peut se modifier dans le gestionnaire de périphérique)

  4. #4
    Membre averti
    Homme Profil pro
    retraité
    Inscrit en
    Juillet 2018
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Juillet 2018
    Messages : 23
    Par défaut
    Bonjour, j'ai fais ceci:
    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
    //sélection du port série
                    switch (choiscom)
                    {
                        case 1:
                            ComPort.PortName = "COM1";
                            break;
                        case 2:
                            ComPort.PortName = "COM2";
                            break;
                        case 3:
                            ComPort.PortName = "COM3";
                            break;
                    }
                    string port = ComPort.PortName;
                    //ouvre le port de communication
                    ComPort.Open();
                    //set RTS enable
                    ComPort.RtsEnable = true;
                    ComPort.DtrEnable = true;
                    //test si la ligne Cts est on
                    bool ctsport = ComPort.CtsHolding;
                    if (ctsport == false)
                    {
                        MessageBox.Show("la ligne CTS de l'interface série n'est pas présente. \n Vérifiez le câble d'interface", "ERREUR", MessageBoxButtons.OK, MessageBoxIcon.Stop);
                        ComPort.RtsEnable = false;
                        ComPort.Close();
                        //choiscom = (char)0;
                        return;
                    }
    mais cela ne fonctionne pas.
    Le port série est bien ouvert mais les lignes RTS, DTR, et CTS ne sont pas actives. Pour le vérifier j'ai une oetite boite (NU DATA) qui me permet de visualiser l'état de chaque ligne de l'interface série.
    Aucunes des lignes que je contrôle ne sont actives.
    Il semble que les commandes du ComPort ne fonctionnent pas. Peut être un problème d’accès au driver ? L'adaptateur USB to RS-232 est basé sur un module de FTDI.

  5. #5
    Modérateur
    Avatar de sevyc64
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2007
    Messages
    10 254
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 10 254
    Par défaut
    Activer les lignes ne suffit pas, il faut aussi configurer le protocole de négociation (Handshake). Par défaut il est configurer sur None pour une connexion dite "3 fils" et un protocole géré par le logiciel.

  6. #6
    Membre Expert
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    1 586
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 1 586
    Par défaut
    vérifier que la puce FTDI gère aussi le full série.
    Je ne sais plus si c'est celle de FTDI ou de Prolific (l'autre grosse marque de circuit) où il peut y avoir un souci.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 18
    Dernier message: 20/11/2016, 07h42
  2. adaptateur usb vers IDE : n'existe pas ?
    Par Invité dans le forum Windows XP
    Réponses: 10
    Dernier message: 18/03/2012, 18h51
  3. Mise en oeuvre d'une standby
    Par armando123 dans le forum Oracle
    Réponses: 1
    Dernier message: 17/10/2005, 12h18
  4. [JMS] Mise en oeuvre
    Par tery dans le forum Java EE
    Réponses: 4
    Dernier message: 21/02/2005, 13h35

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