
ATmega16(L)
下面的代码例子分别用汇编和C实现了关闭WDT 。
在此假定中断处于用户控制(例如禁止全局中断)
这样就会出现执行这些函数的过程中没有中断。
汇编代码例程
WDT_OFF :
;复位WDT
WDR
;写逻辑1 WDTOE和WDE
in
OUT
LDI
OUT
RET
R16 , WDTCR
WDTCR , R16
R16 , ( 0<<WDE )
WDTCR , R16
ORI
R16 , ( 1<<WDTOE ) | ( 1<<WDE )
;关闭WDT
C代码示例
空间
WDT_OFF (无效)
{
/*
复位看门狗定时器* /
_WDR ();
/*
写逻辑1 WDTOE和WDE
*/
WDTCR | = ( 1<<WDTOE ) | ( 1<<WDE ) ;
/ *关闭WDT * /
WDTCR = 0×00 ;
}
44
2466S–AVR–05/09