[Armadillo:06062] Armadillo-440でシリアル通信のボーレートを変更する方法について

和佐田 翔一 email@hidden
2010年 11月 2日 (火) 17:00:41 JST


はじめまして、和佐田と申します。

現在Armadillo-440にAndroidをのせてH8マイコンとシリアル通信を行おうと
考えています。

そこでArmadillo-440からH8マイコンに対して送信する際のボーレートを19200bps
などに変更出来るようにしたいのですが、9600bpsからうまく変更することがで 
きません。

下記にシリアル通信の設定を行っているソースを記載いたします。

----------------------------------------------------------------------------------
     int fd;
     char snd_buf[5];
     struct termios oldtio, newtio;

      fd = open("/dev/ttymxc1", O_RDWR | O_NOCTTY);

      tcgetattr(fd, &oldtio);
      newtio = oldtio;

      bzero(&newtio, sizeof(newtio));

      newtio.c_cflag = CS8 | CLOCAL | CREAD;

      newtio.c_iflag = IGNPAR;
      newtio.c_oflag = 0;
      newtio.c_lflag = 0;

      newtio.c_cc[VTIME] = 1;
      newtio.c_cc[VMIN]  = 0;

      cfsetospeed(&newtio, B19200);
      cfsetispeed(&newtio, 0);

      tcflush(fd, TCIOFLUSH);
      tcsetattr(fd,TCSANOW,&newtio);

      for(i = 0; i < 5; i++)
      {
              snd_buf[i] = 'A';    // マイコン品番要求電文セット
       }
       write(fd, snd_buf, 5);

      tcsetattr(fd, TCSANOW, &oldtio);
      close(fd);

---------------------------------------------------------------------------------------

どなたかボーレートの変更方法をご存知の方がいらっしゃいましたら教えていた 
だけないでしょうか。
よろしくお願いいたします。



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