鸿蒙嵌入式系统开发原理与实战 课件 第7章 定时器控制_第1页
鸿蒙嵌入式系统开发原理与实战 课件 第7章 定时器控制_第2页
鸿蒙嵌入式系统开发原理与实战 课件 第7章 定时器控制_第3页
鸿蒙嵌入式系统开发原理与实战 课件 第7章 定时器控制_第4页
鸿蒙嵌入式系统开发原理与实战 课件 第7章 定时器控制_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第7章定时器控制学习完本课程后,您将能够:了解软件定时器的概念掌握LiteOS-m内核的定时器控制开发技术。软件定时器定时器控制API开发示例——定时器控制的小闹钟电路原理图代码设计编译、烧录和调试软件定时器

软件定时器(SoftwareTimer)是基于系统Tick时钟中断且由软件来模拟的定时器。当经过设定的Tick数后,会触发用户自定义的回调函数。硬件定时器受硬件的限制,数量上不足以满足多任务场景下的定时需求。鸿蒙轻内核提供了软件定时器功能扩展了这一能力,允许用户动态创建多个虚拟定时器,从而灵活支持复杂的定时任务管理。软件定时器定时器控制API开发示例——定时器控制的小闹钟电路原理图代码设计编译、烧录和调试定时器控制API

在LiteOS-m内核提供的软件定相关声明函数位于kernel\liteos_m\kal\cmsis文件夹中,cmsis_os2.h文件的489行到523行声明了定时器的相关说明,下面对一些常用的API进行介绍。(1)osTimerId_tosTimerNew(osTimerFunc_tfunc,osTimerType_ttype,void

*argument,constosTimerAttr_t

*attr)osTimerNew函数的作用是创建一个定时器,该函数有四个参数,第一个参数func为定时器的回调函数,第二个参数type为定时器的类型,第三个参数argument为回调函数的参数,第四个参数attr为定时器的属性。函数运行成功返回任定时器ID,运行失败则返回NULL。定时器控制API

(1)osTimerId_tosTimerNew(osTimerFunc_tfunc,osTimerType_ttype,void

*argument,constosTimerAttr_t

*attr)

第二个参数type为定时器的类型如图:LiteOS-m的定时器控制简介——定时器API

(2)constchar*osTimerGetName(osTimerId_ttimer_id)osTimerGetName函数的作用是获取指定定时器的名字,该函数只有一个参数timer,为要获取名字的定时器的定时器ID。函数运行成功返回定时器的名称,运行失败则返回NULL。(3)osStatus_tosTimerStart(osTimerId_ttimer_id,uint32_tticks)osTimerStart函数的作用是启动或者重启指定的定时器,该函数有两个参数,第一个参数timer_id为定时器ID,第二个参数ticks为定时器的滴答数。函数运行成功返回0,运行失败则返回其他代码。LiteOS-m的定时器控制简介——定时器API

(4)osStatus_tosTimerStop(osTimerId_ttimer_id)osTimerStop函数的作用是停止指定的定时器,该函数只有一个参数timer_id,为要停止的定时器的定时器ID。函数运行成功返回0,运行失败则返回其他代码。(5)uint32_tosTimerIsRunning(osTimerId_ttimer_id)osTimerIsRunning函数的作用是检查一个定时器是否在运行,该函数只有一个参数timer_id,为要检查的定时器的定时器ID。返回1为定时器正在运行,否则返回0。LiteOS-m的定时器控制简介——定时器API

(6)osStatus_tosTimerDelete(osTimerId_ttimer_id)osTimerDelete函数的作用是删除指定的定时器,该函数只有一个参数timer,为定时器的定时器ID。函数运行成功返回0,运行失败则返回其他代码。软件定时器定时器控制API开发示例——定时器控制的小闹钟电路原理图代码设计编译、烧录和调试开发示例——定时器控制的小闹钟

案例设计目标:(1)使用定时器制作一个小闹钟。(2)计时20秒后蜂鸣器响起。软件定时器定时器控制API开发示例——定时器控制的小闹钟电路原理图代码设计编译、烧录和调试开发示例——定时器控制的小闹钟

电路原理图:开发示例——定时器控制的小闹钟

电路原理图:开发示例——定时器控制的小闹钟

电路原理图:软件定时器定时器控制API开发示例——定时器控制的小闹钟电路原理图代码设计编译、烧录和调试开发示例——定时器控制的小闹钟

程序代码软件定时器定时器控制API开发示例——定时器控制

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论