mirror of
https://gitee.com/cosyos/cosyos.git
synced 2026-08-17 16:52:27 +08:00
删除文件 System/sv_tick.h
This commit is contained in:
@@ -1,85 +0,0 @@
|
||||
/**************************************************************************//**
|
||||
* @item CosyOS-II Kernel
|
||||
* @file sv_tick.h
|
||||
* @brief 滴答服务
|
||||
* @details 仅在 SysTick 中调用并执行,包括在滴答钩子、定时中断钩子、
|
||||
定时查询钩子、定时查询事件等处调用。
|
||||
* @author 迟凯峰
|
||||
* @version V3.1.0
|
||||
* @date 2024.11.11
|
||||
******************************************************************************/
|
||||
|
||||
#ifndef __SV_TICK_H
|
||||
#define __SV_TICK_H
|
||||
|
||||
s_ecode_t st_suspend_task (s_tasknode_tsp htask);
|
||||
s_ecode_t st_resume_task (s_tasknode_tsp htask);
|
||||
s_ecode_t st_delete_task (s_tasknode_tsp htask);
|
||||
s_ecode_t st_set_taskpri (s_tasknode_tsp htask, s_u8_t pri);
|
||||
s_ecode_t st_set_block (s_tasknode_tsp htask, s_delay_t tick);
|
||||
s_ecode_t st_clear_block (s_tasknode_tsp htask);
|
||||
s_bool_t st_take_binary (s_binary_tsp hbin);
|
||||
s_bool_t st_take_semaphore (s_semaph_tsp hsem);
|
||||
void st_give_semaphore (s_semaph_tsp hsem);
|
||||
m_fetion_t st_recv_fetion (s_tionbox_tsp htbox);
|
||||
void *st_recv_mail (s_mailbox_tsp hmbox);
|
||||
void st_send_mail (s_mailbox_tsp hmbox, void *mail);
|
||||
void *st_recv_msg (s_queue_tsp hque);
|
||||
s_ecode_t st_send_msg (s_queue_tsp hque, void *msg);
|
||||
|
||||
/**
|
||||
@addtogroup 滴答服务
|
||||
@{
|
||||
*/
|
||||
|
||||
#define sTSV_SuspendTask(htask) st_suspend_task(htask) /*!< 挂起任务 */
|
||||
#define sTSV_ResumeTask(htask) st_resume_task(htask) /*!< 恢复任务 */
|
||||
#define sTSV_DeleteTask(htask) st_delete_task(htask) /*!< 删除任务 */
|
||||
#define sTSV_SetTaskPri(htask, pri) st_set_taskpri(htask, pri) /*!< 设置任务优先级 */
|
||||
#define sTSV_SetBlock(htask, tick) st_set_block(htask, tick) /*!< 设置阻塞(时间)*/
|
||||
#define sTSV_ClearBlock(htask) st_clear_block(htask) /*!< 清除阻塞(状态)*/
|
||||
#define sTSV_TakeBin(bin) st_take_binary(&bin) /*!< 获取二值信号量 */
|
||||
#define sTSV_TakeSem(sem) st_take_semaphore(&sem) /*!< 获取计数信号量 */
|
||||
#define sTSV_GiveSem(sem) st_give_semaphore(&sem) /*!< 给予计数信号量 */
|
||||
#define sTSV_RecvFetion(tbox) st_recv_fetion(&tbox) /*!< 接收飞信 */
|
||||
#define sTSV_RecvMail(mbox) st_recv_mail(&mbox) /*!< 接收邮件 */
|
||||
#define sTSV_SendMail(mbox, mail) st_send_mail(&mbox, mail) /*!< 发送邮件 */
|
||||
#define sTSV_RecvMsg(que) st_recv_msg((s_queue_tsp)&que) /*!< 接收消息 */
|
||||
#define sTSV_SendMsg(que, msg) st_send_msg((s_queue_tsp)&que, msg) /*!< 发送消息 */
|
||||
#define sTSV_TimInt(tmid, tick) s_timint_handle[tmid]->timer = s_timint_handle[tmid]->reload = tick /*!< 定时中断 */
|
||||
#define sTSV_TimQry(tmid, tick) s_timqry_handle[tmid]->timer = s_timqry_handle[tmid]->reload = tick /*!< 定时查询 */
|
||||
#define sTSV_GetTime(t) s_memcpy(t, s_rtc[0], sizeof(s_rtc[0])) /*!< 获取时间 */
|
||||
|
||||
/** 设置时间 */
|
||||
#define sTSV_SetTime(t) \
|
||||
do{ \
|
||||
s_memcpy(s_rtc[0], t, sizeof(s_rtc[0])); \
|
||||
tUpdateCopy(s_memcpy(s_rtc[1], s_rtc[0], sizeof(s_rtc[0]))); \
|
||||
}while(false)
|
||||
|
||||
/** 发送私信 */
|
||||
#define sTSV_SendTaskMsg(task) \
|
||||
s_sign_send_taskmsg = true; \
|
||||
MCUCFG_TASKMSG_PSP; \
|
||||
task(MCUCFG_TASKMSG_VAL,
|
||||
|
||||
/** 查询标志组 */
|
||||
#define sTSV_QueryFlagGroup(group) \
|
||||
( \
|
||||
sizeof(group) == 1 ? *(s_u8_t *)&group ? true : false \
|
||||
: sizeof(group) == 2 ? *(s_u16_t *)&group ? true : false \
|
||||
: sizeof(group) == 4 ? *(s_u32_t *)&group ? true : false \
|
||||
: false \
|
||||
)
|
||||
|
||||
/** 清除标志组 */
|
||||
#define sTSV_ClearFlagGroup(group) \
|
||||
do{ \
|
||||
sizeof(group) == 1 ? *(s_u8_t *)&group = false : MCUCFG_TERNARYMASK \
|
||||
sizeof(group) == 2 ? *(s_u16_t *)&group = false : MCUCFG_TERNARYMASK \
|
||||
sizeof(group) == 4 ? *(s_u32_t *)&group = false : false; \
|
||||
}while(false)
|
||||
|
||||
/** @} */
|
||||
|
||||
#endif
|
||||
Reference in New Issue
Block a user