TOPへ戻る
書き込み器は、ISP方式で書き込むタイプとライタを使用して書き込むタイプの2種類があります。
通常は、ISP方式で書き込むタイプのほうで問題ありません。
ライタ方式は、ヒューズビットを間違った設定に書いてしまったときに設定し直すことができます。
今回はエルムさんの、LPTポート制御 ISPアダプタの簡易版というのを作りました。
ココ
D-SUBコネクタと抵抗と配線だけで作ることができるコストパフォーマンスの高い物です。
対応した書き込みソフトは、同ページの【Win32版ライタ制御ツール for Windows9X/Me/NT/2k/XP】を使います。
しかしDOSベースのツールのため、AVRSP-Gという、
AVRSPをGUI化したものを使うと便利です。
AVRSP-Gに、ATmega168の設定がありませんでしたので、設定例を置いておきます。
fuse.xml をエディタで追記することで、AVRSP-G のプルダウンメニューに現れます。
------------------------------------<キリトリ>--------------------------------------------
------------------------------------<キリトリ>--------------------------------------------
1)最初fuseビットは無視してテストプログラムを書き込みました。⇒成功デス。
2)20MHzのセラロックを外付けに設けていたので、外部クロックと判断して CKSEL0-3 0に設定
AVRSP-Gで、ISPによるヒューズビットの読み出しが出来なくなってしまいました。
ヒューズビットが読み出すことが出来ない場合、プートローダーが動作していないため、
パラレルライタでヒューズビットを書き直してあげる必要があります。
駄目もとで、EXO3C を使用して、外部クロックを与えたところ、無事AVRSP-Gでヒューズビットを
読み出すことができました。
から、
に変更。
3)セラロックの設定は、CKSEL0:0 CKSEL1:1 CKSEL2:1 CKSEL3:0 という設定で落ち着きました。
4)内部クロックに戻す位なら、下記の表の手順でジャンパ等で設定できれば、
ヒューズビットの書き込みができるかな。(近いうちに調べる)
| . |
VCC |
RESET |
OE |
WR |
BS1 |
BS2 |
XA0 |
XA1 |
PAGEL |
XTAL1 |
DATA |
備考 |
| 1 |
0V |
0V |
1 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
初期状態 |
| 2 |
5V |
0V |
1 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
5V印加 |
| 3 |
5V |
12V |
1 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
12V印加 |
| 4 |
5V |
12V |
1 |
1 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
XA0:0 XA1:1 |
| 5 |
5V |
12V |
1 |
1 |
0 |
0 |
0 |
1 |
0 |
0 |
40 |
ヒューズビット書き込みコマンド |
| 6 |
5V |
12V |
1 |
1 |
0 |
0 |
0 |
1 |
0 |
1 |
40 |
XTAL正パルス |
| 7 |
5V |
12V |
1 |
1 |
0 |
0 |
0 |
1 |
0 |
0 |
40 |
〃 |
| 8 |
5V |
12V |
1 |
1 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
XA0:1 XA1:0 |
| 9 |
5V |
12V |
1 |
1 |
0 |
0 |
1 |
0 |
0 |
0 |
62 |
内部発振 |
| 10 |
5V |
12V |
1 |
1 |
0 |
0 |
1 |
0 |
0 |
1 |
62 |
XTAL正パルス |
| 11 |
5V |
12V |
1 |
1 |
0 |
0 |
1 |
0 |
0 |
0 |
62 |
〃 |
| 12 |
5V |
12V |
1 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
WRパルス |
| 13 |
5V |
12V |
1 |
1 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
〃 |
| 14 |
5V |
0V |
1 |
1 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
. |
TOPへ戻る