DA1458x使用之第三篇——定时器

本文介绍了如何在DA1458x芯片上使用定时器来实现周期性任务和RTC功能。首先在app_api.h文件中定义一个TIMER,如APP_PERIOD_TASK_TIMER,然后创建定时器的handler函数,该函数在定时器触发时执行特定任务。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

用定时器可以实现一个周期性的任务,或者RTC,DA14580本身是不带RTC的。


1.首先是定义一个TIMER,在app_api.h文件的APP_MSG{}里,比如定义一个周期性任务的timer

APP_PERIOD_TASK_TIMER


2.定义timer的handler函数,也就是定时器唤醒时要执行的任务程序,如下所示,

int period_task_timer_handler(ke_msg_id_t const msgid, void const *param, ke_task_id_t const dest_id, ke_task_id_t const src_id)
{
 
   /*
       add code here
  */
  
   return (KE_MSG_CONSUMED);
}
需要注意一点,return (KE_MSG_CONSUMED);不可省。

3.将定义的timer和handler关联起来,在app_task_handlers.h里的EXTERN const struct ke_msg_handler app_default_state[]中,程序如下
   {APP_PERIOD_TASK_TIMER,                  (ke_msg_func_t)period_task_timer_handler},

4.好,到现在我们就已
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值