小白求助帖 如何让一个定时器多次工作
时间:10-02
整理:3721RD
点击:
void Time3Init(void)
{
LPC_TIM3->TC = 0x00;
LPC_TIM3->TCR = 0x02; //reset timer //
LPC_TIM3->PR = 0x00; //set prescaler to zero //
LPC_TIM3->MR0 = (25000000/1000-1); //定时1ms
LPC_TIM3->IR = 0xff; //reset all interrrupts //
LPC_TIM3->MCR = (1<<0)|(1<<1); //stop timer on match //
LPC_TIM3->TCR = 1; // start timer //
NVIC_EnableIRQ(TIMER3_IRQn);
}
以上是一段定时器配置的代码,想知道如何能够在一次工作中,让定时器多次计时
具体问题如下:
我用下位机程序控制一个步进电机转,希望能够控制它以不同的速度转完一圈,我该如何使用定时器的中断响应。
{
LPC_TIM3->TC = 0x00;
LPC_TIM3->TCR = 0x02; //reset timer //
LPC_TIM3->PR = 0x00; //set prescaler to zero //
LPC_TIM3->MR0 = (25000000/1000-1); //定时1ms
LPC_TIM3->IR = 0xff; //reset all interrrupts //
LPC_TIM3->MCR = (1<<0)|(1<<1); //stop timer on match //
LPC_TIM3->TCR = 1; // start timer //
NVIC_EnableIRQ(TIMER3_IRQn);
}
以上是一段定时器配置的代码,想知道如何能够在一次工作中,让定时器多次计时
具体问题如下:
我用下位机程序控制一个步进电机转,希望能够控制它以不同的速度转完一圈,我该如何使用定时器的中断响应。
设置一个标志 flage,每转一圈,flage的值加1,再在转速调节部分有 if(),选择不同flage时的转速
感谢,不过我要实现的是在一圈以内,设置不同的速度转完,不是每一圈的速度不同。