timers.h
BaseType_t xTimerStop( TimerHandle_t xTimer,
TickType_t xBlockTime );
软件定时器功能由定时器服务/守护进程任务提供。 许多
公共 FreeRTOS 定时器 API 函数通过定时器命令队列
向定时器服务任务发送命令。 定时器命令队列是
RTOS 内核本身的私有队列,
应用程序代码无法直接访问该队列。 定时器命令队列的长度
由 configTIMER_QUEUE_LENGTH 配置常量设置。
xTimerStop() 停止先前使用
xTimerStart()、
xTimerReset()、
xTimerStartFromISR()、
xTimerResetFromISR()、
xTimerChangePeriod() 以及
xTimerChangePeriodFromISR()
API 函数之一启动的定时器。
停用定时器可确保定时器不处于活动状态。
configUSE_TIMERS 配置常量必须设置为 1,xTimerStop()
才可用。
-
参数:
-
xTimer
|
正在停止的定时器的句柄。
|
xBlockTime
|
在调用 xTimerStop() 时队列已满的情况下,
指定调用任务应保持阻塞状态
以等待停止命令成功发送到定时器命令队列的时间
(以 tick 为单位)。 如果在
启动 RTOS 调度器之前调用 xTimerStop(),则会忽略 xBlockTime。
|
-
返回:
-
如果即使经过了 xBlockTime(以 tick 为单位)之后,
停止命令仍无法发送到定时器命令队列,则返回 pdFAIL。 如果该命令成功发送到定时器命令队列,
则返回 pdPASS。
实际处理命令的时间取决于
定时器服务/守护进程任务相对于系统中其他任务的优先级。 定时器服务/守护进程任务的优先级由
服务/守护进程任务的优先级由 configTIMER_TASK_PRIORITY
配置常量设置。
用法示例:
请参阅 xTimerCreate() 文档页面上的示例。
Copyright (C) Amazon Web Services, Inc. or its affiliates. All rights reserved.