C8051f340定时器初始化代码问题

2019-07-15 23:11发布

void timer0_Init(void)
{
   TCON &= ~0x30;                   // STOP Timer0 and clear overflow flag
   TMOD &= ~0x0f;                   // configure Timer0 to 16-bit mode
   TMOD |=  0x01;                   // set the timer 0 to mode 1 (16 bit counter)
   TH0 = TIMER0_RELOAD_HIGH;       // set Timer0 flash constant value
   TL0 = TIMER0_RELOAD_LOW;
   TR0 = 0;                        // set the timer 0 run bits
   ET0 = 1;                        // enable timer 0 interrupt
}



这个代码的TCON和TMOD的赋值形为什么是TCON &= ~0x30; TMOD &= ~0x0f; TMOD |= 0x01;的呢?有点不解 要是直接赋值不就可以了吗?为什么这样绕一圈子呢?向各位大侠求解
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。