以下是基准定时器TCB0的初始化,1秒中断一次
#define TBC_EN (1<<7)
#define TBC_DIS (1<<7)
#define TBC0_125MS_VAL (4<<0)//125毫秒中断TBC
#define TBC0_250MS_VAL (5<<0)
#define TBC0_500MS_VAL (6<<0)//(32768/2)/晶振频率32768
#define TBC0_1S_VAL (7<<0)//32768/晶振频率32768
void TBC0_init(void)
{
_tbc=0;
// _tbc = (1<<7); //使能TBC
// _tbc = (0<<7); //除能TBC
_tbc = TBC_EN|TBC0_1S_VAL; //设置TIME BASE
_tb0e = 1;//TCB0开中断定时
}
#pragma vector Time_base0_isr @ 0x1c
//---------------------------------------------------------------------------------------
//32.768 KHz 的频率下为1S一次中断
//---------------------------------------------------------------------------------------
void Time_base0_isr(void)
{
_tb0f = 0;
}