(toppers-users 2580) H8で2つのシリアルを利用する方法は?

M.Sugiyama sugiyama @ ap.chugoku-pc.ac.jp
2007年 3月 22日 (木) 16:45:58 JST


いつもお世話になります。杉山です。


前にもGDBで、AKI3969F上で、2つのシリアルポートを利用する方法について
お伺いしておりましたが、安易にNET経由でのデバッグに切り替えて、放置
していましたが・。。。

ある事情で、2つのシリアルポートからの入出力が必要になり、幾つか試して
見たのですが、解決してません。

試してみたこと:

1.単純にソース中に
 serial_wri_dat(2,xxxxx);
System logging task is started port1.となり、
 serial_wri_dat(2,xxxxx)が正常に動作していないようです。

2.上のソースに追加して
 serial_ctl_pot(TASK_PORTID,(IOCTL_CRLF|IOCTL_FCSND|IOCTL_FCRCV)));
を追加すると、すべてのポートからの出力がport1に出力されているようです。

3.akih8_3069f/sys_config.h 147行目
#define TNUM_PORT 1
を
#define TNUM_PORT 2
に変更すると、
System logging task is started on port2.
となり、serial_wri_dat(1,xxxx)が正常に動作してないようです。

4.初期化が???と思い
cofig/h8/cpu_config.c の150行目に
SCI_initialize(USER_PORTID);
を追加してみましたが、3と結果は同じでした。

5.nmで追いかけて見る限り、sioのハンドラー関係は、sio_xx1 sio_xx2
の存在だけは確認できます。

ただしい使い方がお分かりの方、情報の提供をお願いします。