LPC1768定时器普通定时
扫描二维码
随时随地手机看文章
//其他通道的基本定时功能都能在这里实现
void Time0Mr0Init(u32 arr,u32 psc)
{
LPC_SC->PCONP|=(1<<1); //打开功率控制
LPC_TIM0->TCR|=(1<<1); //复位定时器
LPC_TIM0->MR0=psc; //匹配寄存器与定时器计数器值相比较
LPC_TIM0->IR|=0XFF; //清所有中断标志位
LPC_TIM0->MCR|=((1<<1)|(1<<0)); //MR0与TC值匹配时将产生中断,TC复位
LPC_TIM0->PC=0X00;
LPC_TIM0->PR=arr-1; //预分频
LPC_TIM0->TCR=(1<<0); //启动定时器
NVIC_EnableIRQ(TIMER0_IRQn); /* enable irq in nvic */
}
void TIMER0_IRQHandler(void)
{
if(LPC_TIM0->IR&0x01)
{
Time0Mr0CallBack;
}
LPC_TIM0->IR|=(1<<0); //清中断标志
}