早速デバイスを入手。秋月では4種のデバイスを取り扱っている。18ピンタイプの18M2と14ピンタイプの14M2、
28ピンタイプの28X2。こちらの刻印はPIC型番であるが、秋月電子の説明では内容はPICAXEとの事だ。
さて、手始めに8PINタイプでも使うとするか。PIC12F1840(
pdf)がベースとなっているので内部は32MHzで動作し、AD変換やI2Cも使える。
書き込み部分のインターフェースはこのような単純な構成。抵抗がこの様に構成されている理由は、マニュアルなどの情報からRS232Cを直接接続して動作出来るようにしていると推測する。
接続については、専用ダウンロードケーブルを使わないとダメかと思われたが、色々と試していくうちに、一般的なUSBシリアル変換器などを利用することができるようだ。
その場合は、通信ロジックを反転させて接続すると動作する。
書き込みが開始されて、
14秒ほどで書き込みが終了。動いてしまえば「なあんだww」なのであるが、論理反転が必要と分かるまでに、実際は半日以上を費やしているw
これで動かなかったらダウンロードケーブルを買い求めようと思ったのだが、コメントにレガシーRS232Cの記事のヒントがあって、それには直接RS232Cをデバイスと接続し、PICの保護クランプダイオードを当てにした回路となっていたので、論理反転と気がついた次第だ。
無事LEDチカチカができるようになった。
PICAXEのケーブルもFTDIのデバイスを使っているが、おそらくドライバに細工がしてあって、論理反転とかをしているのだろう。
またFTDIのMprog(現在はFT_Progが良い)というツールを使って、論理変更をすれば、ハードウェアによる反転回路も要らないと思うが、私の場合はFT232Rを使いまわすので、あえて書き換える事は行わなかった。→追記でそのやり方を記載
こんな回路で接続。実際には74HC14を使った。空きゲート処理は実験なので端折ったが、一過性の実験なので、そんなに神経質になることもないだろう。
電源については、8ピンから18ピンまでは5Vだが、28ピンと40ピンは3.3Vなので、USBから電源を供給する場合は注意が必要だ。
トランジスタ式も作ってみた。2SC1815などの汎用NPNトランジスタと数個の抵抗があれば良い。
追記1(5/12)
FTDIのツールを使ってFT232Rの内容を書き換えれば、ハードウェアによる反転回路が無くても動作させることが出来る。ツールはFT_Progというユーティリティを使用する。昔で言うMProgと殆ど同じと思われる。ダウンロードはFT_Progのページを訪問し、上記のリンク部分をクリックすれば良い。動作させるにはマイクロソフト.netフレームワークが必要だが、同一ページにリンクがあるし、大抵のPCは既に入っているだろう。
このツールは、電流変更やID設定など、痒いところに手が届くツールだが、それゆえに設定リスクもあるので、くれぐれも自己責任で使用をお願いしたい。
まずFT232Rを接続して認識後、FT_Progを起動。Devices→Scan and Parseを選択。
するとデバイスが自動的に識別される。色々な細かい設定ができるが、今回の目的は通信線の論理を反転させるので、上記赤枠を参考に設定を変更する。最後に稲妻のアイコンをクリックすると、FT232Rの書き込みダイアログに移行する。
Programをしてユーティリティを終了する。USBに接続しているFT232Rは一度外して再度接続する。新たなCOMポートに変更されるので、デバイスマネージャなどでCOMの番号を確認しておく。
これで、さらにスッキリした配線になる。なお、FT232Rを使いまわす時などは、設定を元に戻すとか、モジュールにシールでも貼っておいたほうがトラブルがない。
書き込み速度は、簡単な解析では4800bpsの16ms周期で書き込んでいる模様。
プログラムの大小に関わらず、プログラムを転送しているように見える。それで少ピンの08M2でも14秒程度の書き込み時間が掛かる。とは言っても、このデバイスの目的は教育用途なので、書き込み速度は妥協できる。
PICAXEへのダウンロード自作についてまとめ:
1.FT232RなどのUSBシリアルのデバイスを使う時は、通信線をゲートなどで反転させれば、
そのまま動作出来る。
2.FT232Rなどを再設定できるツール(FT_Prog)で送受信部分の論理を反転させると、
直接PICAXEに接続できる。
3.レガシーなRS232Cの信号だけを利用するだけでもできる。製作例。
という訳で、手持ちのFT232Rがあれば専門のダウンロードケーブルを使わなくても、書き込める事が分かっただけでも情報としては有効だろう。
追記2(5/21)
最近のコメント