📢 Webサイト閉鎖と移転のお知らせ
このWebサイトは2026年9月に閉鎖いたします。
新しい記事は移転先で追加しております。(旧サイトでは記事を追加しておりません)
| (同じ利用者による、間の3版が非表示) | |||
| 45行目: | 45行目: | ||
# PCにAVR ISP mkII等のライタを接続する。 | # PCにAVR ISP mkII等のライタを接続する。 | ||
# 同様に、ライタとATmegaマイコンを接続する。 | # 同様に、ライタとATmegaマイコンを接続する。 | ||
# [Device Programming]アイコンを押下する。 | # [Device Programming]アイコンを押下する。<br>または、[Tool] - [Device Programming]を選択する。 | ||
# [Device Programming]画面が表示されるので、画面左上にある[Device]プルダウンからターゲットとなるATmegaマイコン名を選択してm[Apply]ボタンを押下する。 | |||
# [Device Programming] | |||
# [Device Programming]画面の左ペインから[Memories]ボタンを押下する。 | # [Device Programming]画面の左ペインから[Memories]ボタンを押下する。 | ||
#: [[ファイル:ATMEL Studio Start 05.jpg|フレームなし|中央]] | #: [[ファイル:ATMEL Studio Start 05.jpg|フレームなし|中央]] | ||
| 62行目: | 58行目: | ||
ロックビットを設定することにより、ファームウェアの書き込みを禁止、または、ブートローダを起動を防ぐ等の設定を行うことができる。<br> | ロックビットを設定することにより、ファームウェアの書き込みを禁止、または、ブートローダを起動を防ぐ等の設定を行うことができる。<br> | ||
<br> | <br> | ||
# [Device Programming]アイコンを押下する。 | # [Device Programming]アイコンを押下する。<br>または、[Tool] - [Device Programming]を選択する。 | ||
# [Device Programming]画面が表示されるので、[Device]プルダウンからATmegaマイコン名を選択して、[Apply]ボタンを押下する。 | |||
# [Device Programming]画面の左ペインから[Lock bits]を選択する。 | |||
# [Device Programming] | |||
# [Device Programming]画面の左ペインから[Lock bits] | |||
<br> | <br> | ||
例えば、ATmega328マイコンのLock bitsには、以下の示すような設定値がある。<br> | 例えば、ATmega328マイコンのLock bitsには、以下の示すような設定値がある。<br> | ||
| 103行目: | 95行目: | ||
<u>Lock bitsを設定すると、それを解除するにはATmegaマイコンをハイボルテージプログラミングモードで消去する必要があるため、Lock bitsの設定は慎重に行う必要がある。</u><br> | <u>Lock bitsを設定すると、それを解除するにはATmegaマイコンをハイボルテージプログラミングモードで消去する必要があるため、Lock bitsの設定は慎重に行う必要がある。</u><br> | ||
<u>不適切なLock bits設定は、ATmegaマイコンの再書き込みを困難または不可能にする可能性がある。</u><br> | <u>不適切なLock bits設定は、ATmegaマイコンの再書き込みを困難または不可能にする可能性がある。</u><br> | ||
<br> | |||
ATmegaマイコンをハイボルテージプログラミングモードで消去する手順を知りたい場合は、[[ATmega328のヒューズ初期化方法]]のページを参照すること。<br> | |||
<br><br> | <br><br> | ||
| 161行目: | 155行目: | ||
*: <br> | *: <br> | ||
* Self-Programming Enable (SELFPRGEN) | * Self-Programming Enable (SELFPRGEN) | ||
*: ATmega328マイコンの自己プログラミング機能を有効または無効にするための設定である。 | |||
*: 自己プログラミングとは、マイコンが自身のフラッシュメモリを読み書きできる機能のことを指す。 | |||
*: <br> | |||
*: 通常、ATmegaマイコンのフラッシュメモリは外部プログラマを使用して書き込まれる。 | |||
*: ただし、自己プログラミング機能を使用すると、ATmegaマイコン自身がフラッシュメモリを読み書きできるようになる。 | |||
*: この機能は、ブートローダの実装やアプリケーション実行中のフラッシュメモリの更新等に使用される。 | |||
*: <br> | |||
*: ATmegaマイコンは、SPM (Store Program Memory) 命令を使用してフラッシュメモリを読み書きできる。 | |||
*: この機能を無効にする場合、SPM命令は使用できなくなり、ATmegaマイコンはフラッシュメモリを読み書きできなくなる。 | |||
*: <br> | |||
*: 一般的に、自己プログラミング機能は有用であるが、セキュリティ上の理由から無効にすることもある。 | |||
*: 例えば、フラッシュメモリに重要なデータやコードが格納されている場合、自己プログラミング機能を無効にすることにより、不正なアクセスや変更を防ぐことができる。 | |||
*: ただし、自己プログラミング機能を無効にする場合は、ブートローダの実装等が制限される可能性がある。 | |||
*: したがって、アプリケーションの要件に応じて、SELFPRGENを適切に設定することが重要である。 | |||
*: <br> | |||
** 1 (デフォルト) | ** 1 (デフォルト) | ||
**: | **: 自己プログラミング機能 (SPM命令) が有効。 | ||
** 0 | ** 0 | ||
**: | **: 自己プログラミング機能 (SPM命令) が無効。 | ||
<br><br> | <br><br> | ||