MSCommで16進(9F)を送るには?

解決


ゆぎょうじ  2006-02-08 01:56:52  No: 130138

RS232Cでバイナリ制御の測定器を操作しょうとしています。VB6のMSCommで下記のような2バイトを送出したときx'9F'がx'00'として受信されます。  x'A0'は正しくx'A0'と受信されるのです。 他にx'81' 〜x'9E'  等もx'00'として受信されているようなのですが、どなたか原因あるいは解決方法をご存知ありませんか?

SendBF = Chr("&H" & "A0") & Chr("&H" & "9F")
mscPort.Output = SendBF


もげ  2006-02-08 02:27:37  No: 130139

Chr関数だとString型を返してしまって厄介なことになりそう。
Dim SendBF() As Byte
ReDim SendBF(2)
SendBF(0) = ChrB("&H" & "A0") 
SendBF(1) = ChrB("&H" & "9F") 
mscPort.Output = SendBF

とか(未確認)。


もげ  2006-02-08 02:32:48  No: 130140

訂正
SendBF(0) = &HA0 
SendBF(1) = &H9F


ゆぎょうじ  2006-02-08 07:43:33  No: 130141

ありがとうございました。  お蔭様で解決いたしました。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加