Очистка вспышки памяти 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
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

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