PICkit2自作 制作:2007-11-13〜2008-03-30

PICkit2のユーザーズガイドの一番最後のページにPICkit2の回路図が掲載されています。ファームウェアも自由にダウンロードできるので自作しようと思えば作れます。PICが内部に使われているので、そもそも書き込み機が無いと作れないところが問題です。


トランジスターなどが日本で入手しにくいものが使われているので日本で入手しやすい物に置き換えました。FETの選択肢が狭く面実装タイプになっていますが、それ以外は半田付けしやすいリードタイプの部品です。部品の価格は基板を除いて¥2000ちょっとで済みそうです。


両面基板なら簡単なのですが、片面だとEAGLEのオートルーターで未配線がだいぶ残ります。もう少しレイアウトを工夫すれば未配線が少なくなるかもしれません。大きさはPICkit2の2倍程度です。


現時点の回路図 <− 最終版は異なるかもしれません

秋月電子でUSBコネクターの在庫が切れているみたいなので制作はしばらくやりません。

現物を見るとR32,とC16がありません。プッシュスイッチの付近の部品ですがPICのソフトで弱プルアップしているので不要になった物と思われます。


コイルは13Vを作り出している回路の一部です。この回路で一番デジタル的でない部分がこれです。13Vが正常に出れば、つまずきそうな部分は他になさそうです。


表からだと透けて見えるのに、裏からだと透けて見えないのは何故? 銅箔にはハーフミラー的性質があるのでしょうか?


ブレッドボード用の小物を作る



ショットキバリアダイオードというのは順方向の電圧が普通のダイオードより小さい。


コイルはラジアルタイプとアキシャルタイプの2種類を購入


組立開始


超大作完成。RailToRailのオペアンプだけ入手しにくいMicrochip社製のMCP6291を使用している。たぶん5,6カ所は誤配線があるにちがいない。


USBケーブルをつないで動かしてみた。ハードそのものはPICkit2であると認識してくれる。が、こんなエラー。


上のエラーは配線が間違っていた。修正したらちょっとエラーが変わった。


オリジナルのPICkit2と比べると電圧が出てない箇所があるので、一番怪しそうなFETを調べる。データシート通りVgsが−1.3VほどにならないとFETがオンしない。オリジナルの回路のFETはもっと定電圧でオンする。FETの選択からやり直しかも。これが原因であるとも言い切れないし思ったよりPICkit2クローンを作るのは大変そうだ。


FETはあまり使ったことがないのでこの本で確認しながら進めている。左の本は文章がおかしいところがあってちょっと読みにくい。右は良書。トランジスタ回路の設計は2冊あって、「続」のほうがFET、続じゃないほうが普通のトランジスタについて書いてある。


これがオリジナルの回路のFETのデータシートVgs(th)が低い


秋月電子で買ったFETのデータシート。


特にFETは交換しなかったがPICを認識するところまではいってくれる。が...


プログラムを読み込んだ直後にこれが出る。


うまくいかないので、怪しそうな半導体部品をPICkit2と同じにしてみることにした。IRF社はオンライン注文出来るのでオーダー入力してみたら送料&手間賃が$50もするので取り止め。探したらRSオンラインにもあったので購入先変更。とどいたら再実験開始です。

$54も買おうとしてますが、本来必要なのは一番下の3個で$0.91のものだけ

部品が届いたので、チップ部品をブレッドボード用のDIPタイプに変換。そして結線図を書く。


...で、 一部部品を交換しながら書き込み実験。


成功!! 結局RSオンラインで購入した部品を使わずに出来てしまった。交換したのはオペアンプだけ。後は書き込むPICをいろいろ変えて実験だ。


上の状態はほぼ偶然であった。その後は殆ど書き込めない。動作が安定しないのでFETを1個だけ交換。ちょっと良くなったが...
うまくいくのはPIC12F675、PIC16F84A,PIC16F88、PIC16F873、PIC16F877。
ダメなのがPIC16F876,PIC18F452,PIC18F2550、PIC18F2320。
FETはあと2個あるのでそれも交換してみるか... 科学的じゃないな、交換しました、そしたら動きましたって言うのは。ソフトのロジックが解らないので他に方法もないのだが。
(追記)
 ファームウェアもプログラマーもソースコードが公開されているみたいです。ソースコードを読めばロジックも解るはずです。


FETを交換してみたが状況あまり変わらず。VDDエラーが出るので電源の供給経路を回路図で確認するとD4(ショットキバリアダイオード)以外に、これといって電圧降下が発生しそうな部品が入っていない。比較のために本物のD4の電圧降下をテスターで調べてみると0.17V、対してもどきの方は0.28V。わずか0.1Vだが比率で言うと大きい。このダイオード、ICSP先の回路の電源が逆流しないようにしている物のようだが、ZIFソケットを使って書き込むだけなら取ってしまってもよさそう。そして、取ってしまうとこのエラーが出なくなる。


PIC18F2550のメモリーを読み込んでいるところ、黄色と赤のLEDは点灯したままこの位置で止まってしまう。毎回同じ位置で止まるわけではないので配線が長すぎるのが原因かもしれない。試作基板作ってみないとダメかな。


この2つのシリアルEEPROMはパソコンから切り離した状態でプログラムを書き込む物だと思ったのだが、マニュアルにそのような使い方が載っていない。(よく見ていないだけか?)
回路を切り離してしまってもPICkit2 Programmerは動くし、書き込みも出来る。何のための物だろう?


基板パターンを作りました。


ちょっとたけ古くなっていた感光基板。周囲が何だか黄色っぽい。このサイズの写真だと解らないが今までで最悪の出来。黄色く変色している部分が露光不足になる。有効期限までは8ヶ月もあるのだが、直射日光でも当ててしまっただろうか?


組立完了。ジャンパー線は裏面に1本だけ


電圧エラー。ショートしてる???


オペアンプの入力ピンの極性が逆でした。基板を修正。こんどはPIC18F2550にも書き込めます。やはり配線長などの問題だったようです。


10個単位でないと購入できない物が多く通販で買うとかなり高くつきます。余る部品の方が多いくらいです。また、この表には送料が入っていません。

ほぼPICkit2パーツリスト
部品番号 型式 数量 単価 価格 購入先 備考
プリント基板 100×75 サンハヤト40K 1 \504 \504 千石電商  
U1 PIC18F2550−I/SP 1 \500 \500 秋月電子  
U2 MCP6002 1 \70 \70 MicrochipDIRECT ※1
U3、U4 24LC512 2 \207 \414 MicrochipDIRECT ※1
U5ーN−CH NDS9936 1 \200 秋月電子 5個入りなので4個余る
U5−AND−Q1 FDS4935 1 \200 秋月電子 5個入りなので4個余る
R1〜R3 470Ω 3 \16 千石電商 ネットショップでは10本体でしか購入できない
R4〜R7,R12,R16,R25,R27,R29 10kΩ 8 \16 千石電商 ネットショップでは10本体でしか購入できない
R8,R9,R24,R30 2.7kΩ 4 \16 千石電商 ネットショップでは10本体でしか購入できない
R10,R14,R19 10Ω 3 \16 千石電商 ネットショップでは10本体でしか購入できない
R11,R15,R20,R33 33Ω 4 \16 千石電商 ネットショップでは10本体でしか購入できない
R17 820Ω 1 \16 千石電商 ネットショップでは10本体でしか購入できない
R13,R21 1kΩ 2 \16 千石電商 ネットショップでは10本体でしか購入できない
R22,R26,R35,R36 4.7kΩ 4 \16 千石電商 ネットショップでは10本体でしか購入できない
R23 100kΩ 1 \16 千石電商 ネットショップでは10本体でしか購入できない
R28,R31 100Ω 1 \16 千石電商 ネットショップでは10本体でしか購入できない
C1,C4,C6,C8〜C10,C12,C13 0.1μF積層セラミック 8 \100 秋月電子 10個単位で購入
X1 セラロック20MHz 1 \40 秋月電子  
C2,C3 0 \0 \0   ※2
C7 0.47μF積層セラミック 1 \320 千石電商 ネットショップでは10個単位で購入
C5,C11,C14 10μF 16V 電解コンデンサ 3 \160 千石電商 ネットショップでは10個単位で購入
C15 47μF 25V 電解コンデンサ 1 \210 千石電商 ネットショップでは10個単位で購入
Q2,Q3,Q5,Q6 2SA1015Y 4 \105 千石電商 ネットショップでは10個単位で購入 ※3
Q4,Q7,Q8 2SC1815Y 3 \105 千石電商 ネットショップでは10個単位で購入 ※3
D1 1N4148 1 \100 秋月電子 ネットショップでは50個単位で購入
D3,D4 11EQS04G
または 1S3
2 \320 千石電商
秋月電子
※4 11EQS04Gは10本入りでした
1S3は¥30
L1 680μH ラジアルリードタイプ 1 \270 千石電商 ネットショップでは10個単位で購入
SW1 タクタイルスイッチ 1 \210 千石電商 ネットショップでは10個単位で購入
なし USBソケット 1 \50 \50 秋月電子  
なし USBケーブル 1 \210 \210 千石電商  
なし 28ピンソケット 1 \80 \80 秋月電子  
なし 8ピンソケット 3 \25 \75 秋月電子  
なし ICSP用ピンヘッダ 1 \50 \50 秋月電子  
なし 6ピンソケット 1 \420 千石電商 ネットショップでは10個単位で購入
なし ねじ 3mm×5mm 4 \100 廣杉計器 <−価格は調べてください
なし スペーサ 7mm 4 \100 廣杉計器 <−価格は調べてください
DS1 5mmLED 赤 1 \100 秋月電子 <−価格は調べてください
DS2 5mmLED 緑 1 \100 秋月電子 <−価格は調べてください
DS3 5mmLED 黄 1 \100 秋月電子 <−価格は調べてください
合計 \5,373  
部品番号はオリジナルのPICkit2と同じになっています

※1.為替レートは$1=¥110とした
※2.オリジナルの回路には存在するがセラロックを使用したため不要となった
※3.リードフォーミングされたテーピング品がお勧め
※4.11EQS04Gはネットショップに無いみたいです。秋葉原店舗にはあります。


ダイオードが入手困難になってしまっているようですが秋月電子で販売されているショットキバリアダイオード「1S3」で大丈夫だと思います。<−(追記)やってみました。OKでした。

安定動作するようになったのでFETを秋月で売っている安いやつに変更して実験。豪華5段重ね。これでも問題なし。上の部品表はこのFETに変更してあります。緑の部品はコイルです。


回路図&基板パターン <−EAGLEファイル

・2カ所未配線があります。そこはジャンパー線でつなぎます。
・実際に上で作った物とはちょっと異なります。
  1.FETが秋月電子で販売されている物に変更されている
  2.オペアンプの結線ミスが訂正されている

小型の両面基板バージョンも作ってみました。捨て基板をマスクパターンで挟んで感光。


ずっと以前に購入したが大量のエッチング液が必要になるので、今まで使用していなかったエッチング装置を使いました。ポンプで空気を送り込んでエッチング液を攪拌する仕組み。本来はもっと上の方までエッチング液を入れて、ヒーターも使います。


小さい基板で良かったのだが、使用期限切れになっていた200×100mmの基板があったのでそれを使用。本当はデジタル時計用に購入した物。


ソケットを表面から半田付けするのは難しい。ICSP出来るのでソケットを使わない方が本当は楽。リード部品を表と裏から半田付けする方式。スルーホール加工は一切不要なパターンにしてあります。ビアも巨大です。


半田付け完了したところ。表と裏。結線上は問題ないが、C14の位置がいまいち。


ファームウェアを書き込み。


書き込みテスト。特に問題なし。オリジナルのPICkit2より3割程度大きい。


両面基板バージョンの回路図&基板パターン <−EAGLEファイル

最終版回路図 <−GIFファイル

余ったプリント基板(穴空いてません)2枚と作った2個は、ほぼ実費で販売します。EEPROMが無いので販売は2008年3月末頃の予定。基板は部品込みで¥2600、作った2つの完成品は¥2900。USBケーブルも込みの価格です。

動作保証ありませんが、テストして書き込み出来た物の一覧はこれ。これ以外は持ってないのでテストできてません。
PIC12F675
PIC16F84A
PIC16F88
PIC16F873
PIC16F877
PIC16F876
PIC18F452
PIC18F2550
PIC18F2320

これはキット化するかもしれません。半アナログ回路で部品点数が多いためキット化出来たとしても¥3800〜¥4000になると思います。

PICkit2のお遊び、これにて終了。

追記
何だかエラーが出るようになった。原因がわからず半導体を片っ端から交換。結局コイルの近くのトランジスター(Q4)付近に半田の削りくずが乗っていたことが解る。たぶんその影響でコイルの電圧が変な方に逃げたみたい。トランジスターとオペアンプが壊れていた。基板裏側の2個のFETは冤罪で死刑にしてしまった。




◆◆◆ キット化 ◆◆◆

この実験はあまり意味がないが、電源が「へなちょこ」な可能性のあるノートパソコンでの書き込みテスト。正しいUSBなら500mA供給できなければいけないので電源容量には余裕が十分あるはず。


EAGLEのデータをそのまま送付すればよいOLIMEXと違ってP板.comはガーバーデータから基板を作ってもらう必要がある。EAGLEで生成したガーバーデータをGC−Prevueでチェックする。何処をどんな風にチェックするのかと聞かれると困るが、何となくそれらしいデータが生成されているか否かを見る。


P板.comにオーダーした基板のパターン&回路図 <−EAGLEファイル
P板.comにオーダーした基板のガーバーフォーマットファイル <−これで作ってもらいました

基板届きました。以前はもっと大きな袋にまとめて入ってましたが。今回は10個単位に小分けしてパックされています。この方が錆びにくくて良い。


できあがった基板の裏と表。


3個作って基板にパターンミス(EAGLEを使っているのであり得ないのだが)が無いか確認。3個ともOK。1個は自分用。残り2個は売店で販売予定。


キット化の様子。とても大変。昔はキットメーカーがたくさんあったが少なくなっていく理由が身にしみて解る。インターネットによってガレージキットメーカーが増えていってキットメーカーが無くなった隙間を埋めていくのだと思う。


以上キット化おしまい。どんな商品になったかはこちらをごらんあれ。

(追記 2008-03-30)
ケーブルを抜いた後に直ぐ差し込み直すと装置(ほぼPICキット2)を認識してくれません。オリジナルのPICKit2はこの問題が発生しません。1分ほど放置すると「ほぼPICキット2」でも問題が発生しないので、コンデンサーが放電しきれずにPICのUSBインターフェースにリセットがうまくかかっていないのではと思い電圧を測定。オリジナルのPICKit2はケーブルを抜くと直ぐに0Vになります、「ほぼPICキット2」は0.6Vまでは直ぐに下がりますが、そこから先はゆっくり電圧が落ちていきます。


この実験をしながら、「そういえば回路図にあるが、現物に付いていない抵抗を省略したことを思い出す」... 省略したのはR34。この抵抗は電源間に入っている。


電源間に抵抗を追加。これで問題は発生しなくなった。厳密に言うと1,2秒で抜き差しを繰り返すと問題が発生するがたぶんオリジナルのPICKit2よりコンデンサの容量が大きいためだと思う。それにしても0.5VならPICは動作できなくなっているので何でこの問題が発生するのかはいまいち不明。問題の原因がこれであることは間違いないのだが...


キットは売店で売ってます。工作好きの人のために「基板のみ」というのもあります。