2016-08-11 9 views
1

私のコンピュータからシリアルCOMポートに連続して16進データを送信し、COMポートからRS232経由のLED(RGBライト) USBケーブル。場合によっては10〜15時間稼働し、データをポートに送信するのをやめた日が交互になります。COMポートが停止したり、7-8時間の作業後にシリアル通信の送信を停止します

DMX 512コントローラ、RS232 USBケーブル(FTDIドライバ、C#言語)を使用してSerialPortクラスでデータを送信します。これは、それは私がスタートボタンをクリックしてデータを送信しようとしたが止めなったとき、私は3つのポート

while (Global.tmrStarted) 
{ 
    Break(); 
    Thread.Sleep(500); 
    if (m_port == null || m_port.IsOpen == false) return; 
    m_port.Write(new byte[] { 0 }, 0, 1); 
    SendData(); 


    Break1(); 
    if (m_port1 == null || m_port1.IsOpen == false) return; 
    m_port1.Write(new byte[] { 0 }, 0, 1); 
    SendData1(); 
    Break2(); 

    if (m_port4 == null || m_port4.IsOpen == false) return; 
    m_port4.Write(new byte[] { 0 }, 0, 1); 
    SendData2(); 

    Thread.Sleep(100); 
} 

にデータを送信し、私のstartメソッドである

public static GO() 
{ 
    try 
    { 
     dmx = new Dmx(2, 0); 

     Thread mTh1 = new Thread(() => dmx.Start(RGBdata1, RGBdata2, RGBdata3)); 

     Global.tmrStarted = true; // test it,ok 

     mTh1.Start(); 
    } 
} 

:ここ

は私のコードです私のUSBケーブルを外してプラグインをやり直すまで、データはそれらのCOMポートを介して送信されません。

誰もが、私はそれがわかりました、彼らは私がすべての私の研究の後、また この問題を持っていた事前

+1

通常、これが起こるのは、usb2serialチップで問題であり、コードではありません。 –

答えて

2

でそれら.Thanksに連続的にデータを送信することにより、無効取得ports.Did通信との本当の問題は何を私にお勧めできますWindowsの省電力はそれらをシャットダウンするため、USBからシリアルCOMへのみ発生します。 添付された画像でどのように設定するかをご覧ください。 enter image description here

+0

ありがとう、私はそれを行って、それを監視しています。 – user6679685

関連する問題