はじめに
この記事はtaniho Advent Calendar 2017の5日目の記事です.
今日は「鵤」専用の書き込み兼充電兼インターフェース基板である「メジロ」を紹介します.載っている書き込み回路と充電回路は,前回と前々回のブログを見てください.今回の記事では,メジロちゃんのインターフェース機能について紹介します.
メジロちゃん
これがメジロちゃんです.
機能
これがメジロちゃんの全機能です.
- マイコン内蔵
- uOLED液晶搭載
- USB-UART変換 x2
- LiPo1セル充電 x3
- 鵤の電源制御
- 鵤のモード制御
2つのマイコンを使う
メジロちゃんと鵤くんをつなげた状態でパソコンに接続すると,USB1ポートにマイコンが2個繋がった状態になっています.
そして,メジロちゃんと鵤くんと同時に通信をしたいということがあり,頭の悪い僕はUSBハブを内蔵させてしまいました.
メジロちゃんを接続すると,パソコンから2つのポートとして認識されます.このおかげで,「メジロちゃんから鵤くん電源ON→鵤くん書き込み→鵤くん電源OFF」という一連の作業を楽に行えるようになりました.
電源制御・モード制御
メジロちゃんに載っているマイコンが,鵤くんの電源用FETのゲート端子に接続されています.回路図はこんな感じです.
メジロちゃんをパソコンに接続し,シリアルでメジロちゃんに信号を送ることで,鵤くんの電源をON/OFFすることが出来ます.
鵤くんのモード制御も同様に,メジロちゃんから書き込みモードと実行モードを変更できるようにしています.
鵤くん書き込みのコマンドはこんな感じです.アルファベット1文字をメジロちゃんへの命令にして,鵤くんを制御しています.
- d: Power Off
- u: Power On
- w: Write Mode
- r: Run Mode
1 | echo d > /dev/serial/by-id/usb-FTDI_FT230X_Basic_UART_MEJIRO01-if00-port0 |
実際の使い勝手は最高です.次のコマンドを打つだけで,鵤くんの電源をONにして書き込み,電源をOFFにしてくれます.
1 | make flash |
uOLED液晶
昔使用したuOLEDをメジロちゃんに転用しました.
このuOLED,少し高いですが使い勝手が良いのでおすすめです.(ただしマウスに載せると壊れる可能性があるのでやめましょう)
鵤くんのLiPoから電源を供給して,uOLEDが動くようにしています.しかし,鵤くんのLiPoの容量が50mAhしか無いので,未だに使っていません.次回作では活用しようと思います.
まとめ
ということで,鵤くんのサポートをするメジロくんの話でした.
明日からのtaniho Advent Calendar 2017はマイクロマウスから離れ,今年製作した作品(?)の紹介を何回かに分けてしようと思っています.