UCOSIII 时钟节拍的粗浅理解

本文探讨了UCOSIII操作系统如何基于时钟节拍运行,特别是ostimedly函数的计时原理。作者深入研究了OS_CPU_SysTickHandler函数在中断处理中的作用,并指出在原子库的delay.c中找到了与STM32中断入口相关的函数。通过配置SYSTICK中断和OSCfg_TickRate_Hz,实现了固定频率的系统节拍。
摘要由CSDN通过智能技术生成

UCOSiii的运行基本上都是建立在时钟节拍的基础之上,ostimedly这些函数更是以节拍为单位进行计时,那么这个时间到底是怎么来的,我比较困惑就稍微研究了一下,有不对的地方欢迎指出。


首先,在os_cpu_c.c中有void  OS_CPU_SysTickHandler (void),函数说明中有如下内容

/*$PAGE*/
/*
*********************************************************************************************************
*                                          SYS TICK HANDLER
*
* Description: Handle the system tick (SysTick) interrupt, which is used to generate the uC/OS-II tick
*              interrupt.
*
* Arguments  : None.
*
* Note(s)    : 1) This function MUST be placed on entry 15 of the Cortex-M3 vector table.
*********************************************************************************************************
*/

这是中断入口函数,UCOS按此中断作为节拍,搜索工程内并无此中断入口(使用原子的例程),后来又找了找,发现是原子自己写的delay.c中有如下函数

//systick中断服务函数,使用ucos时用到
v
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值