http://www.plclive.com/a/tongxinjiekou/2016/0422/374.html

在上一篇8266的基础上,这一篇做个具体的连接网站的例子,供大家参考。上一篇基础篇请看:[2016.04.21]ESP8266 wifi模块在Arduino上的应用

我们通过发送一个GET请求,得到网页的源代码。
 
 
1. 连接到一个wifi AP,不用说了,AT+CWMODE=1或者3设置为station模式或者兼容,这样才能连wifi。

Serial1.print("AT+CWMODE=3\r\n");
             Serial1.print("AT+CWJAP=\"ssid\",\"password\"\r\n");   

 
2. 设置为透传模式,命令AT+CIPMODE=1。(什么是透传模式:建立了TCP连接就需要传输数据了。这个设置和wifi连接信息一样,也是会存在Flash区域。所谓透传就是8266不会管你数据包是什么内容,收到直接转发,不会拆包。)
         Serial1.print("AT+CIPMODE=1\r\n");
 
3. 建立一个TCP连接

         Serial1.print("AT+CIPSTART=\"TCP\",\"www.plclive.com\",80\r\n");  //内容较多,可以设置为www.baidu.com
    看到了吧?这里的TCP和网址必须要加双引号,只要在前面加个 \ 即可。
4. 注意了,多数人卡在了这一步。

         Serial1.print("GET / HTTP/1.1\n");
         Serial1.print("Host:www.plclive.com.com\n");  //内容较多,可以设置为www.baidu.com
         Serial1.print("User-Agent: abc\n");
         Serial1.print("Connection: close\n");
         Serial1.print("\n");                         //这里必须额外再发送一个空行,服务器端才会返回数据。

 

5. 现在一直在准备发送数据,我们发什么命令都没反应,我曾经一直用8266断电解决。太LOW了,那么应该怎么退出呢?发送“+++”,然后发送一个空行,就可以退出了。

Serial1.print("+++");
          delay(200);   //这个延时很有必要
          Serial1.print("\n");  //空行
          发送完之后,出现ERROR,就表示退出来了,之后就可以正常进行AT的其他操作了。

最后记得吧TCP连接断开,把wifi连接断开就ok了。

          Serial1.print("AT+CIPMODE=0\r\n");
delay(200);
Serial1.print("AT+CIPCLOSE\r\n");

断开服务器

          Serial1.print("AT+CWQAP\r\n");

断开wifi

esp8266(3) Arduino通过ESP8266连接和获取网站源代码的更多相关文章

  1. python爬虫1——获取网站源代码(豆瓣图书top250信息)

    # -*- coding: utf-8 -*- import requests import re import sys reload(sys) sys.setdefaultencoding('utf ...

  2. Python 2.7获取网站源代码的几种方式_20160924

    #coding:utf-8 import urllib2,cookielib if __name__ == '__main__': root_url='https://www.baidu.com/' ...

  3. ESP8266开发之旅 基础篇② 如何安装ESP8266的Arduino开发环境

    授人以鱼不如授人以渔,目的不是为了教会你具体项目开发,而是学会学习的能力.希望大家分享给你周边需要的朋友或者同学,说不定大神成长之路有博哥的奠基石... QQ技术互动交流群:ESP8266&3 ...

  4. ESP8266开发之旅 基础篇③ ESP8266与Arduino的开发说明

    授人以鱼不如授人以渔,目的不是为了教会你具体项目开发,而是学会学习的能力.希望大家分享给你周边需要的朋友或者同学,说不定大神成长之路有博哥的奠基石... QQ技术互动交流群:ESP8266&3 ...

  5. Arduino 配置 ESP8266环境

    Arduino 配置 ESP8266环境 将 http://arduino.esp8266.com/stable/package_esp8266com_index.json 添加到 [附加开发板管理器 ...

  6. Arduino 基于 ESP8266 配置WIFI模块

    Arduino 基于 ESP8266 配置WIFI模块 使用ESP8266作为服务器,使用浏览器访问该服务器,从而控制LED灯 选择 [文件]->[示例]->[ESP8266WIFI]-& ...

  7. JDBC 连接mysql获取中文时的乱码问题

    前段时间学习JDBC,要连接mysql获取数据.按照老师的样例数据,要存一些名字之类的信息,用的都是英文名,我当时就不太想用英文,就把我室友的名字存了进去,嘿嘿,结果,出问题了. 连接数据库语句: s ...

  8. dbcp2连接池获取数据库连接Connection

    一.先来看看手工创建的方式 public static Connection getConnection() { Connection conn = null; try { Class.forName ...

  9. ESP8266文档阅读ESP8266 SDK 入门指南

    ESP8266 SDK  入门指南 1.概述 1.2.ESP8266 HDK 1.3.ESP8266 SDK 1.4.ESP8266 FW 1.5.ESP8266 工具集 2.1.开发板方案 3.软件 ...

随机推荐

  1. .net dll反编译出现的问题,以及部分修复的方法

    常用.net反编译工具 1.Reflector 9.0.2 2.JustDecompile2015.3.928.0j 3.ILSpy 4.CS资源文件批量转换工具 base.AutoScaleMode ...

  2. Hive 表类型简述

    Hive 表类型简述   表类型一.管理表或内部表Table Type:  MANAGED_TABLE example: create table  Inner(id int,name string, ...

  3. ajax提交form表单问题

    form表单提交数据可以省下大量大量获取元素的代码,局部刷新时也可以用ajax提交form表单,但是要先把表单序列化,再把后台javaBean对象序列化,但是你有可能前后台都执行了系列化,但是后台还是 ...

  4. Centos 7.x 安装 Docker-ce

    Centos 下安装 Docker-ce CentOS 7.0, CentOS 7.2: cat > /etc/yum.repos.d/docker-main.repo << -'E ...

  5. jQ效果:jQuery和css自定义video播放控件

    下面介绍一下通过jquery和css自定义video播放控件. Html5 Video是现在html5最流行的功能之一,得到了大多数最新版本的浏览器支持.包括IE9,也是如此.不同的浏览器提供了不同的 ...

  6. 【代码笔记】Web-JavaScript-JavaScript语法

    一,效果图. 二,代码. <!DOCTYPE html> <html> <head> <meta charset="utf-8"> ...

  7. 【读书笔记】iOS-加速计与陀螺仪

    一,数据的“滤波” 直接从加速度计获得的原始数据,往往不能直接使用,而是需要去除一些干扰数据,这个过程称为“滤波”.“滤波”一词来源于无线电技术中对无线电信号的处理过程.事实上从数学角度而言它们是一样 ...

  8. Git应用—05Git文件冲突合并的几种情况(转载)

    git文件冲突合并的几种情况 https://xieye.iteye.com/blog/2433229 本文描述了git冲突的几种常见情况和解决方案,老鸟请直接忽略本文.假设冲突文件是 test/Te ...

  9. python爬虫之pyquery学习

    相关内容: pyquery的介绍 pyquery的使用 安装模块 导入模块 解析对象初始化 css选择器 在选定元素之后的元素再选取 元素的文本.属性等内容的获取 pyquery执行DOM操作.css ...

  10. EntityFramework Code-First 简易教程(九)-------一对多

    一对多(One-to-Many)关系: 下面,我们来介绍Code-First的一对多关系,比如,在一个Standard(年级)类中包含多个Student类. 如果想了解更多关于one-to-one,o ...