金牌会员
 
- 积分
- 1837
- 金钱
- 1837
- 注册时间
- 2014-12-4
- 在线时间
- 717 小时
|
1金钱
利用STVP可以设置OPTION BYTE 的RDP位进行Flash读保护。但是我想在程序内设置Flash读保护,不知道有哪位做过??可否指点下???
写了一个代码发现不行
void SysLockProtectedProc(u8 nType)
{
//设置读保护:
if (nType == 0x01)
{
if (FLASH_OB_GetRDP() != SET)
{
FLASH_Unlock();
FLASH_OB_Unlock();
FLASH_ClearFlag(FLASH_FLAG_EOP | FLASH_FLAG_PGERR | FLASH_FLAG_WRPERR);
FLASH_OB_RDPConfig(OB_RDP_Level_1);
FLASH_OB_Lock();
}
}
//解除读保护
else
{
if (FLASH_OB_GetRDP() != RESET)
{
FLASH_Unlock();
FLASH_OB_Unlock();
FLASH_ClearFlag(FLASH_FLAG_EOP | FLASH_FLAG_PGERR | FLASH_FLAG_WRPERR);
FLASH_OB_RDPConfig(OB_RDP_Level_0);
FLASH_OB_Lock();
}
}
}
|
最佳答案
查看完整内容[请看2#楼]
上面这个函数可以实现读保护,下载完程序后要断电,在上电。这样就无法下载和调试。需要用STVP全片擦除。或者事先写好解除保护的程序。。。供大家参考
|