そのため、消去した直後に内部フラッシュメモリに書き込むことはできません。書き込み操作の前に消去操作がない場合は、できます。理由についてのアイデアはありますか?
プログラミング関数は「成功した書き込み」値を返しますが、メモリを参照するとデータが書き込まれません。コードは次のとおりです。
uint32_t pageAddress = 0x08008000;
uint16_t buffer = 0xAAAA;
HAL_FLASH_Unlock();
FLASH_PageErase(pageAddress);
HAL_FLASH_Program(TYPEPROGRAM_HALFWORD, pageAddress, buffer);
HAL_FLASH_Lock();
消去とプログラミングの間にメモリをロックしようとしましたが、これらの操作の間に遅延が生じましたが、役に立ちません。