• ベストアンサー

COMポートから送られてくる情報を表示するプログラム

C言語またはC++を使ってCOMポートから送信されてくる情報を表示するプログラムを作成したいのですが、どんな感じのプログラムを打てばいいのか分かりません。もしわかる人がいましたら教えてください、できればプログラム付で教えてもらえればうれしいです。よろしくおねがいします。

質問者が選んだベストアンサー

  • ベストアンサー
  • Fooky
  • ベストアンサー率71% (59/82)
回答No.2

OSによってかなり変わるんじゃないですかね。 こういう、デバイスの操作っていうのは。 しかし、結局どのOSでもやるべきことは、 1 COMポートのハンドルの取得 2 接続されている機器に合わせてCOMポートのパラメータ設定 3 読みだし/書き込み じゃないでしょうか。 とりあえず、UNIX系のOSではこんな感じ。 ただし、/dev/ttyS1の部分は、OSによって かなり変化します。 int fd; struct termios term; char c; /* COM1と接続されているファイル(/dev/ttyS1)のオープン */ fd = open("/dev/ttyS1",O_RDWR|O_EXCL); /* COM1の現在のパラメータを取得 */ tcgetattr(fd,&term); /* 通信速度を9600ボーに設定 */ cfsetispeed(&term, B9600); cfsetospeed(&term, B9600); /* 1文字8ビット、ストップビットを2に */ set(term.c_cflag, CS8|CSTOPB); /* さらに必要な設定をしていく */ ..... /* 設定したパラメータを実際にCOM1に適用 */ tcsetattr(fd,TCSANOW,&term); /* 1文字読み込み */ read(fd, &c, 1); /* 1文字書き出し */ write(fd, &c, 1);

その他の回答 (1)

  • coolguys
  • ベストアンサー率18% (351/1917)
回答No.1

CommポートはReadFileで読み出すことが出来ます。

参考URL:
http://www.na.cache.waseda.ac.jp/~suzuta/