在哪里找到 GetDeviceSelector(String portName) 的 portName

Where to locate portName for GetDeviceSelector(String portName)

我尝试使用 GetDeviceSelector() 函数定位 COM 端口,如下所述:

我明白了,我可以为 GetDeviceSelector() 函数提供端口名称:

public static System.String GetDeviceSelector(System.String portName);

在某些示例中,它类似于 "COM0"、"COM1" 等
我的问题是:在哪里可以找到提供端口名称的文档?

这是我从 Raspberry 的设备管理器中得到的:

{
  "Class": "Ports",
  "Description": "BCM283x Mini UART Serial Device",
  "ID": "ACPI\BCM2836\0",
  "Manufacturer": "Microsoft",
  "ParentID": "ACPI_HAL\PNP0C08\0",
  "ProblemCode": 0,
  "StatusCode": 25182218
},
{
  "Class": "System",
  "Description": "ARM PL011 UART Device Driver",
  "ID": "ACPI\BCM2837\4",
  "Manufacturer": "Microsoft",
  "ParentID": "ACPI_HAL\PNP0C08\0",
  "ProblemCode": 0,
  "StatusCode": 25165834
},

这是盘子的piout:

知道端口名称的方法是什么?换句话说 - 获取所需端口名称的算法是什么?

更新

回答大牛的问题。 我使用 Windows.Devices.SerialCommunication.SerialDevice class 进行交互,方式如下:

DataWriter dataWriteObject = new DataWriter(_serial_port.OutputStream);
dataWriteObject.WriteByte(0xF0);
await dataWriteObject.StoreAsync();

DataReader dataReaderObject = new DataReader(_serial_port.InputStream);
await dataReaderObject.LoadAsync(1);
byte resp = dataReaderObject.ReadByte();

我知道COM只能用于串口设备,目前我只需要串口设备。

COM 端口名称似乎在 Windows IoT Core 上不起作用。来自这个文档:Configuration of COM Ports、Ntddser.h 等。基本文件在 Windows IoT Core 上不可用(您可以搜索它)。

更多参考:“Using Serial.sys and Serenum.sys" "COM Port Database

如果要查找板载指定串口设备,建议在SerialDevice.GetDeviceSelector API.

中使用"UART0"
string aqs = SerialDevice.GetDeviceSelector("UART0");

参考“Raspberry Pi 2 & 3 Pin Mappings - Serial UART

相关问题:“Serial Port support for Raspberry Pi with Windows IoT