你(们)好
我尝试将 wqtchdog 计时器溢出设置为软复位、因此我正在检查 RSTCTL_SOFTRESET_STAT_SRC1寄存器。如果位位置1中有1、则意味着复位源是看门狗软复位。
但是、即使在复位发生之前、我观察到的是 RSTCTL_SOFTRESET_STAT_SRC1中的值 也是1、表示 rsest.I 尝试通过语句 RSTCTL->SOFTRESET_CLR = 2将其清除;但不清除.How to clear the watchdog RSTCTL_SOFTRESET_SRC1 bit 1 STAT_1 register.
void main (void)
{
WDTCTL = WDTPW | WDTHOLD;//停止看门狗计时器
RST = RSTCTL_SOFTRESET_STAT_SRC1; //此处的值为2
RSTCTL->SOFTRESET_CLR = 2;
RST = RSTCTL_SOFTRESET_STAT_SRC1;//此处的值应为0,但显示为2,whcih 表示 SRC1未清除
if (rst == 2)
{//if watchdog overflows 该标志被置位
RSTCTL->SOFTRESET_CLR = 2;
Watchdog_Reset_Indicator();
}
Watchdog_Init();