这文件我看了,就是我恍惚记得有些处理器会把高端地址占一部分做Boot程序用,所以,不知道在STM32这类处理器上有没有这一说,例如Jtag调试程序是不是放在这个位置了或引导什么的。
还有,今天调程序又发现一个问题,这个107应该是2K的flash page,那么我调用
FLASH_Status FLASH_ErasePage(uint32_t Page_Address)
{
FLASH_Status status = FLASH_COMPLETE;
/* Check the parameters */
assert_param(IS_FLASH_ADDRESS(Page_Address));
/* Wait for last operation to be completed */
status = FLASH_WaitForLastOperation(EraseTimeout);
if(status == FLASH_COMPLETE)
{
/* if the previous operation is completed, proceed to erase the page */
FLASH->CR|= CR_PER_Set;
FLASH->AR = Page_Address;
FLASH->CR|= CR_STRT_Set;
/* Wait for last operation to be completed */
status = FLASH_WaitForLastOperation(EraseTimeout);
if(status != FLASH_TIMEOUT)
{
/* if the erase operation is completed, disable the PER Bit */
FLASH->CR &= CR_PER_Reset;
}
}
/* Return the Erase Status */
return status;
}
只擦了1K的内容,这个是怎么回事,应该从哪儿改。