Очистка вспышки памяти STM32F4 Flash FlashC++

Программы на C++. Форум разработчиков
Anonymous
Очистка вспышки памяти STM32F4 Flash Flash

Сообщение Anonymous »

У меня возникает проблема с очисткой флэш -памяти STM32F429 Discovery Poard после создания окна с использованием библиотеки STEMWIN. Если я использую код ниже, память Flash будет правильно очищена: < /p>
EraseInitStruct.TypeErase = FLASH_TYPEERASE_SECTORS;
EraseInitStruct.VoltageRange = FLASH_VOLTAGE_RANGE_3;
EraseInitStruct.Sector = FLASH_SECTOR_22;
EraseInitStruct.NbSectors = 1;
HAL_FLASH_Unlock();
uint32_t sectorError = 0;

if(HAL_FLASHEx_Erase(&EraseInitStruct,&sectorError) != HAL_OK)
{
return HAL_FLASH_GetError();
}

HAL_FLASH_Lock();

CreateWindow();
< /code>
Но если я приведу функцию CreateWindow () в верхнюю часть кода, флэш -память не будет очищена. Вот функция CreateWindow (): < /p>
WM_HWIN CreateWindow(void)
{
hWin = GUI_CreateDialogBox(_aDialogCreate, GUI_COUNTOF(_aDialogCreate), _cbDialog, WM_HBKWIN, 0, 0);

hMultiPage = MULTIPAGE_CreateEx(0, -20, 320, 260, WM_GetClientWindow(hWin), WM_CF_SHOW, 0, 0);
MULTIPAGE_SetSkin(hMultiPage, MULTIPAGE_SKIN_FLEX);

hPage1 = GUI_CreateDialogBox(_aDialogCreate2, GUI_COUNTOF(_aDialogCreate2), _cbDialogPage1, WM_UNATTACHED, 0, 0);
MULTIPAGE_AddPage(hMultiPage, hPage1, "Settings");

hPage2 = GUI_CreateDialogBox(_aDialogCreate3, GUI_COUNTOF(_aDialogCreate3), _cbDialogPage2, WM_UNATTACHED, 0, 0);
MULTIPAGE_AddPage(hMultiPage, hPage2, "Run");

MULTIPAGE_SelectPage(hMultiPage, 0);

return hWin;
}


Подробнее здесь: https://stackoverflow.com/questions/323 ... mmatically

Вернуться в «C++»