OSXでUSBシリアル変換モジュールを使う

マイコンからのUART出力をMacのターミナルで表示する方法に関する備忘録。

マイコンのUART出力に関しては以下の投稿の前半部分を参照
MPLABXでPIC開発: シミュレータでprintf出力する方法

自身はずいぶん昔にAitendoでUSBシリアル変換モジュールを購入していますが、今だとAmazonで安く買えます。

いろんな商品ありますが、ポイントはCP2102というチップを搭載していれば、どれも以下の方法でうまくいくはずです。(ピン配列などは違う可能性が高いので注意)

cropped_20190201132042_20190201_131624-0

cropped_20190201132112_20190201_131716-0

まずはOSXの場合、標準で認識して。。と思っていたらダメでした。ドライバをダウンロードしてインストールします。昔の投稿を見ると、認証が云々とあって難しそうでしたが、最近のドライバであればインストールするだけでOKです。

CP210x USB - UART ブリッジ VCP ドライバ

モジュールをUSBに差し込む前にターミナルでTTYデバイスを確認します。

> ls -l /dev/tty.*
crw-rw-rw-  1 root  wheel   21,   0  1 24 00:25 /dev/tty.Bluetooth-Incoming-Port

次にモジュールを差し込んでからもう一度上記コマンドを実行します。

> ls -l /dev/tty.*
crw-rw-rw-  1 root  wheel   21,   0  1 24 00:25 /dev/tty.Bluetooth-Incoming-Port
crw-rw-rw-  1 root  wheel   21,  12  2  1 13:16 /dev/tty.SLAB_USBtoUART

ドライバが正しく動作していれば、tty.SLAB_USBtoUARTが表示されるはずです。

あとは、CUコマンドでシリアル通信を開始します。

> sudo cu -s 19200 -l /dev/tty.SLAB_USBtoUART
Connected.
:

-sで通信速度、-lでデバイスを指定します。相手と通信速度を合わせておかないと文字化けします。

-->