メディア

マイコン内蔵EEPROMの使い方Q&Aで学ぶマイコン講座(77)(1/3 ページ)

マイコンユーザーのさまざまな疑問に対し、マイコンメーカーのエンジニアがお答えしていく本連載。今回は、初心者の方からよく質問される「内蔵EEPROMの使い方」についてです。

» 2023年01月31日 18時10分 公開

過去の質問一覧はこちら

 素朴な疑問から技術トラブルなどマイコンユーザーのあらゆる悩みに対し、マイコンメーカーのエンジニアが回答していく連載「Q&Aで学ぶマイコン講座」。

 今回は、初心者から多く寄せられる質問です。

 マイコンには、EEPROMが内蔵されているものがあります。この内蔵EEPROMはどのように使えば良いのでしょうか? 内蔵フラッシュメモリのようにブートローダーを使って書き込むのでしょうか? それとも内蔵RAMのようにアドレスを指定して書き込むのでしょうか? 読み出す場合は、どのように読み出せばいいのでしょうか?

 また、内蔵EEPROMのメリット/デメリットを教えてください。

 マイコンに内蔵されているEEPROMの仕様は、製品ごとに異なります。ここでは、STマイクロエレクトロニクス(以下、ST)の汎用32ビットマイコン「STM32L1シリーズ」*1)に内蔵されているEEPROMを例にして解説します。

 EEPROMは、メモリマップ上に割り当てられています。そのため、内蔵RAM(以下、RAM)のようにアドレスを指定してアクセスすれば、簡単に読み書きができます。図1にSTM32L152マイコンのメモリマップ上のEEPROMの位置を示します。この場合、EEPROMは”0x0808 0000”から”0x0808 4000”のアドレスに割り当てられています。

<strong>図1:メモリマップ上のEEPROM</strong>[クリックで拡大]STM32L151のデータシートのFigure 8. Memory mapから抜粋 図1:メモリマップ上のEEPROM[クリックで拡大]
STM32L151のデータシートのFigure 8. Memory mapから抜粋

 もちろん、ブートローダーを使って、アドレスを指定して書き込むこともできます。

 ただし、リセット直後のEEPROMは書き込みが保護されているため、書き込む前に保護を解除する必要があります。

 EEPROMの扱い方はRAMに似ていますが、電気的特性は大きく異なります。EEPROMの書き込みと消去にはミリ秒単位の時間が必要です。図2にSTM32L152マイコンの書き込み時間と消去時間を示します。この場合、EEPROMに書き込み操作をした後、最大3.94ミリ秒待ってからでないと正確なデータを読み出せません。

<strong>図2:STM32L151マイコン内蔵EEPROMの書き込み/消去時間</strong>[クリックで拡大]STM32L151のデータシートのTable 35. Flash memory and data EEPROM characteristicsから抜粋 図2:STM32L151マイコン内蔵EEPROMの書き込み/消去時間[クリックで拡大]
STM32L151のデータシートのTable 35. Flash memory and data EEPROM characteristicsから抜粋

*1)STM32L1シリーズ

       1|2|3 次のページへ

Copyright © ITmedia, Inc. All Rights Reserved.

RSSフィード

公式SNS

EDN 海外ネットワーク

All material on this site Copyright © ITmedia, Inc. All Rights Reserved.
This site contains articles under license from AspenCore LLC.