uc/os:系统时钟及其中断服务函数

本篇主要介绍uC/OS的系统时钟,并特别指出uC/OS iii为减少关闭中断的时间所做的改进。

系统时钟可以看成是整个系统的“心脏跳动”,也是系统时间管理的基石,它被用来延时任务和确定任务超时,系统时钟由硬件定时器(如ARM内核的滴答定时器)产生,最小时间间隔视应用而定,在1~100ms之间,OS_CFG_TICK_RATE_HZ用来设置系统时钟频率。系统时钟中断的配置和ISR可以看下图。

uC/OS iii为了减少关闭中断的时间增加了延迟发布模式,将事件发布函数放在任务级来做,却因此增加一次额外的任务调度,模式选择的宏定义OS_CFG_ISR_POST_DEFERRED_EN在os_cfg.h中配置,OS_CFG_ISR_POST_DEFERRED_EN大于0时表示采用延迟发布模式,如果应用中存在要求响应非常迅速的中断源,建议采用此模式。

猜你喜欢

转载自www.cnblogs.com/heart-flying/p/10148127.html