*nixのツール
シリアルモジュールをノートPCに接続し、OSがなんという名前を割り当てたか、を確認します。
注記 macでは、USBデバイスは
/dev/cu.usbserial-*
といった名前になります。dmesg
を使用してもわからないので、代わりに、ls -l /dev | grep cu.usb
を使って下さい。 そして、適宜、以下のコマンドを調整して下さい。
$ dmesg | grep -i tty
(..)
[ +0.000155] usb 3-2: FTDI USB Serial Device converter now attached to ttyUSB0
しかし、ttyUSB0
という物は何なのでしょうか?もちろんファイルです!*nixでは、全てがファイルなのです。
$ ls -l /dev/ttyUSB0
crw-rw-rw- 1 root uucp 188, 0 Oct 27 00:00 /dev/ttyUSB0
注記 パーミッションが
crw-rw----
の場合、udevルールが正しく設定できていません。 udevルールを参照して下さい
単にこのファイルに書き込むだけで、データを送ることができます。
$ echo 'Hello, world!' > /dev/ttyUSB0
シリアルモジュールのTX(赤色)LEDが点滅するのが見えたはずです。非常に速い速度で、ちょうど1回だけ!
All revisions: minicom
シリアルデバイスをecho
を使って扱うことは、やりやすい方法ではありません。
そこで、キーボードを使ってシリアルデバイスと通信するために、minicom
プログラムを使います。
minicom
を使う前に、設定が必要です。多くの設定方法がありますが、ホームディレクトリの.minirc.dfl
ファイルを使います。
~/.minirc.dfl
ファイルを、下記の内容で作成します。
$ cat ~/.minirc.dfl
pu baudrate 115200
pu bits 8
pu parity N
pu stopbits 1
pu rtscts No
pu xonxoff No
注記 ファイルが新しい行で終わるようにして下さい!そうでないと、
minicom
がファイルの読み込みに失敗します。
このファイルは、(最後の2行を除いて)素直に読めますが、1行ずつ順番に見ていきましょう。
pu baudrate 115200
. ボーレートを115200 bpsに設定します。pu bits 8
. 1フレーム8ビットです。pu parity N
. パリティチェックなし。pu stopbits 1
. ストップビット1ビット。pu rtscts No
. ハードウェア制御フローなし。pu xonxoff No
. ソフトウェア制御フローなし。
設定ファイルの作成を終えると、minicom
を起動できます。
$ # NOTE you may need to use a different device here
$ minicom -D /dev/ttyACM0 -b 115200
このコマンドは、minicom
に/dev/ttyUSB0
のシリアルデバイスをオープンするように伝え、ボーレートを115200に設定します。
テキストベースのユーザーインタフェース(TUI)が現れます。
これからは、キーボードを使ってデータを送信できます。何かを入力してみて下さい。TUIは、あなたの入力をエコーバックしないことに気をつけて下さい。 しかし、キーストロークごとにシリアルモジュールのTX(赤色)LEDが点滅するのが見えるでしょう。
minicom
コマンド
minicom
は、キーボードショートカットによるコマンドを受け付けます。Linuxでは、ショートカットはCtrl+A
で始まります。
macでは、ショートカットはMeta
キーで始まります。便利なコマンドを下記に示します。
Ctrl+A
+Z
. MinicomコマンドのまとめCtrl+A
+C
. スクリーンのクリアCtrl+A
+X
. 終了とリセットCtrl+A
+Q
. リセットなしの終了
注記 macユーザーへ:上記コマンドの、
Ctrl+A
はMeta
で置き換えて下さい。