xSendEventStructToIPTask()
[以太网驱动程序移植 API]
FreeRTOS_IP_Private.h
BaseType_t xSendEventStructToIPTask( const IPStackEvent_t *pxEvent, TickType_t xTimeout );
xSendEventStructToIPTask() 在整个嵌入式 TCP/IP 堆栈的
实现中被用于将各种事件发送至 RTOS 任务,
该任务正在运行嵌入式 TCP/IP 堆栈。 此函数可在
网络端口层使用,
以便网络端口层可以将接收事件发送到相同的 RTOS
任务。
参数:
pxEvent
|
指向 IPStackEvent_t 类型的结构体的指针。
typedef struct IP_TASK_COMMANDS
{
eIPEvent_t eEventType;
void *pvData;
} IPStackEvent_t;
The IPStackEvent_t type
|
xTimeout
|
无法立即发送消息时,等待发送消息的时间(以 RTOS tick 为单位),
消息将发送至 RTOS 任务,
该任务正在运行嵌入式 TCP/IP 堆栈。
如果
网络事件队列已满,可能无法立即发送消息。
|
返回:
如果事件已成功发送至 RTOS 任务,
而该任务正在运行嵌入式 TCP/IP 堆栈,则返回 pdPASS。 如果 xTimeout 大于
零,则调用任务可能已保持在阻塞状态(因此
不消耗任何 CPU 时间)以等待消息发送,但
在函数返回之前,消息已成功发送。
如果事件无法发送至 RTOS 任务
(正在运行嵌入式 TCP/IP 堆栈),且
网络事件队列
已满,则返回 pdFAIL。 如果 xTimeout 大于零,则
调用任务可能已保持在阻塞状态以等待
网络事件队列上的可用空间,但在那之前
阻塞时间已过期。
用法示例:
有关示例,请参阅
将 FreeRTOS 移植到不同的微控制器
页面。 在该页面搜索 xSendEventStructToIPTask() 以查找示例
源代码。
Copyright (C) Amazon Web Services, Inc. or its affiliates. All rights reserved.