none
Informazioni su dispositivo COM RRS feed

  • Discussione generale

  • Ho un problema, vorrei poter sapere le informazioni relative ad un dispositivo connesso ad una porta COM almeno saperne il nome.

    Il problema nasce perchè voglio fare un'applicazione che mi fornisca una lista con le COM e una stringa che mostri un identificativo del dispositivo connesso, sui quali poi voglio mandare delle stringhe.

    Sapete come posso fare? Mi interessa l'oggetto o l'Api per avere la stringa identificativa.

    Grazie a tutti!

    • Spostato Mila Daniel Ovidiu lunedì 15 novembre 2010 14:35 conettivita con Arduino, potrebbe stare qui ? (Da:Microsoft Visual C# Forum)
    • Tipo modificato Irina Turcu mercoledì 9 novembre 2011 08:51 Nessuna risposta ricevuta dall'OP.
    mercoledì 27 ottobre 2010 08:16

Tutte le risposte

  • Ciao SkyLiberty,

     

    l'elenco delle porte disponibili lo hai con questo codice

    using System;
    using System.IO.Ports;
    
    namespace ConsoleApplication1
    {
      class Program
      {
        static void Main(string[] args)
        {
          // Lista dei nomi porte seriali PC
          string[] ports = SerialPort.GetPortNames();
    
          Console.WriteLine("The following serial ports were found:");
    
          // Visualizza Elenco porte Seriali
          foreach (string port in ports)
          {
            Console.WriteLine(port);
          }
    
          Console.ReadLine();
        }
      }
    }
    
    
    

    Quanto ad un identificativo del dispositivo connesso non puoi averlo in quanto la seriale non può conoscere cosa hai connesso a quella porta.

    L'unico sistema è conosce tu i possibili dispositivi che puoi avere collegati e per ognuno di questi conoscere il comando (se esite) che inviato tramite porta seriale ti risponde con un identificativo o comunque con una risposta che sia univoca per il dispositivo collegato.

     

    Ciao

     

     

     


    Renato Marzaro  MVP Visual Basic

    http://community.visual-basic.it/renato

    mercoledì 27 ottobre 2010 10:24
  • Grtazie della risposta!! =) Ho scaricato delle librerie le AForge, che consentono di vedere il nome del driver associato al dispositivo della COM, ma solo per le webcam, perchè ovviamente fililtrano solo su quello.

    Quindi forse non il nome del dispositivo ma il nome del driver associato si può!

    Qualcuno conosce delle librerie più generali, o come scrivere del codice mio che svolge questo task?

     

    Grazie!

    mercoledì 27 ottobre 2010 15:49
  • Grtazie della risposta!! =) Ho scaricato delle librerie le AForge, che consentono di vedere il nome del driver associato al dispositivo della COM, ma solo per le webcam, perchè ovviamente fililtrano solo su quello.

    Quindi forse non il nome del dispositivo ma il nome del driver associato si può!

    Qualcuno conosce delle librerie più generali, o come scrivere del codice mio che svolge questo task?

     

    Grazie!


    Ciao SkyLiberty,

    Premetto che non consco il sorgete di Aforge ma se vai ad analizzare il codice sicuramente AForge riconosce i sistemi fra quelli che conosce già mediante un polling. Mi sembra però strano che ci siano collegate delle WebCam alla seriale ... avrebbero un refresh troppo lento.

    Comunque non puoi avere una soluzione generica in quanto l'accesso alla seriale non è vincolato ad un Driver installato visto che ci puoi accedere direttamente dal tuo programma sia in lettura che in scrittura.

    Giusto per capire cosa vuoi fare (che progetto vuoi implementare) fammi capire cosa vorresti riconoscere collegato alla seriale ... stampanti? Lettori Badge/Barcode? ?

    Ciao

     


    Renato Marzaro  MVP Visual Basic

    http://community.visual-basic.it/renato

    mercoledì 27 ottobre 2010 19:44
  • Voglio migliorare un'applicazione che avevo già scritto che avevo già scritto, che comunica con un microcontrollore connesso in seriale, usavo un Arduino che quando viene connesso usa un driver che contiene il nome Arduino, quindi ho bisogno che la applicazione mi renda disponibili le COM alle quali è connesso un Arduino.

     

    Per ora semplicemente mi diceva le com disponibili sul pc, E io dovevo sceglierne una lui mandava un comando WKP e se era un arduino mi rispondeva WKA, così sapevo se restituire un errore.

    Però volevo fare un qualcosa di più preciso. . .

     

    giovedì 28 ottobre 2010 08:03
  • On 10/28/2010 10:03 AM, SkyLiberty wrote:
    > Voglio migliorare un'applicazione che avevo già scritto che avevo già
    > scritto, che comunica con un microcontrollore connesso in seriale, usavo
    > un Arduino che quando viene connesso usa un driver che contiene il nome
    > Arduino, quindi ho bisogno che la applicazione mi renda disponibili le
    > COM alle quali è connesso un Arduino.
    >
    > Per ora semplicemente mi diceva le com disponibili sul pc, E io dovevo
    > sceglierne una lui mandava un comando WKP e se era un arduino mi
    > rispondeva WKA, così sapevo se restituire un errore.
    >
    > Però volevo fare un qualcosa di più preciso. . .
    >
     Bisogna spostare un po' il problema.
    Come diceva Renato, non c'è modo di sapere cosa c'è collegato alla
    seriale se non interrogando il device (come fai tu con arduino) e
    sperando che ti risponda.
    Non esistono meccanismi standard di identificazione dei device seriali,
    come ci sono su USB, PCI o altri bus.
    Arduino in realtà è collegato via USB ma emula una porta seriale.
    Potresti riconoscerlo enumerando non i device seriali, ma quelli USB.
    Su che sistema operativo stai lavorando?
    Forse su Win32 puoi usare WMI per enumerare i dispositivi USB e capire
    quale porta seriale corrisponde a un Arduino.
     

    Valter Minute
    Windows Embedded MVP
    http://geekswithblogs.net/WindowsEmbeddedCookbook
    lunedì 15 novembre 2010 17:18
    Moderatore