ICSP?

ICSPについてのメモ。

 ICSP(インサーキット・シリアル・プログラミング、マイクロチップテクノロジー社の登録商標)とは、プログラミング用のクロックデータ、それにVDD(電源)、GND(グラウンド)、VPP(プログラミング用電圧)の合計5本の信号と電源を制御してPICマイコンをプログラムする手法のことです。

 ICSPの手法を用いると、回路上のPICマイコンを取り外さずにプログラムを書き換えて動作テストをしたり、製品のファームウェアのアップデートを更新することが容易になります。

 対象となる回路のPICマイコンにICSPでプログラム書き込みをおこなうには、クロック、データ、VDD、GND、VPPを回路上のPICマイコンの対応するピンと直結します。たとえば、PIC16F84AではクロックをRB6ピン、データをRB7ピン、VDDをVDDピン、GNDをVSSピン、VPPをMCLRピンにそれぞれ接続するだけです。

 ICSPをうまくおこなうには、上記の信号がPICマイコンにつながっている回路から影響を受けたり、ぎゃくにプログラミング用の高電圧が対象回路に悪影響をおよぼさないようにすることです。いちばん簡単なのは、クロックとデータがつながるピンをプログラミング専用にしたり、プログラミング時にはこれらを回路から分離してしまうことですが、それができなければバッファを間に設けたりするなど工夫しなければなりません。また、PICライタの電源供給能力やVPPの立ち上がりが1μs以内になるようにするなど、回路中の負荷も考慮しなければなりません。RCDライタやJDMプログラマの対象回路のドライブ能力は、けっしてあてにしないでください(LED1個を点灯させることができる程度です)。

ICSPについての詳細は、ここをご覧ください。

RCDライタ・JDMプログラマでのICSPの参考回路

[]
 ICSPをおこなううえで、主要なPICマイコンのICSP用の信号や電源を接続するピンの配置を一覧図にしておきましたので、参考にしてください。

ICSP用のピン配置図

ICSP用ケーブル / アダプタの製作
 ICSP用のヘッダをもたないRCDライタなどのPICライタでは、ライタのICソケットからプログラミング用の信号と電源を引き出して使用します。

 プログラミング用の信号と電源をPICライタのICソケットから引き出す、かんたんな方法は、ICソケットを使う方法です。

丸ピンあるいは平ピンの8ピンのICソケットを用意して、電線をソケットのスリーブ内にはんだ付けします。はんだ付けをすばやくおこなわないと、ICソケットのフレームが溶けて変形したりピンが抜けたりします。

対象回路には6ピンヘッダピンを取り付けて、自作したICSPケーブルと接続してプログラム書き込みをおこないます。

写真のICSPケーブルは、平ピンのICソケットを使ってつくりました。電線の色は上図とはことなっています。ICソケットとは反対側についているのが、6ピンヘッダピンのコネクタです。パソコン内部のコネクタとしてよく使われているものですが、大阪・日本橋の共立電子産業で「QIコネクタ」という名称で販売しています。

サンハヤトのICクリップと1ピンのQIコネクタを利用すると、他の多くのPICとはピン配置のことなる一部のPICにもQIコネクタの挿入位置差し替えるだけで手軽に対応できます。

ユニバーサル基板を利用してICソケットとヘッダピン(写真では5ピンのヘッダピンを使用しています)を配置し、前述のピン配置図に基づいて8ピン〜40ピンのDIPタイプのPIC用のソケットボードをつくりました。PGMピンのあるPICは、PGMピンが浮いているとプログラミング・モードに入れない機種もありますので、GND側につないでおきます。

ヘッダピンを取り付けることができないような小さな基板では、ケーブルを直接基板にはんだ付けしたりもします【写真左は、米粒よりも小さいPIC10F206】

PIC16F59は他のPICとはピン配置にまったく互換性がありませんので、単体に書き込むときは苦労します。ハーフマットではPIC16F57/59用の簡易アダプタF57を取り扱っていますが、手っ取り早く自作するなら、40ピンのICソケットにICSPケーブルの電線をはんだ付けしてしまう、という方法もあります【写真右】

アダプタやケーブルは自作されることをおすすめします。安価に、しかも自分の気に入るようにつくれます。しかし、「つくるのが面倒」「もっと小さくてスマートなものを」という方のために、ハーフマットではRCDライタなどのICソケットの8ピンPICの挿入位置にセットしてICSP用のヘッダに変換するアダプタを取り扱っています。この手のものは需要が少ないので、価格は少々高くなります。やはり自作するのがいいですね。

 

[]

2007年4月19日作成