*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で置き換えて下さい。