[Armadillo:02105] Re: シリアル受信でデータ取りこぼし

Hiroki Nakamura email@hidden
2007年 9月 27日 (木) 16:20:58 JST


お世話になっております。

> com1フロー制御を使用して、運用時に想定される
> 最大データサイズ18Kbyteを送受信できる事が確認できました。
> (とりあえずサイズのみ確認)

すいません。
確認方法が誤っており、問題は解決出来ておりませんでした。
(com1(フロー制御有り)を使用した場合でも、大量データ(600byteほど)は
 取りこぼしている。)



更に確認致します。

1.フロー制御を用いる場合のtermiosへの設定は、以下のように論理和に
 CRTSCTSを追加すればよいと認識しております。

struct termios newtio;

newtio.c_cflag = BAUDRATE | CRTSCTS | CS8 | CLOCAL | CREAD;
tcflush(fd, TCIFLUSH);
tcsetattr(fd,TCSANOW,&newtio);
(↑一部、抜き出したもの)

  他にも設定が必要な箇所は、あるのでしょうか?


2. com1及びcom2を入れ替えるための手順としては、教えて頂いた
 http://armadillo.atmark-techno.com/howto/free-com1を参考に
 以下を行いました。
 手順に誤りがあるようでしたら、ご指摘ください。

 2-1. hermit-at-winを使用して、開発者サイトにUPしてあった
  「loader-armadillo9-ttyAM1-v1.1.10.bin」をArmadillo-9に書き込み。
  ※hermit-at-winに対する設定は以下の通り。
  ・Region ---> bootloaderを指定
  ・ForceLockedをチェック

    ===>書き込みは正常終了。

 2-2. hermit-at-winを使用して、開発者サイトにUPしてあった
  「initrd-1.1.2.img.gz」をArmadillo-9に書き込み。
  ※hermit-at-winに対する設定は以下の通り。
  ・Region ---> userlandを指定
  ・ForceLockedをチェックしない。

    ===>書き込みは正常終了。
  
 2-3. Armadillo-9の/etc/inittabの以下の行を変更

   #T0:23:respawn:/sbin/getty -L ttyAM0 115200 vt100 ---> 無効
   T1:23:respawn:/sbin/getty -L ttyAM1 115200 vt100 ---> 有効


  起動時にブートログ及びログイン画面がcom2から出力されていることは、
 確認しています。また、同時にcom1からはデータが出力されていないことを
 確認しています。

3.フロー制御が行われているかどうかを確認する方法がありましたら、
 教えて下さい。
 (com2を使用していた時と、ほとんど変化がないため、フロー制御出来て
  いないのでは?と考えています。)

以上、
よろしくお願いします。




armadillo メーリングリストの案内