找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 14826|回复: 12
收起左侧

关于esp8266与路由器实现远程访问(小白版)

  [复制链接]
ID:170892 发表于 2018-8-25 12:32 | 显示全部楼层 |阅读模式
    最近发现远程控制挺火的,正好也用8266搞了一下,发现挺好用的。    esp8266一般大家都会用它作为服务端,连接它自己发出的wifi,然后通过调试助手通信,这就局限于本身wifi覆盖范围了。

    那具体怎么实现通过TCP连接到esp8266,从而实现手机APP用蜂窝数据就能实现通信呢?
    可以看下面的链接。
    先PS一下:本人对TCP没什么研究,也是在网上跟 匠芯科技 所发布的教学一步一步学的(基本上是照搬的),同时感谢匠芯科技,还请大家勿喷,谢谢!
                   博客链接:http://www.cnblogs.com/yangfengwu/p/7736296.html
                   大家可以自己去看,我就是说一下过程。
   
     esp8266连接路由器后会得到一个IP,因为大部分家里的路由器都会默认开启DHCP服务,这样的话每次重启连接后的IP可能不一样,那样就不太好去
实现,如果那样的话就还得需要一些其他步骤(这里不做说明)。  esp8266本身就可以设定固定的IP,防止每次IP不一样。
     步骤:1、设置为station模式或者station与AP共存也行     AT+CWMODE=3或等于1也行
              2、复位一下                                AT+RST
              3、连接AP(连接路由器的wifi)     AT+CWJAP – 连接 AP       ps:可以先用AT+CWLAP   查询当前可用的wifi
              4、设置IP地址                             例:AT+CIPSTA="192.168.3.123","192.168.3.1","255.255.255.0"     ps:我家路由器是192.168.3.1段的

              5、设置多连接                             AT+CIPMUX=1
              6、建立TCP服务端                        AT+CIPSERVER=1,8080          ps:前面的1表示开启,后面的为端口号(自己设定的)
基本上就是这些了,然后怎么实现内网映射,看上面的链接就行,有详细讲解的。
      最后,还有TCP 服务超时时间的设定,因为测试的时候不一定会一直发送数据,会被检测到一定时间内未有数据产生会自动关闭连接。
推荐设置一下
AT+ CIPSTO – 设置 TCP server 超时时间

例:AT+CIPSTO=100     就是100秒内未通信就会断开连接,最大时间是7200秒,如果设置为0就表示永久不会被超时检测,测试推荐设置为0。

关于自己做APP的TCP Client的方面还未搞明白,所以我安利一个APP方便大家调试。
个人觉得最好还是要自己搞一个APP,这样自己定义怎么样通信,会比较方便,因为调试助手每次都得自己操作才行。


如果有什么不懂的地方可留言讨论!

0.png

TCPTelnetTerminal_13.rar

2.64 MB, 下载次数: 99, 下载积分: 黑币 -5

评分

参与人数 2黑币 +105 收起 理由
zqy181818 + 5 很给力!
admin + 100 共享资料的黑币奖励!

查看全部评分

回复

使用道具 举报

ID:390236 发表于 2018-8-29 09:41 | 显示全部楼层
在内网还要买个服务才行是吧?
回复

使用道具 举报

ID:3802 发表于 2018-10-26 17:14 | 显示全部楼层
小白,远程可以发数据,不错。
回复

使用道具 举报

ID:170892 发表于 2018-11-7 08:59 | 显示全部楼层
lcy960 发表于 2018-8-29 09:41
在内网还要买个服务才行是吧?

不需要的,如果想全部自己搞的话就得自己去做服务器了,如果内网的话直接用内网透传就行。
回复

使用道具 举报

ID:67537 发表于 2019-5-12 23:18 | 显示全部楼层
请教楼主,如何内网穿透外网,不通过云
回复

使用道具 举报

ID:147811 发表于 2019-6-11 14:21 来自手机 | 显示全部楼层
外网要怎么接入
回复

使用道具 举报

ID:568039 发表于 2019-6-21 01:37 | 显示全部楼层
AT+CWMODE=1时,有大哥知道esp8266与单片机串口连接后esp8266就无法连接路由器,但是只要拔了串口就可以连接路由器
回复

使用道具 举报

ID:170892 发表于 2019-7-4 09:35 | 显示全部楼层

教程很清楚啊,外网就是通过家里路由器接Internet,然后手机端是通过TCP链接到服务器(这里可以接入到花生壳买的域名),然后通过花生壳内网配置,穿透到自己路由器的给esp分配的ip就行,
回复

使用道具 举报

ID:170892 发表于 2019-7-4 09:35 | 显示全部楼层
lcy960 发表于 2018-8-29 09:41
在内网还要买个服务才行是吧?

需要买一个域名,如果自己有想法,想自己用电脑搭建也行的
回复

使用道具 举报

ID:170892 发表于 2019-7-4 09:37 | 显示全部楼层
yyhhgg 发表于 2019-5-12 23:18
请教楼主,如何内网穿透外网,不通过云

可以自己用一台电脑搭建服务器
回复

使用道具 举报

ID:170892 发表于 2019-7-4 09:38 | 显示全部楼层
昊安 发表于 2019-6-21 01:37
AT+CWMODE=1时,有大哥知道esp8266与单片机串口连接后esp8266就无法连接路由器,但是只要拔了串口就可以连 ...

AT+CWMODE=3,这个要等于3才行,前两种模式是单一的。
回复

使用道具 举报

ID:603336 发表于 2020-4-19 16:18 | 显示全部楼层
如果超出范围是要用服务器吗,如云服务器,自己创建的服务器可以存数据吗?
回复

使用道具 举报

ID:459704 发表于 2020-5-8 10:56 | 显示全部楼层
太好了
回复

使用道具 举报

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

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

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