您好!
我尝试从 SDK 版本8.04中的示例开始、通过套接字进行 UDP 通信。
我修改了 TCP 示例、使用相同的字符串通过 TCP 和 UDP 发送计数器。
TCP 部分工作正常、但 UDP 发送在始终发送数据包的情况下、发送正确字符串的工作非常糟糕、经常跳过并重复接收到的数据包。 当前 SDK 版本是否完全支持 UDP 套接字、或者该功能是否正在进行开发?
memset(&snd_buf, 0, sizeof(snd_buf));
printed = snprintf(snd_buf, sizeof(snd_buf), "Hello over UDP %d\r\n", i);
EnetAppUtils_print(snd_buf);
EnetAppUtils_print("\r\n");
lwip_write(sock_udp, snd_buf, printed);
/* Send data to Host */
ret = lwip_write(sock, snd_buf, printed);
上面的 sock 是在 app_socket 中创建的 TCP 套接字、sock_udp 是 UDP 套接字、Wireshark 捕获具有上述 UDP 问题以及在接收到的字符串中存在一致的"off by 1"延迟。
谢谢、
Mike