如何在DSPS主机示例中创建新的定时器中断功能?

2个帖子/ 0新
最后一篇
FN654.
离线
最后一次露面:10个月前1年
加入:2016-06-14 13:27
如何在DSPS主机示例中创建新的定时器中断功能?

我已经看到了一个名为app_easy_timer()的函数,如下所示.i调用app_easy_timer()user_on_init()函数并返回1.但是切勿进入我设置的函数。它是什么?
谢谢。
/ **
****************************************************************************************
* @brief创建一个新的计时器。如果需要,激活BLE。
* @param [in]延迟定时器插槽的量(10 ms)等待。
* @param [in]在计时器到期时要调用回调。
* @return用于将来参考的计时器的处理程序。如果没有计时器可用
* easy_timer_invalid_timer将返回。
****************************************************************************************
* /
timer_hnd app_easy_timer(const uint16_t延迟,void(* fn)(void))
{
timer_hnd timer_id = app_easy_timer_set_callback(fn);
if(timer_id ==yeal_timer_invalid_timer)
返回(easy_timer_invalid_timer);//没有可用的计时器

if(app_check_ble_active()))
ke_timer_set(app_easy_timer_hnd_to_msg_id(timer_id),task_app,delay);
别的
{
ARCH_BLE_FORCE_WAKEUP();// key_up ble.
//在执行之前发送消息等待BLE在执行之前醒来
struct create_new_timer_struct * req = ke_msg_alloc(app_create_new_timer,task_app,task_app,
create_new_timer_struct);

req->延迟=延迟;
req-> timer_id = timer_id;
KE_MSG_SEND(REQ);
}
返回(timer_id);
}

设备:
mt_dialog.
离线
最后一次露面:2个月2周前
职员
加入:2015-06-08 11:34
嗨fn654,

嗨fn654,

如果从app_user_on_init()调用计时器,则计时器将永远不会触发,因为在调用该函数之后,调用一个GAPM_RESET命令,并且堆栈被重新初始化,因此取消任何设置的定时器。尝试在代码中稍后设置计时器,例如,当您开始宣传或在数据库完成时,请执行以下操作。

谢谢mt_dialog.