(toppers-users 2818) Re: AKIH8-3069FでTCP/IPとシリアルを使ったタスクの不具合

ABE Tsukasa abe @ jo.tomakomai-ct.ac.jp
2008年 10月 17日 (金) 08:19:31 JST


山田さん

苫小牧高専、情報工学科の阿部です。
今後ともよろしくお願いします。

>はじめまして、福岡の山田と申します。
>主に使用している関係上、フリーメールからの投稿で失礼します。
>趣味でμITRONの勉強をしており、TOPPERS/JSPを使わせていただいています。
>
>現在、TCP/IP 通信を使ったタスクとシリアル通信を使ったタスクを
>併用した際に、シリアル通信を使ったタスクが止まっている *ような*
>現象が発生しておりまして、どう調査して良いかがわからず困っております。
>
>以下に状況を説明させていただきますので、同じような経験をされた
>方や、思い当たる事がおありの方ががいらっしゃいましたら、
>何でも結構ですのでアドバイスをいただけませんでしょうか?

(1) TINET のコンパイル時のコンィギュレーションパラメータの設定は、
    どうなっているでしょうか?

>■プログラム概要
>  次の2つのタスクをメインタスクからタスクA、タスクBの順に起動します。
>
> タスクA:AKIH8-3069F が TCP/IP のクライアントになり
>           HTTP サーバからデータを収集します。
>
> タスクB:AKIH8-3069F から装置Aにシリアル通信でタスクAで収集した
>           データを送信し、装置Aからの応答を受信します。
>
>           (装置Aは AKIH8-3069F からデータを受信すると
>            固定長の応答を返信します。(ハンドシェイク))
>
>           タスクBは装置Aからの固定長の応答を待ち、応答を受信したら
>           永久ループにて上記処理を繰り返します。
>
>  ※タスクA と タスクB とのデータのやり取りは、4KBのグローバル変数を
>    使用しています。

(2) タスク A と タスク B の同期はどのように行っているのでしょうか?

>■不具合現象
>  ハンドシェイクを20回ほど行った後、
>  タスクBにてデータ送信が行われなくなります。

(3) WEBサーバ(HTTP サーバ)が、TIME WAIT 状態になっていませんか?

--
.\" 苫小牧工業高等専門学校 情報工学科 教授 阿部 司
.\" 〒059-1275 北海道苫小牧市字錦岡443番地
.\" E-mail: abe @ jo.tomakomai-ct.ac.jp  TEL/FAX: 0144-67-8937