×
嵌入式 > 技术百科 > 详情

stm8s定时中断

发布时间:2021-01-18 发布时间:
|

stm8s定时器有高级定时器TIM1,通用定时器TIM2,TIM3,TIM5,以及基本定时器TIM4,TIM6。定时中断配置基本一样。需要注意的也就是分频不同,定时器位数不同。16位定时器配置后面再说,这里以基本定时器TIM4为例,产生2ms中断,配置如下:


TIM4_IER_UIE = 1;//使能TIM4溢出中断   

TIM4_PSCR = 0x06; //配置TIM4 64分频,8us记一次数 

TIM4_ARR = 0xF9; //自动重装载的值->249,2ms中断

TIM4_CNTR = 0xF9;  


TIM4_CR1_CEN = 1; //使能TIM4计数


说明:主时钟为8M,根据手册,带入数值8000000/(2^6)=125000Hz,1/125000=8us,8*(0xF9+1)=2000us=2ms


中断函数如下:


/* Defines an interrupt handler for TIM4 vector. */

#pragma vector=25

__interrupt void TIM4_IRQHandler(void)


{


    TIM4_SR_UIF = 0;//清中断标志


}


注意:这里中文手册翻译有误,基本定时器只有SR寄存器




『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
分拣机器人的工作原理是什么