簡體   English   中英

在STM32L0的IAR中初始化Eeprom

[英]Initializing Eeprom in IAR on an STM32L0

我希望使用某些值初始化eeprom,但不能按預期工作。 我究竟做錯了什么:

從我在IAR中的.icf文件

define symbol __region_EEPROM_start__ = 0x08080030;
define symbol __region_EEPROM_end__ = 0x080807FF;
..
define region EEPROM_region = mem:[from __region_EEPROM_start__ to __region_EEPROM_end__];
..
place in EEPROM_region  {rw section .eeprom};

在我的代碼中:

__root char dataE[] @ ".eeprom" = {0xFF};
int
main (void)
{

  init ()

但是eeprom沒有正確初始化,我在調試模式下獲得的只是:

0x08080000 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
0x08080010 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
0x08080020 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
0x08080030 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00

編譯器默認可以將EEPROM初始化為零。 要初始化為其他值,您將必須分別編寫然后加載。 或在初始化部分的主要部分進行操作。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM