经试验,ESP32要进行UDP广播,远程地址必须为INADDR_BROADCAST(即255.255.255.255),如果指定为特定IP,即使在setsockopt中开启SO_BROADCAST选项,也只有指定主机能接受到。另外,进行广播时,数据包会时不时卡顿。比如指定一秒发送一个数据包,则可能卡住5,6秒,然后一下子发出5,6个包。但是这种现象在指定为特定IP时,进行UDP发送并不会出现。目前仍在找原因,怀疑是数据缓冲区满了一起发送。或者网关路由器处理这样的包时会卡顿。暂时不清楚,有时又是1秒一个很及时。但是会突然卡住一段时间,或者丢包,或者突然几个包一起发出去。
ESP32进行UDP广播的问题
最新推荐文章于 2024-01-01 22:57:17 发布