2015-12-15 124 views
3

我一直在使用Unity和teensy進行串行通信很長一段時間。它一直在正常工作。 現在我改變了我的teensy板,因此COM端口已經改變了。 Teensy在arduino中完美通信,並在串口監視器中檢查時發送所有正確的信號。但我正在統一這個錯誤。端口'COM11'不存在。指定端口未打開

> IOException: The port `COM11' does not exist. 
System.IO.Ports.WinSerialStream.ReportIOError (System.String optional_arg) 
System.IO.Ports.WinSerialStream..ctor (System.String port_name, Int32 

baud_rate, Int32 data_bits, Parity parity, StopBits sb, Boolean dtr_enable, Boolean rts_enable, Handshake hs, Int32 read_timeout, Int32 write_timeout, Int32 read_buffer_size, Int32 write_buffer_size) 
    (wrapper remoting-invoke-with-check) System.IO.Ports.WinSerialStream:.ctor (string,int,int,System.IO.Ports.Parity,System.IO.Ports.StopBits,bool,bool,System.IO.Ports.Handshake,int,int,int,int) 
    System.IO.Ports.SerialPort.Open() 

最初的COM端口是個位數的值,比如COM4或COM8等,但自從我開始twodigit COM端口,我開始面臨這個問題。如果我再連接teensy與單個數字COM端口它工作正常,但不檢測COM50等

如何解決此問題?

回答

5

如果這是Windows操作系統嘗試指定的COM端口名\\。\ COM11

myPort= new SerialPort("\\\\.\\COM11",9600); 

注:此語法還通過COM9適用於口COM1。某些電路板會讓你自己選擇端口名稱。該語法也適用於這些名稱。

0

使用System.IO.Ports.SerialPort.GetPortNames()查看操作系統使用的當前COM端口名稱。 (我不確定你是否在談論.NET,但如果你這樣做有幫助)

+0

這確實列出了comports,但它顯示了與OP完全相同的問題,如OP再次。海倫的解決方案有效。 – lode