STM32L0系列之【EEPROM读写】

上一章:STM32L0系列之【LED点灯,看门狗IWDG】


/*------------------------------------------------------------ 
Func: EEPROM  Read
Note: 
-------------------------------------------------------------*/  
void EEPROM_Read(uint16_t Addr,uint8_t *Buffer,uint16_t Length)  
{  
    uint8_t *wAddr;  
                HAL_FLASHEx_DATAEEPROM_Unlock();
    wAddr=(uint8_t *)(DATA_EEPROM_BASE+Addr);  
    while(Length--){  
        *Buffer++=*wAddr++;  
                HAL_FLASHEx_DATAEEPROM_Lock();
    }     
}



/*------------------------------------------------------------ 
Func: EEPROM Write 
Note: 
-------------------------------------------------------------*/  
void EEPROM_Write(uint16_t WriteAddr,uint8_t *pBuffer,uint16_t NumToWrite)  
{  
    uint16_t t;  
    HAL_FLASHEx_DATAEEPROM_Unlock();      
    for(t = 0;t < NumToWrite;t++)  
    {  
        HAL_FLASHEx_DATAEEPROM_Program(FLASH_TYPEPROGRAMDATA_BYTE,DATA_EEPROM_BASE + WriteAddr + t,*(pBuffer + t));  
    }  
    HAL_FLASHEx_DATAEEPROM_Unlock();  
}  

下一章:STM32L0系列之【TIM通用定时器】

参考:
[STM32L0] STM32 L0 的EEPROM 的读写函数
STM32053内部EEPROM测试

你可能感兴趣的:(stm32)