mirror of
https://gitee.com/cosyos/cosyos.git
synced 2026-03-24 14:12:29 +08:00
39 lines
1.6 KiB
C
39 lines
1.6 KiB
C
/**************************************************************************//**
|
||
* @item CosyOS-III Kernel
|
||
* @file sv_pend.h
|
||
* @brief PSV服务
|
||
* @details 仅在 PendSV中断 中调用并执行。
|
||
* @author 迟凯峰
|
||
* @version V2.3.1
|
||
* @date 2026.03.01
|
||
******************************************************************************/
|
||
|
||
#ifndef __SV_PEND_H
|
||
#define __SV_PEND_H
|
||
|
||
/**
|
||
@addtogroup CosyOS_内核服务
|
||
@{
|
||
*//**
|
||
\defgroup PSV服务
|
||
\brief 仅在 PendSV中断 中调用并执行的服务。
|
||
包括通过挂起服务调用(iPendSVC)间接调用,在挂起服务钩子(pendsv_hook)中调用。
|
||
如果通过挂起服务调用(iPendSVC)间接调用,就是 FIFO服务;
|
||
如果通过挂起服务钩子(pendsv_hook) 调用,就是 FIAG服务。
|
||
@{
|
||
*/
|
||
|
||
#define sPSV_ClearDelay() sc_clear_delay() /*!< 清除就绪延时 */
|
||
#define sPSV_ResumeTask(htask) sc_resume_task(htask) /*!< 恢复任务 */
|
||
#define sPSV_SuspendTask(htask) sc_suspend_task(htask) /*!< 挂起任务 */
|
||
#define sPSV_DeleteTask(htask) sc_delete_task(htask) /*!< 删除任务 */
|
||
#define sPSV_ClearBlock(htask) sc_clear_block(htask) /*!< 清除阻塞(状态)*/
|
||
#define sPSV_SetBlock(htask, tick) sc_set_block(htask, tick) /*!< 设置阻塞(时间)*/
|
||
#define sPSV_SetTaskPri(htask, npri) sc_set_taskpri(htask, npri) /*!< 设置任务优先级 */
|
||
#define sPSV_GiveBin(bin) sc_write_binary(&bin, true) /*!< 给予二值信号量 */
|
||
|
||
/** @} */
|
||
/** @} */
|
||
|
||
#endif
|