タイトル | : 受信バッファのクリア |
記事No | : 15337 |
投稿日 | : 2011/09/25(Sun) 16:09 |
投稿者 | : Boon |
VB6です。 PC1-変換器-PC2と接続しておいて、 PC1よりデータを変換器経由でPC2へ送信し、 PC2は受信データを変換器経由でPC1へ返信する・・・ということをしています。 VB6でMSCommを使って、PC1、PC2側の送受信プログラムを作りました。
PC1-変換器-PC2の電源をONしておいて (PC1,PC2のプログラムを起動する前に) 変換器の電源のみ、ON/OFFを何回か繰り返すと PC2の受信バッファに何かゴミが貯まるようです。
これ自体はしかたないことですが、 PC1,PC2のプログラムを起動したら、最初に mscPort.OutBufferCount = 0 '--- 送信バッファのクリア。 mscPort.InBufferCount = 0 '--- 受信バッファのクリア。 としてもゴミをとることができません。
PCのシステムとして MSCommのバッファ、通信ICのバッファとあると思うので MSCommのバッファのクリアをしても 通信ICのバッファ内にゴミが残っているのかな? と想像しているのですが・・・。
完全にゴミをとる方法を教えてください。
オシロで見ると、 PC1がAという1バイトを送信するとPC2には正しくAを送信されているのですが PC2はxAとという2バイトを返信します。 このxがゴミと思われるのです。 この動作を1回したあとは、全く正常に送信、返信されています。
|