C# と VB.NET の質問掲示板

わんくま同盟

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト


■93208 / )  Re[4]: シリアル通信で送信をコントロールする方法について
□投稿者/ 作業着プログラマ (6回)-(2019/11/28(Thu) 08:47:47)
受け手側の処理が低速で、色々頑張った結果ウェイトを入れるしか無い場合も
多々あると思います。

>serialPort1.Write(ByteData, 0, iCnt);
>Thread.Sleep(100);
上記ならまだいい方で

for(int i = 0; i < ByteData.length; i++){
     char[] sndChar = new char[1]{ByteData[i]};
     serialPort1.Write(sndChar , 0, 1);
     Thread.Sleep(10);
}
1文字づつウェイトいれたら動いたなんて経験もあります。
おそらくNC工作機との事なので、そんな事はないと思いますが。

古いDOSだと動くと言うのも、単純にPCのスペックが上がって
送信間隔が早いからでしょうし、受け手の処理がわからない以上
理屈じゃない手法もやむなしかもしれませんね。

返信 編集キー/


管理者用

- Child Tree -