|
知识路径: > 嵌入式系统硬件基础知识 > 定时器和计数器 > 定时器和计数器 >
|
相关知识点:2个
|
|
|
|
从硬件的角度看来,定时器(Timer)和计数器(Counter)的概念是可以互换的,其差别主要体现在硬件在特定应用中的使用情况。定时器的基本结构与各组件的作用,与可编程间隔计时器类似。系统时间就是由定时器/计数器产生的输出脉冲触发中断而产生的,输出脉冲的周期叫作一个“滴答”,也就表示发生了一次时钟中断。实时操作系统内核提供的硬件定时器管理功能包括:
|
|
|
(1)初始化定时器:负责设置定时器相关寄存器,滴答的间隔时间,以及挂接系统时钟中断处理程序。
|
|
|
(2)维持相对时间(时间单位为滴答)和日历时间:相对时间就是系统时间,是指相对于系统启动以来的时间。每发生一个滴答,系统的相对时间增加1。内核可以从实时时钟获取启动时刻的日历时间。
|
|
|
(3)任务有限等待的计时:用时间等待链来组织需要延迟处理的对象(或者任务),例如可以使用差分时间链。对于差分时间链,每产生一个滴答后,链首对象的时间值减1;当减到0时,链首对象被激活,并从差分时间链中取下一个对象成为链首对象。
|
|
|
(4)时间片轮换调度的计时:如果任务设置了这种调度方式,则需要在时钟中断服务程序中对当前正在运行的任务的已执行时间进行更新,使任务的已执行时间数值加1。如果加1后,任务的已执行时间同任务的时间片相等,则表示任务用完分配给它的时间配额,需要结束它的运行,转入就绪队列。
|
|
|