秋月で衝動買いしたFT232BMというUSB-シリアル変換チップ。
本当はH8マイコンをコレでPCと繋いでUSBから書き換え&電源供給できるようにする予定だったんですが、チップを買って以来、機会が無くて放置してました。
もったいないので使ってみることにしました。
最近だともっと良いチップが売られてるようですね。
目次
データを見る
FT232BMはFTDI社の製品です。USBのプロトコルを一手に引き受けてくれるので、簡単にUSBシリアル機能を実装することができます。
ドライバーはこの会社のサイトからダウンロードでき、WindowsXPを始め、2000、98、Linux、MAC OS、WindowsCE版などが用意されています。
EEP-ROMを接続すると、VIDやシリアルナンバなどをカスタマイズすることも可能です。
で、何を作るか
USB-232C変換などを目的に作られているので、TXD・RXDの他に、RTS・CTS・DTRなどの制御信号を持っています。今回は本筋のシリアル機能を全く無視して、この制御信号を操作。LEDの点灯をPCからコントロールしてみたいと思います。
Pin | 概要 | 方向 |
---|---|---|
25 | OUT | TXD |
24 | IN | RXD |
23 | RTS | OUT |
22 | CTS | IN |
21 | DTR | OUT |
20 | DSR | IN |
19 | DCD | IN |
18 | RI | IN |
16 | TXDEN | OUT |
このうち入力に使えるのは、CTS、DSR、DCD、RIの4ピン。出力に使えるのは、RTS、DTR、TXDENの3ピン。でもTXDENはRS485での出力許可信号なので除外。従って出力は実質2ピンとなります。
大量のI/Oが必要な場合は面倒くさがらずにシリアルをマイコンやI/Oエキスパンダで受ければ良いわけですが、今回は簡単に試したいので、この2ピンを利用します。
TXDやRXDに信号が流れたときに点灯するLED用にTXLED・RXLEDピンが用意されてますが、これも使わないことにします。
仕様を決める
PC側
専用ソフトを作成する。RTSとDTRをON/OFF制御できるもの。どんな風に制御するかはまた次の段階で考えることにする。
USB機器側
RTSとDTRの2つの信号でLEDを制御する。FT232BMのドライブ能力はsource/sink共に2mA程度なのでトランジスタを介する。
振動モータとかもありかも。
回路図を引くの
データシートの回路図を頂きます。こうゆうのはパクるのが一番確実です。今回はバスパワーで全てまかないたいのでFigure7を参考にします。電源ラインにフェライトビーズ(?)がシリーズに入ってるみたいですが、手持ちが無いので暫定で無視。。。で、こんな感じにしてみました。
LEDとかはどれを使うか決まってないので電流制限抵抗の値は適当。ベース抵抗も適当です。
というわけで製作すっか
USBコネクタ周りとか面倒なので、古いUSBマウスをバラして再利用することにします。ケースにもなって一石二鳥です。
このうち不要な基板を取り外して、代わりに今回の回路を内蔵させます。