STM32闪存选择字段和看门狗的关系
扫描二维码
随时随地手机看文章
我们在看STM32中文参考手册p316页IWDG独立看门狗时,看到“如果用户在选择字节中启用了“硬件看门狗”功能,在系统上电复位后,看门狗会自动开始运行;如果在计数器计数结束前,若软件没有向键寄存器写入相应的值,则系统会产生复位”这样一段关于硬件看门狗的描述,那么什么是硬件看门狗,与软件看门狗什么区别呢,这里的选择字节说的是哪呢,我们接着往下说
1.硬件看门狗和软件看门狗的区别:
看门狗分为硬件看门狗和软件看门狗,硬件看门狗就是利用独立于处理器的定时器电路,当狗饿死后会产生复位信号并重启;而软件看门狗则是用处理器内部的某个定时器代替独立于处理器的定时器电路,显然后者不能摆脱处理器出现问题实现自动重启的功能,其意义也就大打折扣了。当然从硬件角度讲,这个软件看门狗也是“硬件”实现,而并非字面的“软件”意义了。
2.选择字节:
选择字节即我们32的flash中的选择字段,参看stm32闪存编程手册可看到,选择字段的作用主要用于我们选择是硬件模式的看门狗还是软件模式的看门狗以及设置进入停机或待机模式时系统是否复位的配置的。而选择字段的寄存器是通过选择字节寄存器(FLASH_OBR)来配置,由其复位值0x03ff fffc可知,我们的看门狗默认是硬件看门狗,而默认在进入待机模式和停机模式是不产生复位的。因此我们无须担心看门狗是否需要配置的问题,默认就是硬件看门狗