在RTT内核启动之rt_hw_board_init硬件板级初始化函数-优快云博客这篇文章中,我们介绍完了板级硬件初始化函数,这篇文章中我们继续介绍系统定时器的初始化函数。
rt_timer_list定时器列表
与定时器相关的有一个很重要的系统定时器列表,他在timer.c文件中被定义:
/* hard timer list */
static rt_list_t rt_timer_list[RT_TIMER_SKIP_LIST_LEVEL];
这是一个rt_list_t类型(该类型是一个双向链表)的数组,数组大小由宏RT_TIMER_SKIP_LIST_LEVEL来决定,这个宏在rtdef.h文件中被定义,默认情况下这个宏数值为1,也就是数组大小就是1,即数组只有一个成员。
/**
* Double List structure
*/
struct rt_list_node
{
struct rt_list_node *next; /**< point to next node. */
struct rt_list_node *prev; /**< point to prev node. */
};
typedef struct rt_list_node rt_list_t; /**< Type for lists. */

内核对象定时器rt_timer结构体
除此之外我们再来说一下内核对象定时器rt_timer结构体的相关内容,下面是这个结构体的原型以及时钟和定时器的一些相关的宏定义:

最后一行中,我们定义了一个新的类型别名:rt_timer_t,它实际上是struct rt_

最低0.47元/天 解锁文章
853

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



