MSP430F149定时器B定时1秒不准
大家好,现在用到149的定时器B,时钟源选择ACLK,接的是32768Hz的晶振,但是按公式算出来计算1秒定时中断很不准呢,请大家帮我看下设置有问题吗?void TimerB_Init(void)
{
TBCTL = TBSSEL_1 + TBCLR +ID_3; // ACLK, clear TAR,divide by 8
TBCCTL0 |= CCIE; // CCR0 interrupt enabled
TBCCR0 = 4096; //1s,4096/
TBR=0x00;
TBCTL |= MC0; // Start Timer_B in Increase mode
} 能否提供完整程式碼,及如何確認不準 初始化无所谓,TBCCR0值随便。即使有偏差,也是一次性的。当然,你写的肯定有问题的。应该是TBCCR0 = TBR + 4095;
重点是中断中的是如何处理的。
看你定怕代码,应该是对MSP430的中断处理机制没有了解 谢谢楼上回复,因为用PIC的芯片比较多,430的芯片确实用的少,原来中断程序里的操作有影响到定时器,现在我调节了32768晶振边上的电容,同时不对其输入分频,这样计数单位为32767,现在基本是比较准的了
页:
[1]