
文章目录
前言
近期在一些嵌入式系统开发项目中,在使用嵌入式处理器时,遇到了挺多费时费力的事情。所以利用晚上和周末时间,在这些方面深入研究了一下,解锁了一些新技能。后面会用若干篇文章把它总结分享出来,以备将来翻看,同时也希望能够帮到这一领域的粉丝朋友们。
由于实际项目比较庞大,而且不便在网络公开,所以就另起了一个Demo工程,重点介绍其中的原理、方法和特性分析。
Timer中断调度
Timer中断是硬件中断的一种,其在处理器中断框架中的位置如下图所示:

Timer中断工作的过程如下:

TDDRH:TDDR是一个16位的时钟分频因子寄存器,需要开发者写入分频的倍数。
PSCH:PSC是一个16位的分频计数寄存器,能随着时钟节拍递减,递减到0时重新装载TDDRH:TDDR寄存器的值,然后继续循环。每循环一次后TIMH:TIM计数器减1。
PRDH:PRD是一个32位的周期寄存器,需要开发者写入循环周期的长度。
TIMH:TIM是一个32位的计数寄存器,能随着分频后的时钟节拍递减。递减到0时重新装载PRDH:PRD寄存器的值,然后继续循环。每循环一次后产生一个Timer中断脉冲。当Timer中断脉冲产生时,就可以作为一个Task调度的Flag,如果有多个不同周期的异步Task,就可以使用多个Time
嵌入式处理器多任务异步执行调度三法

最低0.47元/天 解锁文章

被折叠的 条评论
为什么被折叠?



