ESP32的UDP,传输延迟太高
刚开始玩ESP32,照着几个例程修改了一个,通过蓝牙获取WIFI的ID和密码,然后建立UDP连接,发现延迟太高,大概500ms。电脑端定时500ms发数据,ESP32收到再转发出去,然后电脑串口收到,大概延迟了500模式。
你间隔500ms发,延迟当然是500ms了。。你加长到2秒,看看是不是延迟2秒了。。或者发不同数据。 弱弱的问一句,为啥不用ping测延时额? 天下乌鸦一般黑 发表于 2022-9-4 19:50
弱弱的问一句,为啥不用ping测延时额?
(引用自3楼)
哈,忘记这个了。刚测了一下,感觉还好啊。
wye11083 发表于 2022-9-4 19:48
你间隔500ms发,延迟当然是500ms了。。你加长到2秒,看看是不是延迟2秒了。。或者发不同数据。 ...
(引用自2楼)
UDP间隔500ms发,但是串口显示是间隔1s才收到数据 ping延迟这么高又不稳定,这是wifi信号不好。 ESP32有的模块天线好像有问题,很卡,用手以某种姿势握住或捏住天线会变流畅(用摄像头的那个例程测试),至于为什么说不好,我不是玩无线电的,对于这个问题,老外有缠铝箔纸的 vtte 发表于 2022-9-4 20:28
ping延迟这么高又不稳定,这是wifi信号不好。
(引用自6楼)
ping延迟多少下是合理的?路由器在客厅,模块在卧室 没发现这个问题{:lol:} 应该还是程序问题把 boyiee 发表于 2022-9-4 20:33
没发现这个问题 应该还是程序问题把
(引用自9楼)
能看出是哪块出问题了吗?这个是loop循环
zhanghua315 发表于 2022-9-4 20:36
能看出是哪块出问题了吗?这个是loop循环
(引用自10楼)
可能有几个地方可以测试一下:(1)print往串口打印可能很慢,(2)你的flag可能有bug,看上去flag1和flag2切换有毛病,你不要做flag试试,收到立马返回。看上去你的程序在收下一包时才回传上一包? 这块没看明白。 wye11083 发表于 2022-9-4 21:39
可能有几个地方可以测试一下:(1)print往串口打印可能很慢,(2)你的flag可能有bug,看上去flag1和fla ...
(引用自11楼)
1、print往串口打慢,这个也是有可能。但是应该不至于慢这么多。
2、Debug_flag只是调试用,其他时候关掉。flag1和2,初始化后就设置1,第二次进来就不再初始化,减少延迟。
3、UDP收到数据,然后转换为字符串后,立即通过串口发出去,不做其他处理。 没有这个问题,延时应该在30ms以内. 看看是不是socket超时问题。 官方例程测试一下 是不是你的以太网处理程序是500ms处理一次 以前测试过,我连接自己的阿里云主机差不多40ms,用的mqtt. qwe2231695 发表于 2022-9-4 23:37
没有这个问题,延时应该在30ms以内. 看看是不是socket超时问题。
(引用自13楼)
使用arduino环境,没有配置socket akey3000 发表于 2022-9-5 06:46
官方例程测试一下
(引用自14楼)
这个程序跟官方比,也差不多,就是收到数据立即串口输出。 初音之恋 发表于 2022-9-5 08:32
是不是你的以太网处理程序是500ms处理一次
(引用自15楼)
程序中收到UDP数据,就立即串口打印出来 Modem sleep 关闭之后再测测看
页:
[1]