タイトル : Re^15: VB2005で、シリアル通信について 投稿日 : 2009/04/30(Thu) 16:22 投稿者 : オショウ
> txtMessage.Invoke(addmsg, New Object() {"[RCV]" + sz}) > これをコメントにして、なおかつ、デバッグモード(F9でデバッグしながらコードをおっていました) > ではなくて、通常のモードで走らせたら、正常に受信しました。 それが最大の問題でしたネ! 例えデバッグモードででも、キーボードからのステップ実行なら イベントの発生順序が変化しますので、こういうケースの場合、 IDEの統合環境ででも送受信の最中では、ステップ実行で止め た場合、思い通り動作にはならないことがあります。 ブレークポイントを設定する場所も、デバッグの内容によっては 選びますので、送受信の切れ目に設定するとか・・・ 送受信の途中に設定したい場合、正常にルーチンを抜けない場合 も当然あります。 お気をつけ下さい。 ※ デバイスとの通信デバッグは、一般的なステップ実行の方法では うまく動作しません。慣れるしかないかと・・・ ● 私がやったFA関係で最大のデバイス数とのマルチスレッド的な動作 では・・・ GP−IBボード×2枚(各々6台のデバイス接続) RS-232C×2枚(4ポート・2ポート+本体1=7ポート) DIO×2枚(32/32と16/16) ボードはインターフェース社のもので本体PCIと拡張BOX使って ます。 これらをほぼ同時的に通信させて制御・計測しています。 それでいて、Pentium4 2.4GHz メモリ512MB ですが、CPU負荷は、 最高で20%ぐらい・・・ なんとかなるもんです。 がんばってください! 以上。 |