User manual - Cライブラリ解説書ver.2.00(2003年2月7日)

DT-900 C ライブラリ解説書
164
(2)CERR_r_xxxx2エラーステータスのチェック
先に述べた通り、CTRL信号とベーシックIOボックスのRS22CのCS信号が共にOFFであるときフレーミングエラーが
発生する場合があります。
しかし、前述の“(1)ベーシックIOボックスとの接続”に示す例のようにソフトウェアでCTRL信号とベーシックIOボックスの
CS信号が共にOFFにならない状態を作り出すことは容易でないと考えられます。従ってカシオIRポートで無手受信のデ
ータ通信を行うことは不向きであり、データ通信を行うユーザエンティティの間で何等かの通信手順が必要になります。
パリティ、オーバーラン、フレーミングエラーのチェックをエラーステータスのCERR_f_PARITY2、FRAMING2、OV
RRUN2で行うと、「1文字受信」、「タイムアウト監視受信」ファンクションで受信データとエラーを時系列で得ることができ
ます。
以下にエラーチェックの例を示します。
【エラーチェックの方法】
・通信手順(プロトコル)を用いてデータ転送を行う。フレームの形式は以下の通りです。
・本機が受信側、ベーシックIOボックスが送信側とします。
・カシオIRが使用するシリアルコントローラのレシーバはFIFOバッファなのでフレームのヘッダ、フッタは
余分に16文字付加すべきです。
BOF:フレームヘッダ
DATA:転送データ
FCS:フレームチェックシーケンス
EOF:フレームフッタ
CTRL CS 転送データ 受信バッファ エラー ファンクションコール
① ON OFF
OFF OFF 0xFF フレーミングエラー IOボックス送信設定
* CTRL CS OFF となりフレーミングエラーとなった。エラー(ノイズ)のデータは破棄されます。
OFF ON 0xB0 0x41 0x42 0xB0 0x41 0x42
OFF ON 0xB0 0x41 0x42 1 文字受信
OFF ON 0xB0 0x41 0x42 エラーステータスのリード
* エラーステータスが CERR_f_FRAMING or CERR_f_FRAMING2。読出したデータ
0xBOは正常なデータです。
CERR_f_FRAMING2 なので
0xB0より前にエラーとなったことが分かる。0xB0はフレーム(ヘッダ)であるのでエラーは
フレーム本体のには影響を与えない。受信データの読込みを継続します。
OFF ON 0x41 0x42 1 文字受信
OFF ON 0x42 1 文字受信
次ページへ続く
BOF DATA FCS EOF 0x41 0x42 0x43 0xC6 0xC0 0xB0