タイトル : Re: MSComm通信 投稿日 : 2009/12/02(Wed) 11:13 投稿者 : GOD
> Debug.Print Hex(BytArrayRequestDat) & ":送信" > Hex 関数に配列は渡せません。 なので、 Dim Cnt As Long For Cnt = LBound(BytArrayRequestDat) To UBound(BytArrayRequestDat) Debug.Print Right("00" & Hex(BytArrayRequestDat(Cnt)), 2); Next Debug.Print ":送信" みたいにして値をひとつずつ渡す必要があります。 > MSComm1.Output = Chr(BytArrayRequestDat) 'マイコンへ送信 > Chr 関数に配列は渡せません。あと、今回はChr関数は必要ないですよ。 MSComm1.Outputには配列を設定することができるので MSComm1.Output = BytArrayRequestDat で大丈夫です。 > Do > DoEvents > Loop Until MSComm1.OutBufferCount = 0 > 送信終了タイミングでなにか処理がしたいのでしょうか? でなければ↑の部分はいらないと思いますよ。 ところで通信パラメータ(速度、パリティ、フロー制御など)の設定は正しいですか? 「Settings プロパティ」、「Handshaking プロパティ」、「InputMode プロパティ」参照 |