unsigned short timer_count = 0;
void timer1_init(void)
{
T1CTL = 0x00;
T1CTL |= 0xEB; // Set T3 control register: SysClk/32, enable interrupt, run in module mode
T1CNTL = 0x00; //复位计数器
T1CCTL0 &= ~0x04;
T1CC0L = 0xe8; //计时到1000中断
T1CC0H = 0x03;
IEN1 |= (1<<1); // register timer 1 interrupt
}
void timer1_start_free(void)
{
T1CTL |= 0x01;
}
void timer1_start_module(void)
{
T1CTL |= 0x02;
}
void timer1_start_eachside(void)
{
T1CTL |= 0x03;
}
void timer1_stop(void)
{
T1CTL &= ~0x03;
}
static bool test_led= 0;
_PRAGMA (vector=T1_VECTOR)
__interrupt void T1_ISR (void)
{
if(timer_count > 1000)
{
timer_count = 0;
test_led = !test_led;
HalLedSet(HAL_LED_1,test_led);
}
timer_count++;
// clear interrupt flag
IRCON &= ~0x02;
}
蓝牙4.0开发之CC2541定时器使用
猜你喜欢
转载自blog.csdn.net/humanspider1/article/details/43966215
今日推荐
周排行