看门狗定时器无效怎么回事

2019-07-21 20:06发布



#ifndef WDT_H_
#define WDT_H_
#include <msp430.h>

void WDT_init()
{

        WDTCTL=WDT_ADLY_250;        //250ms
        SFRIE1 |= WDTIE;                //WDT使能
        _enable_interrupts();           // 总中断
        //_bis_SR_register(LPM0_bits + GIE);       // Enter LPM0, enable interrupts
}

#pragma vector=WDT_VECTOR
__interrupt void WDT_ISR(void)
{
        P1OUT ^= BIT0;
}
#endif /* WDT_H_ */



#include <msp430.h>
#include "TA0.h"
#include "TA0_PWM.h"
#include "WDT.h"



int main(void)
{
    WDTCTL = WDTPW | WDTHOLD;      // Stop watchdog timer
    TA0_Init();//初始化TA0
    WDT_init();                  //看门狗定时器初始化
    P1DIR|=BIT0;
}
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
11条回答
Thor9
2019-07-22 02:02
我记得430好多TI的例程中都有如下的语句。
WDTCTL = WDTPW + WDTHOLD;           //关狗

您main函数第一句就关了狗,后面请仔细查看下,您开狗正确么?

一周热门 更多>