「ATmega328のヒューズ初期化方法」の版間の差分

ナビゲーションに移動 検索に移動
編集の要約なし
 
25行目: 25行目:
[[ファイル:ATmega328 Chip Erase 1.png|フレームなし|中央]]
[[ファイル:ATmega328 Chip Erase 1.png|フレームなし|中央]]
<br>
<br>
回路の作成を終えた後、PCとArduino Uno、ブレッドボードと12[V]電源を接続する。<br>
# 回路の作成を終えた後、PCとArduino Uno、ブレッドボードと12[V]電源を接続する。
Arduino IDEを起動し、シリアルモニタを表示させる。<br>
# Arduino IDEを起動して、シリアルモニタを表示させる。<br>シリアルモニタの下の設定は、CRのみ(改行なし以外なら他でも可)、9600[bps]を選択する。
シリアルモニタの下の設定は、CRのみ(改行なし以外なら他でも可)、9600[bps]を選択する。<br>
# [D]キーを押下後、[Enter]キーを押下して、ATmegaシリーズの検出を行う。<br>検出に失敗した時は、12[V]電源とUSBケーブルを抜いて回路が正常に接続されているか確認する。<br>
# 検出に成功した時、ヒューズの規定値書込みコマンド[W]キーを押下すると(確認のために[Y]キーも押下)、出荷時のヒューズをATmegaシリーズに書き込む。<br>
# 最後に、[R]キーを押下して、ヒューズが正常に書き込まれているか確認する。<br>
<br>
<br>
DをタイプしてEnterキーで送信すると、ATmega328の検出が行われる。検出に失敗した時は、12[V]電源とUSBケーブルを抜いて回路を確認する。<br>
もし、Lock bitsが0xFF以外になっており、ヒューズ設定が書き込まれない場合、[C]キーを押下してATmega全体の初期化が出来る。<br>
正しく検出されたら、ヒューズの規定値書込みコマンド"W"を送信すると(確認のために"Y"も送信)、ATmega328に出荷時のヒューズが書き込まれる。<br>
ただし、Lock bitsだけでなく、Flash ROMやEEPROMの内容も消去される。<br>
最後に、"R"を送信して、ヒューズが正しく書き込まれているか確認する。<br>
この操作でヒューズビットの書き換えが出来るようになるので、再度、[W]キーを押下する。<br>
<br>
<br>
もし、Lock bitsが0xFF以外になっており、ヒューズ設定が書き込まれない場合、"C"コマンドでAmega328全体の初期化が出来る。<br>
その他、[L]、[H]、[E]、[K]キーを押下して、各ヒューズビットやLock Bitsの値を指定して書き込む事も出来る。<br>
但し、Lock bitsだけでなく、Flash ROMやEEPROMの内容も消去される。<br>
<br><br>
この操作でヒューズビットの書き換えが出来るようになるので、再度、"W"コマンドを送信する。<br>
 
<br>
== チップシグネチャ ==
その他、"L"、"H"、"E"、"K"コマンドで、各ヒューズビットやLock Bitsの値を指定して書き込む事も出来る。<br>
下表にATmegaのチップシグネチャを示す。<br>
<center>
{| class="wikitable"
|-
! チップ !! チップシグネチャ
|-
| ATmega8 || 0x1E9307
|-
| ATmega48A || 0x1E9205
|-
| ATmega48PA || 0x1E920A
|-
| ATmega88A || 0x1E930A
|-
| ATmega88PA || 0x1E930F
|-
| ATmega168A || 0x1E9406
|-
| ATmega168P<br>ATmega168PA || 0x1E940B
|-
| ATmega328 || 0x1E9514
|-
| ATmega328P || 0x1E950F
|}
</center>
<br><br>
<br><br>


__FORCETOC__
__FORCETOC__
[[カテゴリ:AVR]]
[[カテゴリ:AVR]]

案内メニュー