したらばTOP ■掲示板に戻る■ 全部 1-100 最新50 | |

■■■20レス以内で済むF-BASICの質問はこちらへ■■■

598名無しさん:2015/06/06(土) 07:36:59
>>597
 バイナリデータの受信ではINPUT$関数を使用します。
1組のバイナリデータ24バイトを A$=INPUT$(24, #1)で文字変数に格納してから
データを個々に切り分け(MID$関数)、数値に変換します。
INPUT$関数を複数回実行して個々のデータ1個づつ変数に格納してもかまいません。

 もし、次の組のバイナリデータとの間に区切り用のデータがあるなら忘れずに
受信処理してください。


 ここで問題となるのが、数値データが8バイトの倍精度浮動小数点であること。
浮動小数点形式には過去にいくつかの規格とデータのバイト格納(受信)順序の違いが
あるため、適した変換を行う必要があります。
(おそらくは数値形式そのものはIEEE754だと思います。)

F-BASICでは変換関数が用意されているので対応するものを使います。

・倍精度浮動小数点用の変換関数(CVDxx)
CVD関数、
CVDV関数、CVD2関数、CVD98関数

注意:CVD関数以外は「#include "F1A0LWIC.BI"」の記述が必要です。
そして、数値変換拡張ライブラリ「F1A0LC63.LIB」を
プロジェクトファイルにBASICプログラムとともに登録して翻訳する必要があります。


ヘルプファイルの次の各ページあたりを参照してください。
・「MS-DOS BASIC プログラム資産の移植」の章の 「数値データの格納形式について」、
   「各種データ形式への対応方法」、「数値変換拡張ライブラリ(F1A0LC63.LIB)」
・「他言語プログラム」の章の 「倍精度実数の格納形式」


それから、
 RS-232Cの回線速度やフロー制御などの通信モードの設定を
よく確認して計測機器側と合わせてください。

 設定はOPEN命令中で記述するか、「運用環境ファイル」を作成して設定します。
 「運用環境ファイル」を使う場合はF-BASICのプロジェクトファイルを作成
してBASICプログラムといっしょに登録する必要があります。
・運用環境ファイルの「回線」タブ - 「回線パラメータの設定」ボタン から。


新着レスの表示


名前: E-mail(省略可)

※書き込む際の注意事項はこちら

※画像アップローダーはこちら

(画像を表示できるのは「画像リンクのサムネイル表示」がオンの掲示板に限ります)

掲示板管理者へ連絡 無料レンタル掲示板