This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] CC3120:触发模式

Guru**** 2543570 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/wireless-connectivity/wi-fi-group/wifi/f/wi-fi-forum/609025/cc3120-trigger-mode

器件型号:CC3120

我的应用大部分处于低功耗模式、但需要对多个事件做出反应、其中一个事件是传入的 UDP 流量。 我有几个关于触发模式的问题、这似乎是我的案例的解决方案:

因此在进入低功耗睡眠之前,我正在按照用户指南中所述以零超时调用 sl_Select(),如果 sl_Select()返回正数,我继续进入 sl_Recvfrom (),否则我进入睡眠状态,直到调用 slcb_SocketTriggerEventHandler,然后接收等等。 这似乎是正确的方法吗?

2.根据我对其它堆栈的经验,当没有套接字准备就绪时,SELEC()通常返回0,但 sl_Select()返回 SL_ERROR_BSD_EAGAAIN。 是通过消除行为来实现的吗? 如果没有可用数据、它是否会始终返回 SL_ERROR_BSD_EAGAIN?

使用 SlSockTriggerEvent_t 调用 slcb_SocketTriggerEventHandler、在我的案例中、SlSockTriggerEvent_t:::Event 设置为1、SlSockTriggerEvent_t::EventData 设置为0。 含义是什么? 我能否使用这些值来确定哪些套接字已"就绪"?