User manual - Cライブラリ解説書(2006年4月17日)
DT-930 Cライブラリ解説書
159
(2)受 信
通信ポートをオープンすることで転送データの受信を行うことができ、SI/SO制御、フロー制御
の通信制御機能を使用することができます。またカシオIRポート専用の半二重制御による転送
データの受信および受信データの読込みを行うことができます。
①受信バッファの設定
転送データの受信を行うためには転送データを受信して格納する領域と文字数(byte)を設定し
ます。
通信関数部は設定された領域への転送データの格納、読出しをFIFO形式(この領域を受信バ
ッファと呼び、格納したデータを受信データと呼ぶ)で処理します。
転送データを受信したとき、この受信バッファに空きなければ受信バッファオーバーフローエラー
となります。
文字数を0に設定したとき通信部の内部領域を使用します。この場合はバッファフロー制御を行
うことはできません。
受信バッファの設定は「COMのオープン」ファンクションで行います。
②受信ハンドラ
転送データの受信は、割込みにより通信関数部の受信ハンドラが行います。
通信関数部には標準ハンドラと簡易ハンドラの2つの受信ハンドラ部を持ち、指定によりどちらか
の受信ハンドラを使用します。
受信ハンドラの設定は「受信ハンドラ切替え」ファンクションで行います。
a)標準ハンドラ
標準ハンドラは転送データの受信機能(受信データバッファリングと呼ぶ)の他に以下の機能
を持ちます。
・SI/SO制御
・バッファフロー制御
・デリートコード制御
・エラーコードバッファリング制御
尚、本機の初期化において標準ハンドラに設定します。
b)簡易ハンドラ
簡易ハンドラは受信割込み処理を短縮することができます。簡易ハンドラは転送データの受
信機能(受信データバッファリングと呼ぶ)のみを持ちます。
c)受信ハンドラが制御する信号線
受信ハンドラでは以下の信号線の操作および参照を行います。
信号線 制御
RS 標準ハンドラ使用時、バッファビジーになったのときOFFに設定
③受信データの読込み
受信バッファに格納された転送データの読込みを「1文字受信」、「タイムアウト監視受信」で行う
ことができます。
これらのファンクションでは読込み可能な受信データが受信バッファに存在しないとき、受信デ
ータを待ちます。
また、カシオIRポート専用の半二重制御による転送データの受信および受信データの読込みを
これらのファンクションの他に「IOボックス送信設定」、「送受信の有効/無効」ファンクションを使
用して行います。
各ファンクションの使用例については「通信関数部補足」を参照して下さい。