LOADING

加载过慢请开启缓存 浏览器默认开启

openharmony用ubuntu编写定时

openharmony用ubuntu编写中断

代码下载

第一部分:代码结构

软件部分目录结构

timer_demo
├─ BUILD.gn
└─timer_once.c

我们打开文件
代码打开timer_once.c

hi3861默认10ms为一个tick

主要函数

头文件

#include <stdio.h>      // 标准输入输出
#include <unistd.h>     // POSIX标准接口

#include "ohos_init.h"  // 用于初始化服务(services)和功能(features)
#include "cmsis_os2.h"  // CMSIS-RTOS API V2

创建定时

osTimerNew(osTimerFunc_t func, osTimerType_t type, const osTimerAttr_t *attr);                        

func:函数指针指向回调函数(时间到执行的函数)
type:定时器类型,osTimerOnce表示单次定时器,ostimer周期表示周期性定时器
argument:定时器回调函数的参数 不清楚填NULL
attr:计时器属性 不清楚填NULL
返回值:定时器ID

启动定时器,不能在中断服务调用该函数

osStatus_t osTimerStart (osTimerId_t timer_id,uint32_t ticks)

timer_id:定时器ID
ticks:时间滴答计时器的值
返回值:0 - 成功,非0 - 失败

停止定时器

osTimerStop(osTimerId_t timer_id)

timer_id: 定时器id

删除定时器

osStatus_t osTimerDelete (osTimerId_t timer_id)

timer_id:定时器ID
返回值:0 - 成功,非0 - 失败