RK3568平台 内核定时器的使用_rt3568 us级定时

本文介绍了RK3568平台中Linux内核定时器的使用,包括其非周期性特点、数据结构、API如add_timer、del_timer和mod_timer。还提及了内核中的节拍率概念以及HZ宏的作用。作者是一名有多年经验的嵌入式工程师,分享了一套全面的嵌入式&物联网开发学习资料。
摘要由CSDN通过智能技术生成

一.linux内核定时器

硬件为内核提供了一个系统定时器来计算流逝的时间(即基于未来时间点的计时方式,以当前时刻为计时开始的起点,以未来的某一时刻为计时的终点),内核只有在系统定时器的帮助下才能计算和管理时间,但是内核定时器的精度并不高,所以不能作为高精度定时器使用。并且内核定时器的运行没有周期性,到达计时终点后会自动关闭。如果要实现周期性定时,就要在定时处理函数中重新开启定时器。

二.内核定时器数据结构

	struct timer_list {
    struct list_head entry, /*定时器列表*/
    unsigned long expires, /*定时器到期时间,单位为节拍数*/
    void (*function) (unsigned long), /*定时器处理函数*/
    unsigned long data,/*作为参数被传入定时器处理函数*/
    struct timer_base_s *base,
    ...
  };

三.内核定时器API

add_timer:

作用:
	add_timer函数用于向Linux内核注册定时器,使用add_timer函数向内核注册定时器以后,定时器就会开始运行。
参数:
	timer:要注册的定时器。
返回值:
	无

del_timer:

作用:
	del_timer函数用于删除一个定时器,不管定时
  • 6
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值