1. WDT使能后,如果程序中没有在WDT溢出前用CLRWDT指令清零WDT,单片机会在每次WDT溢出时复位,所以应在合适的地方增加一条CLRWDT指令,比如在TMR0中断服务程序返回前,否则单片机会不断复位.建议先禁止WDT,待程序调试好后再使能.
2. 对于PIC16F877A,如果预分频器没有分配给WDT的话,单片机使用5V供电时,在-40度至+85度范围内,WDT溢出周期为7-33ms,室温下WDT的溢出周期典型值为18ms.预分频器的分配由OPTION_REG的PSA位指定,分频比率由PS2:PS0位指定.如果单片机不必进入休眠状态且程序运行一个周期小于18ms,建议将预分频器分配给TMR0,即PSA=0
3. 2K上拉电阻并联104电容没有必要,可能还会有副作用.另外如果晶振频率低于4M,振荡器选XT,如果大于4M,应选HS;两只电容的取值最好不要超过33pF.
|