広告FT232RLを使ってPICライターを作る新しく買ったパソコンを見てみたらなんとシリアルポートがなかった。USBを使ったPICライターが必要になってしまった。世の中にはFT232RLというUSB-シリアル変換チップがあるので、を使ってPICライターを作ってみた。コンセプトもちろんLinuxで使える。いうプログラムがあるのでこれを使う(Debianの公式パッケージあり)。対応しているのでWindowsマシンでも使える。電源はUSBから取る18ピンと8ピン(12xx系)に書き込める将来的には28ピンとか40ピンも書き込めるようにすると思う。)に対応しているので、これらの回路を参考にする。PICの書き込みには12V(12.6V)が必要なのでこれをUSBの5Vから作る必要がある。」という5Vから12Vを作るチップを使った。実際の回路は下図の通り。USBーシリアル変換モジュールは描いていない。参考にさせてもらった。このライターはRCDライタ(WinPICではCOM84)として認識されるようだ。あるようなレベル変換用のダイオードは必要がないのでかなりすっきり。RS232Cは、負のとき「1」で正のとき「0」なので、USBーシリアル変換モジュール(FT232RL)の出力はRS232Cと反対。それで、インバータ(NOT)を入れて反転している。MAX662のところに付いているダイオードD2は12Vを12.6Vにするために付けている。指定はないけれど電流を多めに(100mA以上?)流せるものが良い。MAX662のところに付いているコンデンサ(C3,C4)は0.22uFから1uFの間ならいくつでも良い。電解コンデンサなど極性があるものは極性に注意する。プリントパターン一応参考のためにプリントパターンも。回路図では分からないけど74xx04の電源を5Vラインから取ることを忘れない。できあがり今のところPIC16F84でしか試していないけど、おそらく他のものでも書き込めるはず。この書き込み機は上のプリントパターンを参考にユニバーサル基板で作ったもの。上のプリントパターンと配置が違うけど、配線は同じ5Vから12Vをつくり出しているMAX662はUSBーシリアル変換モジュールの下に隠れている。Linuxで書き込むDebianの場合、このライターをつなぐと「/dev/ttyUSB0」などにつながったことになる。/dev/ttyUSB0とやって書き込む。ここでは「test1.hex」と言うのが書き込むプログラム。pic16f84」の部分がいらない場合もある。おわりに専用の書き込みプログラムを作れば74xx04はいらなくできるのでもっと回路は簡単になるだろうけど、多くの人が使っているプログラムで使えた方が便利だからこれで良いのだろうと思う。WinPICは新しいデバイスにもすぐに対応するので、これで書き込めることは重要だと思う。Linuxで使う場合もPICProgなどに対応しているので便利だろう。ちなみに「JDMライタ」として認識させたかったら、「IC3D」(TXD用)を取って直結すればいいはず。