EDA365欢迎您!
您需要 登录 才可以下载或查看,没有帐号?注册
x
stm32l0内部EEPROM和FLASH程序访问方法一样
% W% r4 |# I6 i6 M它们的共同点:
( s4 k6 j+ f+ B* ]1 r8 [3 t1 s1 |1,统一排地址:但地址不一样2 h& {% e$ W; C) W Y
2,编程方法和的函数一样' W4 v0 ]+ T" J) m/ o' H% A
1,先HAL_FLASH_Unlock();开锁写; X$ e0 T4 D3 ]- W
2,Write_eeprom_int32(uint16_t addr,uint32_t data32);写) l$ c! U& H X; } y
其实是调用HAL_FLASH_Program(TYPEPROGRAM_WORD, EEPROM_START_ADDR+addr, data32);0 e; L) X1 T0 p8 U' R& h1 R
3,HAL_FLASH_Lock();锁住写5 k# ?4 y4 e/ i/ ]: s
3,擦出方法和函数一样5 b- J0 m: j) x/ F3 _: s% `! W! c8 `) H
HAL_StatusTypeDef HAL_FLASHEx_Erase(FLASH_EraseInitTypeDef *pEraseInit, uint32_t *PageError)
7 u* \5 b) C$ m6 @8 I4 E4,读方法和函数一样7 H7 W$ t, e5 v9 x) A* x
Read_eeprom_int32(uint16_t addr)* C$ X( K0 w' | r( ^; p+ j
不同点:1 l+ ?2 a" X' p2 @
地址不一样:4 Q+ _: z. O( n M+ Y- \" I! [+ G
EEPROM:0x08080000开始的2K字节
* q/ }3 b- e( QFLASH: 0x08000000开始的空间(大小型号决定), 其中你想用的FLASH空间。 |