From 1470d4f07e5ec74ff8347ee84b2ee986dd375457 Mon Sep 17 00:00:00 2001 From: Jer6y <3229960773@qq.com> Date: Wed, 16 Aug 2023 14:01:07 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=86=85=E6=A0=B8API?= =?UTF-8?q?=E6=96=87=E6=A1=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- doc/05.SDK_Manual.md | 24 ++++++++++++++---------- 1 file changed, 14 insertions(+), 10 deletions(-) diff --git a/doc/05.SDK_Manual.md b/doc/05.SDK_Manual.md index 3be64191..ef056d04 100644 --- a/doc/05.SDK_Manual.md +++ b/doc/05.SDK_Manual.md @@ -123,6 +123,8 @@ k_err_t tos_knl_sched_lock(void); K_ERR_KNL_NOT_RUNNING 内核并未处于运行状态。 K_ERR_LOCK_NESTING_OVERFLOW 调度锁溢出。 + + K_ERR_IN_IRQ 在中断服务程序ISR中上锁 ### tos_knl_sched_unlock @@ -145,6 +147,8 @@ k_err_t tos_knl_sched_unlock(void); K_ERR_KNL_NOT_RUNNING 内核并未处于运行状态。 K_ERR_SCHED_NOT_LOCKED 内核调度并未处于锁定状态。 + + K_ERR_IN_IRQ 在中断服务程序ISR中卸锁 ## 任务管理 @@ -1118,25 +1122,25 @@ k_err_t tos_event_pend(k_event_t *event, k_event_flag_t flag_expect, k_event_fla 1、TOS_OPT_EVENT_PEND_ANY - ​ 尝试从事件中获取一组旗标,并且这一组旗标包含 flag_expect 中标识的任意一个旗标,如果在此场景下视作 event 获取成功,则 opt 传递此参数。 + 尝试从事件中获取一组旗标,并且这一组旗标包含 flag_expect 中标识的任意一个旗标,如果在此场景下视作 event 获取成功,则 opt 传递此参数。 - ​ 举例来说,如果传入的 flag_expect 为 0x9(0x8 | 0x1),且 opt 为 TOS_OPT_EVENT_PEND_ANY,则 event 包含的旗标包含 0x8 或者 0x1 即视为事件获取成功,也就是说,event 包含的旗标为 (0x8 | X, X 为整数,且 X∈(0, 0xFFFFFFFF]),或者 (0x1 | X, X 为整数,且 X∈(0, 0xFFFFFFFF])。 + 举例来说,如果传入的 flag_expect 为 0x9(0x8 | 0x1),且 opt 为 TOS_OPT_EVENT_PEND_ANY,则 event 包含的旗标包含 0x8 或者 0x1 即视为事件获取成功,也就是说,event 包含的旗标为 (0x8 | X, X 为整数,且 X∈(0, 0xFFFFFFFF]),或者 (0x1 | X, X 为整数,且 X∈(0, 0xFFFFFFFF])。 2、TOS_OPT_EVENT_PEND_ALL - ​ 尝试从事件中获取一组旗标,并且这一组旗标必须至少包含 flag_expect 中标识的所有旗标,如果只在此种场景下视作 event 获取成功,则 opt 传递此参数。 + 尝试从事件中获取一组旗标,并且这一组旗标必须至少包含 flag_expect 中标识的所有旗标,如果只在此种场景下视作 event 获取成功,则 opt 传递此参数。 - ​ 举例来说,如果传入的 flag_expect 为 0x9(0x8 | 0x1),且 opt 为 TOS_OPT_EVENT_PEND_ALL,则 event 包含的旗标至少为 0x9 的最小全集才视为事件获取成功,也就是说,event 包含的旗标应为 (0x9 | X, X 为整数,且 X∈(0, 0xFFFFFFFF])。 + 举例来说,如果传入的 flag_expect 为 0x9(0x8 | 0x1),且 opt 为 TOS_OPT_EVENT_PEND_ALL,则 event 包含的旗标至少为 0x9 的最小全集才视为事件获取成功,也就是说,event 包含的旗标应为 (0x9 | X, X 为整数,且 X∈(0, 0xFFFFFFFF])。 3、TOS_OPT_EVENT_PEND_CLR - ​ 如果希望读取完事件后,直接复位清空 event 的所有旗标,则 opt 传递此参数。 + 如果希望读取完事件后,直接复位清空 event 的所有旗标,则 opt 传递此参数。 - ​ 举例来说,原 event 包含旗标为 0x9,在传递 TOS_OPT_EVENT_PEND_CLR 参数并成功获取 event 中的旗标后,event 包含的旗标会复位为 0x0。 + 举例来说,原 event 包含旗标为 0x9,在传递 TOS_OPT_EVENT_PEND_CLR 参数并成功获取 event 中的旗标后,event 包含的旗标会复位为 0x0。 - ​ 如果希望一次传入多个选项,可以用逻辑“或”将多个参数连接传入,譬如同时希望采用 TOS_OPT_EVENT_PEND_ANY 语义及 TOS_OPT_EVENT_PEND_CLR,可以传入(TOS_OPT_EVENT_PEND_ANY | TOS_OPT_EVENT_PEND_CLR)。 + 如果希望一次传入多个选项,可以用逻辑“或”将多个参数连接传入,譬如同时希望采用 TOS_OPT_EVENT_PEND_ANY 语义及 TOS_OPT_EVENT_PEND_CLR,可以传入(TOS_OPT_EVENT_PEND_ANY | TOS_OPT_EVENT_PEND_CLR)。 - ​ 需要注意的是,不可以同时传入 TOS_OPT_EVENT_PEND_ANY 与 TOS_OPT_EVENT_PEND_ALL。 + 需要注意的是,不可以同时传入 TOS_OPT_EVENT_PEND_ANY 与 TOS_OPT_EVENT_PEND_ALL。 - **返回值** @@ -3631,11 +3635,11 @@ k_err_t tos_timer_create(k_timer_t *tmr, 1、TOS_OPT_TIMER_ONESHOT - ​ 一次性定时器,创建定时器时传入此参数,表示该定时器是一次性的,只会执行一次。 + 一次性定时器,创建定时器时传入此参数,表示该定时器是一次性的,只会执行一次。 2、TOS_OPT_TIMER_PERIODIC - ​ 周期性定时器,创建定时器时传入此参数,表示该定时器是周期性的,定时器到期后,会按 period 参数开启下一个周期。 + 周期性定时器,创建定时器时传入此参数,表示该定时器是周期性的,定时器到期后,会按 period 参数开启下一个周期。 - **返回值**