我正在使用 RAW 模式套接字(L1原始模式)在项目中进行一些数据交换。
SL_Send 似乎没有立即开始传输、并且需要一些任意时间来传输传递给它的数据包。
- 导致这种情况的原因是什么?
- 我可以避免它并确保 sl_Send 更可预测(更直接)的数据包传输吗?
--
谢谢、此致、
Neeraj Sallh
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.
我正在使用 RAW 模式套接字(L1原始模式)在项目中进行一些数据交换。
SL_Send 似乎没有立即开始传输、并且需要一些任意时间来传输传递给它的数据包。
--
谢谢、此致、
Neeraj Sallh
您好、Charles、
--
此致、
Neeraj Sallh
对此进行的任何更新。
同时、我在阅读原始套接字的编程人员手册时发现了一些信息。
下面我会根据这一点提出问题。 这些还有助于满足我的射频 Tx 和 SL_Send 调用之间的立即/固定延迟要求。
1。
对于我在调用 sl_Send 后对射频上的即时/固定延迟 Tx 的要求、用于原始套接字的如下套接字选项"sl_SO_PHY_TX_TIMEOUT"是否会有所帮助?
编程手册"swru455d.pdf"中提到的代码为:
_u32超时= 0;
RET = SL_SetSockOpt (radioTool_rawSocketdesc、SL_SOL_PHY_OPT、SL_SO_PHY_TX_TIMEOUT、&TIMEOUT、sizeof (TIMEOUT));
IF (RET)
{
返回-1;
}
2.
此选项的用途是什么? 本文档未说明其用途。 禁用 CCA 覆盖时、它是否适用于原始套接字模式?
您好、Michael、
1。
我知道 NWP 是一个 MCU、可能还在做一些其他事情、这可能会导致数据包通过无线电实际获取 TX 的时间发生变化。
但是、我的应用程序不会触发任何网络、甚至与加密相关的事件。 Wi-Fi 模式也不是、而是原始模式、即 Wi-Fi 协议和 CCA 算法的可变性也不存在。
因此、NWP 在 SL_Send 为其提供的数据包 TX 之外可能还会做些什么? 如果应用程序可以避免触发此类活动、可能是我们可以通过无线电获得更好的可预测数据包 TX。
2.
套接字选项"sl_SO_PHY_TX_TIMEOUT"是否用于"阻塞"套接字、因此在套接字打开/配置为非阻塞时不有用?
或者、选择此选项"sl_SO_PHY_TX_TIMEOUT"是否会使"非阻塞"套接字甚至成为 sl_Send 器件的"阻塞"套接字?