こんにちは。
現在、Cで作ってある通信部分をVBでやろうとしています。
Cが全く分からないので困っています。
通信における規則があるようでしたら教えてください。
データを送信する際、今は以下のように書いています。
<DLE><STX><01>Chr(&HFE) 数値データ----------------------------------------<DLE><ETX>CRC
<DLE><STX><02>Chr(&HFD) Chr(H0E)文字データ-----Chr(&H0F)Chr(&H0D)Chr(&H0A)<DLE><ETX>CRC
<DLE><STX><03>Chr(&HF1) 数値データ----------------------------------------<DLE><ETX>CRC
<DLE><STX><04>Chr(????) Chr(H0E)文字データ-----Chr(&H0F)Chr(&H0D)Chr(&H0A)<DLE><ETX>CRC
データの最初には<DLE>と<STX>とブロックナンバー(<01>など)を付け、
最後には<DLE>と<ETX>とCRCの値を付けています。ところが、
何故か受信データにはブロックナンバーの後にChr(&HFE)やChr(&HFD)など
というデータが入っています。そのプログラムの仕様なのかも
知れませんが、ブロックナンバーの後に付くものは何でしょうか?
ちなみに、Chr(H0E)とChr(H0A)というのは、シフトコード(SO,SI)を
VBで表現しています。(Chr(&H0F)とChr(&H0D)はCR,LF)
どうぞよろしくお願いいたします。
>知れませんが、ブロックナンバーの後に付くものは何でしょうか?
さぁ……?
そういうプロトコルなんじゃないですか?
でもって,
0A : LINE FEED (LF)
0D : CARRIAGE RETURN (CR)
0E : SHIFT OUT (SO)
0F : SHIFT IN (SI)です。
ツイート | ![]() |