MCU型号:STM32L152CC 调试工具:IAR
问题:设置读保护后程序不运行。
现象:
1、下读保护程序后,不断电程序正常运行。
2、断电后,程序不运行。
感觉断电后,程序找不到主函数的入口堆栈。
程序代码如下:
void Flash_RProt_ENABLE(void)
{
u8 status;
// FLASH_Unlock();//解锁FLASH
FLASH_OB_Unlock();//解锁选项字
UART1_SENDDATA(0x02);
FLASH_ClearFlag(FLASH_FLAG_EOP|FLASH_FLAG_WRPERR | FLASH_FLAG_PGAERR | FLASH_FLAG_SIZERR | FLASH_FLAG_OPTVERR);
UART1_SENDDATA(0x03);
status=FLASH_OB_GetRDP();
UART1_SENDDATA(0x04);
if(status==0)
{
FLASH_OB_RDPConfig(OB_RDP_Level_1);//Read protection of the memory
UART1_SENDDATA(0x05);
FLASH_OB_Lock();
UART1_SENDDATA(0x06);
}
}
int main(void)
{
u8 i=0;
Main_Init();
UART1_SENDDATA(0x01);
Flash_RProt_ENABLE();
while(1)
{
}
}
这个问题已经困扰我好几天了,希望大家帮帮忙。 |