数码之家

 找回密码
 立即注册
搜索
查看: 1839|回复: 15

[C51] 首次学习使用8266,感觉网速好慢,请教大佬,谢谢

[复制链接]
发表于 2023-7-7 21:27:23 | 显示全部楼层 |阅读模式

爱科技、爱创意、爱折腾、爱极致,我们都是技术控

您需要 登录 才可以下载或查看,没有账号?立即注册

x
折腾了两天,终于调通8266的局域网通讯,8266已经可以与局域网电脑的tcp服务器通讯了,但是发现网速真的好慢,尝试了各种方法,速度只能达到400K~500K字节/每秒左右,这也太慢了吧。我看8266的资料这个芯片是150M比特每秒,按理说随便怎么弄也应该有个10M字节每秒呢,怎么会这么慢,请教大佬,应该往哪方便优化呢?谢谢,我用的是带操作系统的那个代码。还打算用来做局域网传视频呢
 楼主| 发表于 2023-7-7 21:32:33 | 显示全部楼层
说一下程序的思路:实际上是网上找的例子改来的,系统初始化后,先建立全局TCP连接,与局域网的服务器连接,然后再建立一个发送的任务,这个发送任务先与服务器连接,然后进入while不停的发送1K字节。电脑的TCP服务器开启后,正常连接时会看到有新的连接进来(有时候会有多个连接,后面有空再检查原因),这样就可以看到有数据显示出来了。然后过一段时间后统计数据总数除以时间,基本是在400K~500K字节每秒左右
回复 支持 反对

使用道具 举报

发表于 2023-7-8 00:13:50 | 显示全部楼层
100KB/s也能传视频吧,以前上学用的1M的ADSL上网,照样看优酷
回复 支持 反对

使用道具 举报

发表于 2023-7-8 09:25:10 | 显示全部楼层
150M 只是网络链接速率。
实际根据信号质量和支持的协议都会掉的。

不信你拿机连接2.4G WIFI 试试,大概率同样跑不到10MB。

还受限机能,如 CPU/总线/RAM/ROM、代码水平 等等。
跑到500KB/S 也不错了。
回复 支持 反对

使用道具 举报

发表于 2023-7-8 10:38:25 | 显示全部楼层
你用dma发送试试,软件循环发送比较慢
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-7-8 11:39:03 | 显示全部楼层
renpeng009 发表于 2023-7-8 00:13
100KB/s也能传视频吧,以前上学用的1M的ADSL上网,照样看优酷

多谢大佬指点,我再多试几次看看,我也是第一次接触这方面,还有很多优化的空间。因为现在是CPU全部频率都用来发送TCP,没有其它任务,而且是局域网,后面加上摄像头驱动这些,再连外网就不知道能达到多少速度了
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-7-8 11:39:42 | 显示全部楼层
junyee 发表于 2023-7-8 09:25
150M 只是网络链接速率。
实际根据信号质量和支持的协议都会掉的。

好的,谢谢大佬指点,用2台电脑2.4Gwifi局域网测试有时是可以达到10M以上速率的,但有时会降下来,应该是跟你说一那样,是信号质量wifi距离等因素在影响。现在程序只有一个任务,后边再开摄像头按键处理重传等可能还会降很多。我看网上有人说可能通过调用第三方的函数来提高速度,不过目前还没找到相关的资料。我再多找找看看,参考学习一下别人的方案
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-7-8 11:40:29 | 显示全部楼层
inthsunshine 发表于 2023-7-8 10:38
你用dma发送试试,软件循环发送比较慢

多谢大佬指点,翻看8266的资料基本上都是函数调用,还没有找到类似硬件资源寄存器,也没有找到DMA相关的函数,所以目前不知道怎么用DMA,如果可以的话请再指点一下,谢谢
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-7-8 12:36:39 | 显示全部楼层
似乎跟电脑端安装的服务器软件也有点关系,换了几个,有的变快有的变慢,另外手工计时也有点误差,但应该不会太大
回复 支持 反对

使用道具 举报

发表于 2023-7-8 12:51:46 来自手机浏览器 | 显示全部楼层
不清楚,传控制信号方便,视频怕是容量不够吧
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-7-8 17:31:04 | 显示全部楼层
xktx09 发表于 2023-7-8 12:51
不清楚,传控制信号方便,视频怕是容量不够吧

啊经你这么提醒,还真有可能不够内存。我还没做过摄像头类的项目,所以没注意到这些细节,io数量看来可能也不够摄像头接口,晚点再找资料确认。发现有一颗芯片32跟这个很像,程序应该是通用的,看到网上有带摄像头的板子,先学习好8266网速再学32,应该也是一样的
回复 支持 反对

使用道具 举报

发表于 2023-7-8 21:53:01 | 显示全部楼层
我用ESP32挂摄像头,读取640*480的jpg,然后局域网UDP传输。
每秒传10张,还是没问题的。
回复 支持 反对

使用道具 举报

发表于 2023-7-10 10:52:41 | 显示全部楼层
8266默认cpu是80MHz,你改成160MHz试一下。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-7-10 12:52:42 | 显示全部楼层
fryefryefrye 发表于 2023-7-8 21:53
我用ESP32挂摄像头,读取640*480的jpg,然后局域网UDP传输。
每秒传10张,还是没问题的。 ...

嗯,esp32后面也想学一下,感觉好多东西需要学
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-7-10 12:53:00 | 显示全部楼层
kindzhon 发表于 2023-7-10 10:52
8266默认cpu是80MHz,你改成160MHz试一下。

160Mhz已经开了的,连接方式也设置为802.11n,现在想到两个方面,一个是周边信号干扰,还有就是程序还需要优化
回复 支持 反对

使用道具 举报

发表于 2023-7-10 19:52:45 | 显示全部楼层
网络通讯是有CPU开销的,不是做不上去,是一旦网速上去,对硬件整体要求会上几个台阶,价格那就破防了。

相对以前只有 ZigBee 一个选择来说, ESP8266 ESP32 把 wifi + 蓝牙 拉到10元这个档次, 已经是很幸福的了,几年过去了 STM32 STC 至今也没做到。

你作为一个初学者不看价格去抱怨性能是不太好的习惯,什么档次的芯片就做什么用途,不要发明性的赶鸭子上架。

真有网速需求,去拆几个高速设备看看别人用的什么价格的芯片。

如只想高一点点性能,那ESP32勉强可用 https://blog.csdn.net/tiandiren111/article/details/119467052
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

APP|手机版|小黑屋|关于我们|联系我们|法律条款|技术知识分享平台

闽公网安备35020502000485号

闽ICP备2021002735号-2

GMT+8, 2024-5-4 15:41 , Processed in 0.234000 second(s), 12 queries , Redis On.

Powered by Discuz!

© 2006-2023 smzj.net

快速回复 返回顶部 返回列表