ホームページ  >  記事  >  運用・保守  >  Linuxのシリアルポートとはどういう意味ですか?

Linuxのシリアルポートとはどういう意味ですか?

WBOY
WBOYオリジナル
2022-05-07 16:08:133501ブラウズ

Linux シリアルポートとは、シリアルインターフェースの略で、シリアル通信を利用した拡張インターフェースです。シリアルポートはコンピュータでよく使われるインターフェースで、接続線が少なく、通信が簡単であるという特徴があります。双方向通信を実現するために、Linux はシステム コール open() または close() を使用してシリアル ポートを開いたり閉じたりすることができます。

Linuxのシリアルポートとはどういう意味ですか?

#このチュートリアルの動作環境: linux7.3 システム、Dell G3 コンピューター。

Linux シリアル ポートとは何ですか?

シリアル インターフェイス (シリアル インターフェイス) は、データを 1 ビットずつ順番に送信することを指します。シンプルな通信線が特徴です。伝送路を利用することで双方向通信が可能(電話線をそのまま伝送路として利用できる)のためコストが大幅に削減でき、特に長距離通信に適していますが、伝送速度が遅くなります。

メッセージの各データを1ビットずつ順番に送信する通信方式をシリアル通信といいます。

シリアル通信の特徴は次のとおりです。

  • データ ビットの送信はビット順に実行され、少なくとも 1 本の伝送ラインで完了できます。

  • コストは安いですが、通信速度が遅いです。シリアル通信の距離は、数メートルから数キロメートルまでの範囲に及びます。

  • シリアル通信は、情報伝送の方向に応じて、さらに単信、半二重、全二重に分類できます。両面印刷です。

シリアル ポートは、コンピュータ上のシリアル通信用の物理インターフェイスです。コンピュータの歴史の中で、シリアル ポートはコンピュータ、端末装置、さまざまな外部デバイスを接続するために広く使用されてきました。イーサネット インターフェイスと USB インターフェイスもシリアル ストリームでデータを送信しますが、シリアル ポート接続は通常、RS-232 標準と互換性のあるハードウェアまたはモデム インターフェイスを指します。

シリアルインターフェースはシリアルポート(通常はCOMインターフェースと呼ばれます)と呼ばれ、シリアル通信を利用した拡張インターフェースです。シリアルポートはコンピュータで一般的に使用されるインターフェースで、接続線が少なく通信が簡単なため、広く使用されています。シリアルポートの特徴は、通信線がシンプルで、一対の伝送線だけで双方向通信ができるため大幅なコスト削減が可能で、特に長距離通信に適していますが、伝送速度が遅くなります。 Linux にも多数のシリアル ポートがあります。この記事では、Linux でのシリアル ポートについて説明します。

#1. シリアル ポートに必要なヘッダー ファイル

    1: #include /*標準入出力定義*/
  • 2: #include /*標準関数ライブラリ定義*/
  • 3: #include /*Unix 標準関数定義*/
  • 4: #include
  • 5: #include
  • 6: #include /*ファイル制御定義*/
  • ##7: #include /*POSIX 端末制御定義*/
  • 8: #include /*エラー番号定義*/
  • ##2. シリアル ポートの開閉
##シリアル ポート デバイス ファイルの操作は、基本的に他のファイル操作と同じです。システム コール open()、close() を使用して、シリアル ポートを開いたり閉じたりできます。

Linux では、シリアル ポート ファイルは /dev の下にあります。たとえば、シリアル ポート 1 は /dev/ttyS0、シリアル ポート 2 は /dev/ttyS1 です。

Open()、close() システム コール プロトタイプ

1: #include
2: #include
3: #include
4: int open(const char *path, int oflags);
5: int open(const char *path, int oflags, mode_t mode);
6: #include
7: int close(int fildes);
8: 实例:打开串口ttyS0。
9: int fd;
10: /*以读写方式打开串口*/
11: fd = open( "/dev/ttyS0", O_RDWR);
12: if (-1 == fd){ 
13: /* 不能打开串口一*/ 
14: perror("open serial port error");
15: }

3. シリアル ポートの設定

シリアル ポートの設定にはボー レートが含まれます設定と検証ビット、ストップビットの設定。シリアルポートの設定では、主にstruct termios構造体のメンバーの値を設定します。

struct termios の構造は次のとおりです

1: #include
2: struct termio
3: {
4: unsigned short c_iflag; /* input options输入模式标志 */
5: unsigned short c_oflag; /* output options输出模式标志 */
6: unsigned short c_cflag; /* control options控制模式标志*/
7: unsigned short c_lflag; /* local mode flags */
8: unsigned char c_line; /* line discipline */
9: unsigned char c_cc[NCC]; /* control characters */
10: };

関連する推奨事項:「

Linux ビデオ チュートリアル

以上がLinuxのシリアルポートとはどういう意味ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。