RCDライタ組み立てキット
RCDkite

ハーフマットで取り扱っているRCDライタ組み立てキットの解説ページです。


RCDライタ(完成写真、この組立キットははんだ付けが必要です)

RCDライタ組み立てキット(RCDkite)の回路図

 このライタはパソコンのRS232ポートが低出力の場合は、不向きです。
 従来のRCDライタから変更した箇所があります。1つは、R1とR2が1.5kΩから1kΩへと変更しました。もう1つは、RCDライタのICソケットを20ピンとし、I2Cデバイス用のデータの配線を廃止しました。I2C用の配線を廃止した理由は、そのままではPIC16F627A/628A/648Aへのプログラム書き込みができないからです。また、I2Cデバイスに書き込むために配線を残しておいたとしても、そのままではI2Cデバイスに書き込むことはできず、別途I2C用のアダプタが必要になります。それで、PICマイコン専用の配線に変更したわけです。

このソフトはRCDライタを自動的に検出します。RCDライタ用に
書き込みのタイミングを最適化してありますが、現在のところ
JDMプログラマやPICライタ5号機には対応していません。
サポートしているPICは、つぎのとおりです(バージョン0.7.5)。
PIC10F200/202/204/206*/220/222
PIC12F508*/509*/510
PIC12F629*/635*/675*/683*
PIC16F54*/57*/59*
PIC16F505*/506
PIC16F627A*/628A*/648A*
PIC16F630*/636*/676*
PIC16F684*/685/687/688*/689/690
PIC16F818/819*
PIC16F84A*
PIC16F87*/88*

注:*は動作確認済

[Home]


注意

 このライタはパソコンのRS232ポートが低出力の場合は、不向きです。
 PIC12F629/675のIntOSCモードの問題(電源を制御できないJDMプログラマでプログラム書きこみをすると、再書き込みで失敗する問題)の解決方法として、VDDの適用を遅延させる追加回路を公開しましたが、JDMプログラマでVDDをかんたんに制御できる方法はほかにないのでしょうか? 思案すること半日、いいアイデアがうかびました。TxDが反転すると、VPPもVDDも連動するようにすればいいわけです。これなら、VDDの適用を遅延させるのはかんたんですね。使用している部品は、抵抗(R)とコンデンサ(C)とダイオードだけなので、RCDライタと名づけました。アルファベット順ならCDRになるのでしょうが、CD-Rとにていますし、CRDだと定電流ダイオードでまぎらわしいので、五十音順にしました。

[Home]

RCDライタの回路図

 RCDライタの回路図です(2003年11月28日作成)。試作機をユニバーサル基板で組み立てて、動作確認をしてから回路図をおこしました。順序が逆のようですが、実地に動作確認をしながらつくっていきましたので、このほうが確実です。

LVPモードをもっているデバイスのために、PGMピンをGNDにプルダウンするように回路図を修正しました(2004年2月1日)

動作の説明

 C1はチャージポンプの電解コンデンサです。TxDが極性反転すると、D7をとおしてC1にチャージされた電圧は、0Vから一気にGNDとTxDとの電位差の2倍にスイングし、D7によってVppに必要な13Vに制限されます。VddはTxDの反転と同時に形成されますが、C3によって遅延します。PGDとPGCは、D1、D2、D3、D4によってクランプされ、Vdd(5V)とGND(0V)のそれぞれの電位でダイオードの電圧降下分の範囲内に収斂します。これらのダイオードは、PICのラッチアップを防止する役割をもっていますが、5.1Vのツェナダイオードで置き換えることももちろん可能です。PGDとPGCはまた、Vddの形成にも寄与しています。したがって、「IC-Prog」のハードウェアチェックを実行すると、LED1はDATA、CLOCK、MCLRのいずれのチェックでも点灯するでしょう。

 パソコンのシリアルポートの出力がよわいばあい、デバイスによってプログラミングに必要な電圧と電流がそれぞれことなりますので、デバイスによってプログラム書きこみで失敗したり、あるいはどのデバイスも読み書きできないばあいがあります。そのときは、R3を100オームから1kオーム程度のものにとりかえてためしてみてください。改善されることがあります(R3を10kオーム程度の半固定抵抗にしてもいいでしょう)。また、電流不足によってVppやVddの電圧が低下することがあります。入手可能であれば、D6を5.6V、D7を14Vのツェナダイオードに変更してみてください。改善されることがあります。

動作確認済みデバイス

 RCDライタとIC-Prog(1.05C、日本語化パッチ適用)をつかって、PICへのプログラム書きこみテストをしました。パソコン環境は、マザーボードがGIGABYTEのGA-6IEMで、CPUがセレロンの1.2GHz、メモリ512MB、HDD40GB、OSはWindows98SEです。IC-Progの設定は、ハードウェアがJDMプログラマ、I/Oの遅延は10、インターフェースはダイレクトI/Oです。つまり、ほとんどIC-Progの起動時のデフォルト状態です。ただし、プログラミングに必要な高電圧と電流を保持する時間が長いワンタイム・プログラミング(OTP)のデバイスに書きこむことはライタの性質上、制約がありますので、推奨しません(書きこみに失敗する可能性が高くなります)。フラッシュタイプのデバイスでの使用を推奨します(2004年1月5日補足)。詳細は、下記の対応デバイス一覧表をご覧下さい。

その他 メモリサイズの大きいデバイスでは、プログラミングに要する時間に反比例して電圧が降下していくので、IC-Progでは「ダイレクトI/O」をできるだけ使用するようにします(2004年1月5日補足)。また、1kワード以上のメモリをもつデバイスに書き込む場合は、C1の容量を220μF〜470μFのものにとりかえるとよい結果が得られるかもしれない(2004年8月26日)。

 RCDライタを公開してから1年がたちました。この間、おおくの方からご質問やご意見、励ましのメールをいただきました。とくに、海外の方々から質問メールが多数寄せられました。質問のおおくは、海外では日本とちがってPIC16F84AよりもPIC16F628がよく使われているようで、RCDライタではPIC16F628に安定した書き込みができないというものでした。また、マイクロチップ社は、1kワードをこえるプログラム・メモリをもつ8〜14ピンの高機能少ピンPICを開発し、販売をはじめました。RCDライタは、当初、1kワード程度のプログラム・メモリをもつPICでの使用を想定していましたが、こうした事情から、私は、安定した書き込みのためにRCDライタのチャージポンプ・コンデンサC1の容量を470uFに変更することを推奨します(2004年10月9日)。

注意! RCDライタは、チャージポンプ回路によってPICのプログラミングに要求される高電圧を生成しています。したがって、コンデンサへの充放電のスイッチング動作によって、瞬間的に過電流、過電圧をふくむサージ電流が発生します。動作開始時にはシリアルポートのGNDラインからの充電電流が発生し、とくに、パソコンの電源を入れたままRCDライタをシリアルポートに活線挿抜(かっせんそうばつ)すると、過渡的に突入電流が流れます。たいていのパソコンのシリアルポートはRCDライタ程度のサージ電流で壊れることはありませんが、絶対に壊れないと私は保証することはできません。それで、もしあなたのパソコンのシリアルポートのサージ電流保護が貧弱であなたのパソコンが壊れはしないかとの不安を感じる場合は、サージ保護回路をシリアルポートに設けるか、RCDライタの使用を中止してください。わたしは、参考として、下図のように過電流を抑制する200オームの抵抗R6を、チャージポンプのコンデンサに直列に接続するマイナーチェンジをRCDライタの回路に対して行いました。この修正は、RCDライタへ外部電源を供給するなど取り扱いの不注意や落雷等の影響からシリアルポートを保護するためのものではありません。貴重なアドバイスをくださった、スオミの国の Lauri Vikström 氏に感謝します(2004年12月24日)。

[Home]

対応デバイス一覧表
(2006年2月15日現在)

デバイス
コードメモリ
必要な電圧
IC-Prog
WinPic
PICProg4U
名称
ワード
MCLRピン
100uF
470uF
100uF
470uF
470uF
備考
PIC10F200
256x12
12.5 <= VPP <= 13.5
N/A
N/A
N/A
N/A
R
(3)
PIC10F202
512x12
12.5 <= VPP <= 13.5
N/A
N/A
N/A
N/A
R
(3)
PIC10F204
256x12
12.5 <= VPP <= 13.5
N/A
N/A
N/A
N/A
R
(3)
PIC10F206
512x12
12.5 <= VPP <= 13.5
N/A
N/A
N/A
N/A
R
(3)
PIC12F508
512x12
12.5 <= VPP <= 13.5
J
J
N/A
N/A
R
(6)
PIC12F509
1024x12
12.5 <= VPP <= 13.5
J
J
N/A
N/A
R
(6)
PIC12F629
1024x14
VDD + 3.5 (Max 13.5)
J
J
C/R
C/R
R
PIC12F635
1024x14
10 <= VPP <= 12
N/A
N/A
C/R
C/R
R
(1)
PIC12F675
1024x14
VDD + 3.5 (Max 13.5)
J
J
C/R
C/R
R
PIC12F683
2048x14
10 <= VPP <= 12
N/A
N/A
C/R
C/R
R
(2)
PIC16F54
512x12
12.5 <= VPP <= 13.5
N/A
N/A
N/A
N/A
R
PIC16F57
2048x12
12.5 <= VPP <= 13.5
N/A
N/A
N/A
N/A
R
(3)
PIC16F59
2048x12
12.5 <= VPP <= 13.5
N/A
N/A
N/A
N/A
R
(3)
PIC16F627
1024x14
VDD + 3.5 (Max 13.5)
J
J
C/J/R
C/J/R
R
PIC16F627A
1024x14
10 <= VPP <= 13.5
N/A
N/A
C/J/R
C/J/R
R
(3)
PIC16F628
2048x14
VDD + 3.5 (Max 13.5)
N/A
J
C/J/R
C/J/R
R
PIC16F628A
2048x14
10 <= VPP <= 13.5
N/A
N/A
C/J/R
C/J/R
R
(3)
PIC16F630
1024x14
VDD + 3.5 (Max 13.5)
J
J
C/J/R
C/J/R
R
PIC16F636
2048x14
10 <= VPP <= 12
N/A
N/A
C/R
C/R
R
(1)
PIC16F648A
4096x14
10 <= VPP <= 13.5
N/A
N/A
N/A
C/J/R
R
(3)
PIC16F676
1024x14
VDD + 3.5 (Max 13.5)
J
J
C/J/R
C/J/R
R
PIC16F684
2048x14
10 <= VPP <= 12
N/A
N/A
R
R
R
(1)
PIC16F688
4096x14
10 <= VPP <= 12
N/A
N/A
N/A
C/R
R
PIC16F818
1024x14
VDD + 3.5 (Max 13.5)
J
J
C/J/R
C/J/R
R
(4)
PIC16F819
2048x14
VDD + 3.5 (Max 13.5)
J
J
C/J/R
C/J/R
R
(4)
PIC16F84
1024x14
12 <= VPP <= 14
J
J
N/A
N/A
N/A
(5)
PIC16F84A
1024x14
12 <= VPP <= 14
J
J
N/A
N/A
R
(5)
PIC16F87
4096x14
VDD + 3.5 (Max 13.5)
N/A
N/A
J
J
R
(4)
PIC16F88
4096x14
VDD + 3.5 (Max 13.5)
J
J
J
J
R
(4)

N/A
RCDライタの側、またはソフトウェアの側でこれらのデバイスには対応していません。
ピン数
結果
記号
ソフトウェアのインターフェースの設定
8-pin以下
成功
J
JDM Programmer 2
14-pin
半々
C
COM 84
18-pin以上
失敗
R
RCD Programmer

(1)WinPicでは、クロックとMCLRの両方をデバイス内蔵のものに設定したばあい、プログラム書き込みは成功しますが、プログラム書き込み終了後、デバイスから正しく読み込んだりベリファイすることができなくなることがあります。しかし、安心してください。デバイスへの再書き込みはできます。

(2)PIC12F683のデバイスIDは、「0x0460」のはずなのですが、マイクロチップ社のデータシートには、どういうわけか、「0x1280」と誤って記載されています(2004年10月9日現在)。注:マイクロチップ社は2004年10月20日付の「DS41204D」以後、この誤記を訂正しています。

(3)アダプタを使用するか、ICSPの手法を使用してください。アダプタの製作は、PIC10F2xxはここ、PIC16F57/59はここ、PIC16F627A/628A/648Aは下記を参照してください。

(4)WinPicでは、「Vddの上昇を50us待ってからVppを適用します」(raise Vdd before MCLR=Vpp)のオプションを有効にしてください! PIC16F88への再書き込みで失敗する場合は、WinPicを再起動してください!

(5)これらの古いデバイスでは、IC-ProgかPICProg4Uを使用してください。IC-Progで「A」がつかないPIC16F84への書き込みで失敗する場合は、IC-Prog1.05(A、C、Dのついていないバージョン)で試してください。RCDライタではWinPicを使用してPIC16F84、PIC16F84Aにただしく書き込むことができませんので、かならずIC-ProgかPICProg4Uを使用してください。

(6)IC-ProgもWinPicもこれらのデバイスに対応していませんが(2005年2月現在)、IC-Progを使用して書き込む方法はあります。ここを参照してください。PICProg4UではRCDライタで書き込むことができます。

PIC16F627A/628A/648A 用のアダプタの製作法
18ピンのICソケットを用意します。

ICソケットの11番、16番、17番の3ヵ所の半田付け用のリードを根元から切断します。

こうして作ったアダプタをPICとRCDライタのソケットの間に挿入して使用します。

評価用基板による動作テスト

 RCDライタをスマートメディアサイズにして、おおくの方々にPICへのプログラム書きこみテストをしていただきました。ご協力たいへんありがとうございました。

スマートメディアサイズのRCDライタ

 RCDライタをスマートメディアサイズにしました。評価用に無料配布した基板とは部品配置がすこしだけちがいます。パターン図は、部品配置図を兼ねています。

VICさんの作例です。R3をVRに変更されました。 FENG3の作例です。Pcbeファイルとは部品配置がことなります。

oga さんの作例です。

たけぴょん さんの作例です(復活)。

ハンガリーの airband さんの作例です(ケース入り内部)。

FILIA SOFIA さんの作例です。

ブラジルの Alexandre Costa さんの作例です(写真PCBパターン)。

ドイツの Helmut Stettmaier さんはブレッドボードに組みました(写真)。

ももじ さんもブレッドボードで組みました(写真)。

Henri さんの作例です(写真)。

スウェーデンの Sven-Erik Ottosson さんの作例です(写真)。

Stefan Pietzonke さんの作例です(写真)。

ダウンロード

上記ドングルタイプ・スマートメディアサイズのRCDライタ

Pcbeファイルのダウンロード(LHAにて圧縮、21KB)。

PDFファイルのダウンロード(部品配置図) (パターン図

私が使用しているRCDライタ
半固定抵抗、基板取り付け用Dサブコネクタが必要です。ICソケットのかわりに18ピンのTEXTOOLを実装できるように基板のスペースを確保してあります。

パターン図(PDF)  部品配置図(PDF) 部品表(PDF)

過電流保護抵抗つきのRCDライタ
パソコンのシリアルポートが壊れないか、ご心配の方は、こちらをお使いください(2004年12月から配布している基板は、このタイプです)。

パターン図(PDF) 部品配置図(PDF) 部品表(PDF)

注:アドビのリーダーでパターン図が縮小されて印刷されたりする場合は、「印刷」の「ページ処理」のオプションで「PDF のページサイズに合わせて用紙を選択」を有効にしてください。

RCDライタの組み立てキットの販売および基板の無料配布について
自作される方の便宜をはかるためにRCDライタの組み立てキットの販売や手作り基板の無料配布をおこなっています。

■RCDライタの組み立てキットは、ハーフマットで取り扱っています。専用基板と部品のセットで680円です。

このタイプは基板製造上の都合で販売を終了しました。

RCDライタがさらに小型化し、20ピンPIC対応になりました!

■RCDライタの手作り基板の無料配布も従来どおりおこなっています。専用の無料配布コーナーを設けています(再開しました)。ガラスコンポジットまたは紙フェノールの手作り基板です。学生さんは送料も無料ですが、社会人は切手を貼った返信用封筒が必要です。

基本的に穴あけはしてありますが、写真のようにフォトレジストが残ったままのものや、磨いてフラックスを塗布したものなどがあります。注:猫はついていません。

諏訪エレクトロニクス社のAcum−PICシリーズにもRCDライタの基板が添付されるようです(いちどみてみたいなぁ…)。


 

注意事項:PICライタの製作にあたっては、自己責任でおこなってください。このページに記載されている情報をもとに製作された結果、ライタが動作しない、PICが破損した、パソコンが壊れた、家庭不和になった等の損害を被られても、FENG3はいっさい関知しません。

[Home]

2007年2月28日更新

2003年12月5日作成