stm32设置硬件看门狗,取消硬件看门狗的一种方式
stm32如何设置硬件看门狗?
相关概念: http://blog.sina.com.cn/s/blog_bf63e2650102vyi1.html
选择字节:option bytes (位置:0x1FFFF800
(f407的选项字节起始位置在:0x1FFF C000)
硬件看门狗的使能是在options byte内实现的,就是在将对应的位置置一使能硬件看门狗,
可参考下面的反向教学链接 https://blog.csdn.net/qinrenzhi/article/details/84136782
使用stm32 ST-LINK Utility工具,TATGET->option bytes->取消勾选WDG_SW->点apply。此时芯片的存储数据就会发生更改。可以在前面输入0x1FFFF800查看。
stm32如何取消硬件看门狗?
两种方式:一种就是在勾选回去
第二种就是让程序自己写,也就是往选择字节写入数据
参考下面 http://www.openedv.com/forum.php?mod=viewthread&tid=273213
用户可以使用的是 Data0 Data1 两个u8位置
这样可以用这u16(两个u8)保存自己掉电保存的紧急数据。自己可以合理分配u16的位,发挥使用效果最大化
//用户选项字节
u16 OptionByte;
u16 OptionByte_Read(void) //两个8字节合成1个16字节使用
{
u8 high=(*(vu16*)(0x1FFFF804))&0x00ff;//读0x1FFFF804
u8 low =(*(vu16*)(0x1FFFF806))&0x00ff;//读0x1FFFF806
return ( (high<<8)+low );
}
void OptionByte_Write(u16 data)//两个8字节合成1个16字节使用
{
FLASH_Unlock();//解锁
FLASH_EraseOptionBytes();//flash为ff时候才能写入,所以先擦除,网上很多不成功就是没擦除
FLASH_ProgramOptionByteData(0x1FFFF804,data>>8); //写0x1FFFF804
FLASH_ProgramOptionByteData(0x1FFFF806,data&0x00ff);//写0x1FFFF806
FLASH_Lock(); //上锁
}