2017-06-09 13 views
2

私はこのコードを使用していますが、動作しておらず、この例外をスローしていません:オブジェクト参照がオブジェクトのインスタンスに設定されていません devices [0]文字の書き込みと読み取りのためのUWPシリアルポート通信(UWPとArduino)

private async void ConnectToSerialPort() 
    { 
     string selector = SerialDevice.GetDeviceSelector("COM7"); 
     DeviceInformationCollection devices = await DeviceInformation.FindAllAsync(selector); 
     if (devices.Count > 0) 
     { 
      DeviceInformation deviceInfo = devices[0]; 
      SerialDevice serialDevice = await SerialDevice.FromIdAsync(deviceInfo.Id); 
      Debug.WriteLine(serialDevice); 
      serialDevice.BaudRate = 9600; 
      serialDevice.DataBits = 8; 
      serialDevice.StopBits = SerialStopBitCount.Two; 
      serialDevice.Parity = SerialParity.None; 

      DataWriter dataWriter = new DataWriter(serialDevice.OutputStream); 
      dataWriter.WriteString("your message here"); 
      await dataWriter.StoreAsync(); 
      dataWriter.DetachStream(); 
      dataWriter = null; 
     } 
     else 
     { 
      MessageDialog popup = new MessageDialog("Sorry, no device found."); 
      await popup.ShowAsync(); 
     } 
    } 

    private void Button_Click(object sender, RoutedEventArgs e) 
    { 
     ConnectToSerialPort(); 
    } 

私はこのエラーを削除するのを手伝ってください、私はあなたに非常に感謝します。 助けてくださいあなたはこのようPackage.appxmanifestにシリアルデバイス機能を追加する必要があります:(

+0

を例外が –

+0

serialDeviceで発生しているものをライン? null例外を与えています... – Softdeveloper

+0

質問を編集してその詳細を追加してください –

答えて

5

:。

<Capabilities> 
    <DeviceCapability Name="serialcommunication"> 
     <Device Id="any"> 
     <Function Type="name:serialPort" /> 
     </Device> 
    </DeviceCapability> 
    </Capabilities> 

をあなたはSerial device capability usageを参照することができます詳細については

関連する問題