📢 Webサイト閉鎖と移転のお知らせ
このWebサイトは2026年9月に閉鎖いたします。
新しい記事は移転先で追加しております。(旧サイトでは記事を追加しておりません)
| 42行目: | 42行目: | ||
<br><br> | <br><br> | ||
== | == ファームウェアの書き込み == | ||
# PCにAVR ISP mkII等のライタを接続する。 | |||
# 同様に、ライタとATmegaマイコンを接続する。 | |||
# [Device Programming]アイコンを押下する。 | |||
# [Tool] - [Device Programming]を選択する。 | |||
#: <br> | |||
# [Device Programming]画面が表示される。 | |||
# [Device]プルダウンにてマイコン名を選択する。 | |||
# [Apply]ボタンを押下する。 | |||
# [Device Programming]画面の左ペインから[Memories]ボタンを押下する。 | |||
#: [[ファイル:ATMEL Studio Start 05.jpg|フレームなし|中央]] | |||
#: <br> | |||
# [Device Programming]画面の右ペインにある[Flash]エディットボックスから、書き込むファームウェア (HEXファイル) を選択する。 | |||
# [Program]ボタンを押下する。<br>これは、ATmegaマイコンのフラッシュメモリを消去した後、ファームウェアを書き込みおよびベリファイを行う。 | |||
#: [[ファイル:ATMEL Studio Start 06.jpg|フレームなし|中央]] | |||
<br><br> | |||
== ロックビットの設定 == | |||
ロックビットを設定することにより、ファームウェアの書き込みを禁止、または、ブートローダを起動を防ぐ等の設定を行うことができる。<br> | |||
<br> | <br> | ||
Device | # [Device Programming]アイコンを押下する。 | ||
# [Tool] - [Device Programming]を選択する。 | |||
#: <br> | |||
# [Device Programming]画面が表示される。 | |||
[[ | # [Device]プルダウンにてマイコン名を選択する。 | ||
# [Apply]ボタンを押下する。 | |||
# [Device Programming]画面の左ペインから[Lock bits]ボタンを押下する。 | |||
<br> | <br> | ||
例えば、ATmega328マイコンのLock bitsには、以下の示すような設定値がある。<br> | |||
* Lock Bit Byte (LB) | |||
** 0xFF (デフォルト) | |||
**: アプリケーションとブートローダの両方の読み取り・書き込み・検証が可能。 | |||
** 0x3F | |||
**: アプリケーションの読み取り・書き込み・検証が可能、ブートローダの読み取りのみ可能。 | |||
** 0x0F | |||
**: アプリケーションの読み取りのみ可能、ブートローダの読み取りのみ可能。 | |||
** 0x00 | |||
**: アプリケーションとブートローダの両方の読み取りのみ可能。 | |||
*: <br> | |||
* Boot Loader Protection Mode (BLB0 - BLB1) | |||
** 0b11 (デフォルト) | |||
**: ブートローダの読み取り・書き込み・検証が可能。 | |||
** 0b10 | |||
**: ブートローダの読み取りのみ可能。 | |||
** 0b01 | |||
**: ブートローダの書き込み・検証が禁止、読み取りは可能。 | |||
** 0b00 | |||
**: ブートローダの読み取り・書き込み・検証が禁止。 | |||
*: <br> | |||
* Application Protection Mode (BLB02) | |||
** 1 (デフォルト) | |||
**: アプリケーションの読み取り・書き込み・検証が可能。 | |||
** 0 | |||
**: アプリケーションの書き込み・検証が禁止、読み取りは可能。 | |||
<br> | |||
これらの設定値を組み合わせることで、ATmega328マイコンの保護レベルを調整することができる。<br> | |||
例えば、LBを<code>0x3F</code>、BLB0 - BLB1を<code>0b11</code>、BLB02を<code>1</code>に設定する場合、アプリケーションの読み取り・書き込み・検証が可能となり、ブートローダの読み取りのみが可能となる。<br> | |||
<br> | |||
<u>※注意</u><br> | |||
<u>Lock bitsを設定すると、それを解除するにはATmegaマイコンをハイボルテージプログラミングモードで消去する必要があるため、Lock bitsの設定は慎重に行う必要がある。</u><br> | |||
<u>不適切なLock bits設定は、ATmegaマイコンの再書き込みを困難または不可能にする可能性がある。</u><br> | |||
<br><br> | <br><br> | ||
__FORCETOC__ | __FORCETOC__ | ||
[[カテゴリ:AVR]] | [[カテゴリ:AVR]] | ||