1.重启现象描述
STM32F767IGT6在烧写SylixOS成功后,重新上电会出现多次重启的现象,初次定位可能是看门狗或者是系统运行过程中内存溢出导致的重启。
2.重启问题查找
为了解决多次重启问题,查找STM32 M7的芯片手册中,得知STM32 M7有两种看门狗:
第一种:独立看门狗(IWDG),此独立看门狗外设可用于检测并解决由软件错误导致的故障,并在计数器达到给定的超时值时触发系统复位。
第二种:系统窗口看门狗(WWDG),系统窗口看门狗通过可配置的时间窗口来检测应用程序非正常的过迟或过早的操作。
查看两种看门狗的配置信息的得知在系统没有初始化的情况下,看门狗是默认关闭的(也可以通过器件选项位使能“硬件看门狗”功能,上电时将自动使能看门狗,在这里没有实现)。
通过st-link Utility工具读取板卡的寄存器的值也可以看出看门狗没有被开启。
如图 2-1 使能IWDG所示。
图 2-1 开启IWDG
读取IWDG_KR寄存器得知IWDG未开启,IWDG_KR寄存器地址为0x40003000, 如图