stm32 系统定时器(学习随笔)
系统定时器
1、在keil中不需要添加外围库。
2.属于cm4内核中的一个外设,内嵌在NVIC系统中,系统定时器是一个24bit的向下递减的计数器(最大数值2*24-1)
3.SysTick-系统定时器有四个寄存器,在使用SysTick产生定时器的时候只需要配置三个寄存器。
//配置系统定时器的时钟源(来源于168Mhz)
SysTick_CLkSourceconfig(SysTick_CLKSource_HCLK_Div8);
void delay_us(uint32_t nus)
{
SysTick->LOAD=(168000000/8/1000000)*nus;//延时n微妙
SysTick->CTRL 1=1;
while((SysTick->CTRL (1<<16)==0);//判断当前是否计数完毕
SysTick->CTRL &=~1;//施能定时器工作。
时钟源来源于2Mhz,最大延时时间=2*24/21000000=798.91ms
浙公网安备 33010602011771号