Esta inquietud se puede resolver de diferentes maneras, pero en este caso te dejamos la que para nosotros es la resolución más completa.
Solución:
Mirando el código fuente del IDE de Arduino en github, parece que llaman a un ejecutable (listComPorts.exe). Así que supongo que no puedes obtener esa información a través de la serie.
Aquí hay una aplicación C# que usa WMI que puede obtener port, vid y pid:
namespace PortTest
class Program
// Helper function to handle regex search
static string regex(string pattern, string text)
Regex re = new Regex(pattern);
Match m = re.Match(text);
if (m.Success)
return m.Value;
else
return null;
static void Main(string[] args)
// Use WMI to get info
ManagementObjectSearcher searcher = new ManagementObjectSearcher("root\CIMV2",
"SELECT * FROM Win32_PnPEntity WHERE ClassGuid="4d36e978-e325-11ce-bfc1-08002be10318"");
// Search all serial ports
foreach (ManagementObject queryObj in searcher.Get())
// Parse the data
if (null != queryObj["Name"])
Console.WriteLine("Port = " + regex(@"((COMd+))", queryObj["Name"].ToString()));
//PNPDeviceID = USBVID_1A86&PID_75235&1A63D808&0&2
if (null != queryObj["PNPDeviceID"])
Console.WriteLine("VID = " + regex("VID_([0-9a-fA-F]+)", queryObj["PNPDeviceID"].ToString()));
Console.WriteLine("PID = " + regex("PID_([0-9a-fA-F]+)", queryObj["PNPDeviceID"].ToString()));
Console.WriteLine("Done");
int c = Console.Read();
A partir de ahí, parece que busca en una base de datos en línea para obtener más información. Ver: getBoardWithMatchingVidPidFromCloud()
función.
valoraciones y reseñas
Recuerda que puedes recomendar este artículo si te fue útil.
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)