代码拉取完成,页面将自动刷新
同步操作将从 jiaqiang.Li/stm32-task-timer-event 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
#include "os_task.h"
#include "os_task_event.h"
#include "os_task_timer.h"
/**
* ************************************************************************
* @brief 进入工作模式
* @param [in] param
* ************************************************************************
*/
void working_mode_enter(uint8_t *param)
{
// do somethings
task_event_publish(EVENT_COLLECT_FINISH, NULL, NULL);
}
static struct os_task_attr main_task_attr =
{
.timer_type = TASK_TIMER_TYPE_PERIOD,
.timeout = 1000,
.task_enter_func = working_mode_enter,
};
/**
* ************************************************************************
* @brief 采集事件进入
* @param [in] param_8u
* @param [in] param_16u
* @return int8_t
* ************************************************************************
*/
int8_t collect_event_enter(uint8_t *param_8u, uint16_t *param_16u)
{
(void)param_8u;
(void)param_16u;
// do somethings
return INT8_0;
}
/**
* ************************************************************************
* @brief app顶层事件,在main函数初始化外硬件外设后调用
* ************************************************************************
*/
void app_task_enter(void)
{
// 订阅退出工作模式事件
task_event_subscribe(EVENT_COLLECT_FINISH, collect_event_enter);
// 开始工作模式周期1s的任务
main_task_attr.timeout = (int32_t)alg_user_params.meas_interval_ms;
// 主任务优先级最高为0,数值越大优先级越低
os_task_create(&main_task_attr, (uint8_t)0);
// 启动任务循环
os_task_loop();
// os_task_loop函数后面不要加任务执行语句,因为不会执行
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。