引用楼主daopeng2001于2008-01-16 17:23发表的 经验:抛砖引玉 :
我在用2410的计数器时,配置寄存器为:TCFG0=TCFG0_PRE0(0),这样的结果是把主频给改了,后来我百度了N变,才发现配置寄存器应写成:TCFG0 |=TCFG0_PRE0(0)。希望对大家有帮助,呵呵。
以一般操作寄存器的写法,如果要把一个或多个bit置零并且保留其他位,可以用&=~, 象上面的例子里,可以用TCFG0 &=~0xff, (清除TCFG0[7..0])
如果是对寄存器*初始化*,可以用上面这种赋值方法,比如:
TCFG0 = (TCFG0_DZONE(0) | TCFG0_PRE1(15) | TCFG0_PRE0(0));