📢 Webサイト閉鎖と移転のお知らせ
このWebサイトは2026年9月に閉鎖いたします。
新しい記事は移転先で追加しております。(旧サイトでは記事を追加しておりません)

42行目: 42行目:
<br><br>
<br><br>


== ATMEL Studioからファームウェアを書き込む方法 ==
== ファームウェアの書き込み ==
AVR ISP mk2でマイコンにファームウェアを書き込む方法を以下に示す。<br>
# PCにAVR ISP mkII等のライタを接続する。
1. [Device Programming]アイコンを押下する<br>
# 同様に、ライタとATmegaマイコンを接続する。
2. [Tool] - [Device Programming]を選択する<br>
# [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 Programming画面が表示されるので、設定方法を以下に示す。<br>
# [Device Programming]アイコンを押下する。
1. [Device]プルダウンにてマイコンの形名を選択する(例: ATmega328Pとする)<br>
# [Tool] - [Device Programming]を選択する。
2. [Apply]を押下する<br>
#: <br>
3. 書き込むプログラムを選択するために[Memories]を押下する<br>
# [Device Programming]画面が表示される。
[[ファイル:ATMEL Studio Start 05.jpg|フレームなし|中央]]
# [Device]プルダウンにてマイコン名を選択する。
# [Apply]ボタンを押下する。
# [Device Programming]画面の左ペインから[Lock bits]ボタンを押下する。
<br>
<br>
4. 書き込むファームウェア(HEXファイル)を選択する<br>
例えば、ATmega328マイコンのLock bitsには、以下の示すような設定値がある。<br>
5. [Program]ボタンを押下する(マイコンのフラッシュメモリを消去した後、ファームウェアを書き込みベリファイを行う)<br>
* Lock Bit Byte (LB)
6. 書き込み完了<br>
** 0xFF (デフォルト)
[[ファイル:ATMEL Studio Start 06.jpg|フレームなし|中央]]
**: アプリケーションとブートローダの両方の読み取り・書き込み・検証が可能。
** 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]]