/*FLASH读写程序*/
#define ADDR_USER_DATA 0x0801F800 //要写入地址
void Flash_RW(void)
{
uint32_t data = 0;
uint32_t PageError = 0;
FLASH_EraseInitTypeDef FlashSet;
data = *((uint32_t*)ADDR_USER_DATA);
data++;
HAL_FLASH_Unlock();
FlashSet.TypeErase = FLASH_TYPEERASE_PAGES;
FlashSet.Banks = FLASH_BANK_1;
FlashSet.Page = 63;
FlashSet.NbPages = 1;
HAL_FLASHEx_Erase(&FlashSet, &PageError);
HAL_FLASH_Program(TYPEPROGRAM_DOUBLEWORD,ADDR_USER_DATA, (uint32_t)data);
HAL_FLASH_Lock();
printf("%d\r\n",data);
}
STM32 使用内部FLASH存储读取数据
最新推荐文章于 2024-05-07 13:30:34 发布