My Works
- LEDチェッカ
- 太陽電池式回路テスタ
- TTL Pong
- DSP プリセットラジオ
- 電動式 CVCC 電源装置
- OLED MP3 プレーヤ
- etc.
Report
- MIDI のハードウェア
- aitendo DSPラジオ一覧表
- etc.
Parts Collection
- Logic IC
- Calculator LSI
- CMOS Melody IC
- etc.
主な更新のみ
24/09/11
- MCU-based Melody ICs
24/08/12
- MCU-based Melody ICs
24/03/10
- Logic IC Collection
初版公開:2012/12/03
最終更新:
2015/01/07
[14/07/05] SIL-ISP コネクタについての実例は、こちらのページもご覧ください。
一般的に用いられる ISP コネクタの種類は、ATMEL 社のアプリケーションノート(AVR042)によると、6 ピンのものと 10
ピンのものの 2種類が存在します。
2種類のISPコネクタ(TOP VIEW)。AVR042
より引用
これらの ISP コネクタは果たして自作者にとって合理的なものとなっているのでしょうか?
このページを書くきっかけは、ユニバーサル基板に実装する際、ISP コネクタの場所取りにいつも悩むことに気付いたことです。DIP の AVR マイコンからメッキ線でユニバーサル基板のランドに沿って配線すると、どうもコネクタのしっくりくる配置が見つからないのです。本稿では、このような ISPコネクタの合理性について 配線コストの点から考えた上で、これを改善する方法を考えていきます。
改善策として、本稿では ISP コネクタの SIL (Single-In-Line) 版を提案します(以下「ISP-SIL コネクタ」と表記)。SIL 版を採用することで、ユニバーサル基板を使用した配線が非常に容易になります。さらに、基板側に装着するコネクタとして一般的な IC ソケットを使用することで、低背・低コストを実現できるというメリットもあります。
(左)ISP-SIL コネクタのピン配置。
(中)試作基板における丸ピン IC ソケットを使った ISP-SIL
コネクタの例。
(右)プログラマ側コネクタの例(リセットボタンと電源インジケータを実装)。
DIP 品のマイコンを対象にして、片面ユニバーサル基板上で ISP コネクタまで配線するとどれくらいの配線コストがかかるか考えてみます。できれば数字を出した上でコストを議論したいところです。
シチュエーションとして、配線にはメッキ線を水平・垂直方向にのみ使用することを考えます。
電源の配線は他の部品や回路との兼ね合いが大きいので、配線コストは 信号線(つまり、GND、VCCを除く)の配線長とすればよさそうです。また、ジャンパ線は極力無い方がのぞましいので、ジャンパ線1本ごとにペナルティを課すことにします。これより (配線コスト)=(配線長)+(ジャンパ線の数)とします。
対象となるマイコンはしばしば使われるもの、8ピン(ATtiny13A)、20ピン(ATtiny2313、ATtiny461A)、28ピン(ATmega88)の4種類です。
配線レイアウト例。灰色がメッキ線、白がジャンパ線。
マイコン | TINY13A | TINY2313 | TINY461A | MEGA88 |
配線コスト | 28 | 28 | 33 | 34 |
配線コストを計算すると、上表のようになりました。レイアウト図のように、普通に配線すると SCK と MISO がどうしてもクロスしてしまうため、ユニバーサル基板でのアートワークはうまくいきません。
シリアルプログラミングにかかわる AVR マイコンのピン配置をみると、ほとんどが MOSI, MISO, SCK の順に並んでいることがわかります。これらのピン配置が同じ順番になるような、ISP コネクタを考えればスマートな配置ができそうです。
RST、VCC、GND の配置はどうでしょうか。デバッグ作業において、ターゲット基板の電源を ISP コネクタを通してプログラマ側から与えることが時たま行われます。このような場合では、コネクタを誤って反対向きに接続することで電源の極性が逆に伝わってしまうことは致命的です。
少し考えるとわかりますが、この逆接続による極性反転を防ぐことは、MOSI, MISO,SCK を順に並べた 2x3 のコネクタでは不可能です。したがって、1x6 の単列コネクタが合理的な選択肢となります。
逆接続に強いまま配線コストを最適にする ISP コネクタとして、ISP-SIL コネクタを提案します。
ISP-SIL コネクタは以下の図のようなピン配置です。GND、VCC(VTG)をずらして配置することで、単純な逆接続と1ピンずらした接続から致命的な事態を防ぐことができます。(ただし、逆接続した上で1ピンずらすときには問題となります。)
また、単列コネクタなので、丸ピン IC ソケットのような低背コネクタを採用できます(冒頭写真参照)。このことは、ターゲット基板の省スペース化に大きく貢献します。
SIL-ISP コネクタのピン配置。
配線レイアウト例。水色がGND経路(参考)、赤色が(A)VCC経路(参考)。
マイコン | TINY13A | TINY2313 | TINY461A | MEGA88 |
2列ISPでの配線コスト | 28 | 28 | 33 | 34 |
SIL-ISPでの配線コスト | 8 | 8 | 9 | 16 |
コスト削減率 | 71% | 71% | 72% | 53% |
上図のように、コネクタをICに密接して配置しても、すっきりした配線でコネクタの実装が可能です。ジャンパも全く必要ありません。配線コストを比較すると一目瞭然ですね。参考に VCC、GND の配線(直近の電源ピンまで)も示しましたが、これら配線もスマートになる場合が多いと思います。
プログラマ側コネクタの例(リセットボタンと電源インジケータを実装)。
プログラマ側コネクタとして写真に示すような小基板を使用しています。リセットボタンをコネクタに実装することでデバッグ作業の効率化ができます。
少し使えばわかりますが、このコネクタを差し込む向きは常に一定になります。つまり、SIL-ISP コネクタの配線を普通に行いさえすれば、ボタンのある面が常に IC 側になるようにコネクタを差し込めば良いということです。ふつうの ISP コネクタではしばしば向きの確認のために時間をとられますが、このコネクタを使えば、1つの原則だけを覚えればこの作業から開放されるわけです。
下表のように、SIL-ISP コネクタは平均 67 % も配線コストを削減します。さらにそのうえ、わずらわしいコネクタ接続方向の確認作業からも開放されます。AVR の ISP コネクタとしてこれを使わない手はないでしょう。
配線コスト (平均) | 接続向き | |
通常の ISPコネクタ | 30.8 | 間違いやすい |
SIL- ISPコネクタ | 10.3 | ほとんど間違えない |