2018/02/13

Windows 10 上の Ubuntu から COM ポートにアクセスする方法

このご時世にシリアル通信というのも何ですが、組み込み関係等では現役だったりします1

私は Linux 上の screen をよく使います。ただ、諸事情により Windows で開発しなければならない場合もあります。

そんな時は、Tera Term を使っていたのですが、Windows 10 では Linux が動くようになったので、Windows 10 上でも screen が動くか試してみました。

Ubuntu2 をインストールする

Linux のインストールは、出てきた当初より格段に簡易化されました。 以下の手順に従えば、簡単にインストール出来ます。

Install the Linux Subsystem on Windows 10

COM ポート を確認する

Ubuntu 上から確認する方法がないかと思ったのですが、dmesg が使えなかった時点で諦めて、デバイスマネージャーを使ってしまいました。

デバイスマネージャーの「ポート(COM と LPT)」という項目からお目当ての COM ポート番号を確認します。

参考

COM Port Access in WSL · Issue #1929 · Microsoft/WSL · GitHub

接続する

Ubuntu を立ち上げると、 screen はデフォルトでインストールされているようです。 以下のように接続します。

$ sudo screen /dev/ttyS4 115200
  • /dev/ttyS? 接続先
    数字を先ほど確認した COM ポートの番号にします。
  • 115200 通信速度

sudo を付けなければいけないのがイマイチです。

せめて、特定のグループに割り当てられてれば良いのですが、以下のように root になっていて、グループへのアクセス権はありません。 この手のデバイスファイルに chmodchown するのは後でトラブルになりやすいので、大人しく sudo しています。

$ ll /dev/ttyS4
crw-r----- 1 root root 4, 69 Feb 12 13:49 /dev/ttyS5

終了方法

Screen の詳しい使い方は参考リンクを見ていただくとして、とりあえず終了方法だけ書いておきます。

Ctrl - a3 の後に k

参考

screen 使い方 - Google 検索

  1. とはいえ、シリアル通信ケーブルを使うのではなく、USB がほとんどですが 
  2. 私は Ubuntu にしましたが、他のディストリビューションでも動くかもしれません 
  3. 私は普段 Ctrl - t に割り当てています。~/.screenrc を作成して変更した方が使いやすいかもしれません。 
?

0 件のコメント: